-
Notifications
You must be signed in to change notification settings - Fork 146
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Optimize dettman algorithm #1601
Commits on May 17, 2023
-
Began trying to make the optimization. from here, making the optimiza…
…tion should consist of just writing "register_width = 64" in Arith/DettmanMultiplcation. something broke.
Configuration menu - View commit details
-
Copy full SHA for 2e293f9 - Browse repository at this point
Copy the full SHA 2e293f9View commit details -
fixed small bugs. now, generated dettman code is correct---the same a…
…s it originally was.
Configuration menu - View commit details
-
Copy full SHA for 878dd64 - Browse repository at this point
Copy the full SHA 878dd64View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7547ccc - Browse repository at this point
Copy the full SHA 7547cccView commit details -
In its state before this commit, the reduce_carry_borrow
function did rather unreasonable things when the limbwidth was fractional. In this commit, I tried to fix this issue, but I ended up making the reduce_carry_borrow function pretty obnoxious. Also, fixing this issue requires somewhat strange (and strong) hypotheses on the weight function. We'd want, for instance, (weight (2 * limbs - 2) / weight (limbs - 2)) mod s = 0. I plan to revert my changes (from this commit) to the reduce_carry_borrow function, so that it will continue to do unreasonable things given fractional limbwidths. This was not worth it.
Configuration menu - View commit details
-
Copy full SHA for fd4ee40 - Browse repository at this point
Copy the full SHA fd4ee40View commit details -
checked that running 'make fiat-c/src/secp256k1_dettman_64.c' doesn't…
… change anything
Configuration menu - View commit details
-
Copy full SHA for 8fb6a87 - Browse repository at this point
Copy the full SHA 8fb6a87View commit details -
decided to keep the messy-ish, fractional-limbwidth-friendly implemen…
…tation. wrote some (messy) arithmetic proofs. still more proofs to go in Arithmetic/DettmanMultiplication.v. Then need to change PushButtonSynthesis appropriately.
Configuration menu - View commit details
-
Copy full SHA for ba042cf - Browse repository at this point
Copy the full SHA ba042cfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6cb81cb - Browse repository at this point
Copy the full SHA 6cb81cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2696dec - Browse repository at this point
Copy the full SHA 2696decView commit details -
changed PushButtonSynthesis/DettmanMultiplication.v to reflect change…
…s to Arithmetic/DettmanMultiplication.v
Configuration menu - View commit details
-
Copy full SHA for 9a1c67f - Browse repository at this point
Copy the full SHA 9a1c67fView commit details -
Configuration menu - View commit details
-
Copy full SHA for bc0a990 - Browse repository at this point
Copy the full SHA bc0a990View commit details -
Configuration menu - View commit details
-
Copy full SHA for a21e03c - Browse repository at this point
Copy the full SHA a21e03cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0e6448b - Browse repository at this point
Copy the full SHA 0e6448bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5bd1fe6 - Browse repository at this point
Copy the full SHA 5bd1fe6View commit details -
Cleaned up PushButtonSynthesis/DettmanMultiplication.v
Replaced a bunch of references to (Z.log2_up s) with (Z.log2 s), since (in the dettman_multiplication_mod_ops module) we now stipulate that s is a power of 2.
Configuration menu - View commit details
-
Copy full SHA for 4450dfa - Browse repository at this point
Copy the full SHA 4450dfaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 59753ff - Browse repository at this point
Copy the full SHA 59753ffView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f7cb68 - Browse repository at this point
Copy the full SHA 4f7cb68View commit details -
Configuration menu - View commit details
-
Copy full SHA for 19cdc41 - Browse repository at this point
Copy the full SHA 19cdc41View commit details -
tried out another draft of the rewrite rule. this one successfully el…
…iminated the unnecessary 64-bit mask, but it also caused weird stuff to happen and killed off a bunch of 52-bit masks. Where'd they go? idk.
Configuration menu - View commit details
-
Copy full SHA for 43f2f3d - Browse repository at this point
Copy the full SHA 43f2f3dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2144195 - Browse repository at this point
Copy the full SHA 2144195View commit details -
Configuration menu - View commit details
-
Copy full SHA for a559efd - Browse repository at this point
Copy the full SHA a559efdView commit details -
Configuration menu - View commit details
-
Copy full SHA for a70781b - Browse repository at this point
Copy the full SHA a70781bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 799c212 - Browse repository at this point
Copy the full SHA 799c212View commit details -
I moved the new rewriting pass (ArithWithRelaxedCasts) that I added.
It now comes later in the rewriting process. Apparently it's important that it comes after the fancy stuff. For reasons that I don't understand, proofs in Barrett256 and Montgomery256 break if I put it before.
Configuration menu - View commit details
-
Copy full SHA for 6e951d0 - Browse repository at this point
Copy the full SHA 6e951d0View commit details
Commits on May 18, 2023
-
fixed error with generating C code I think?
In this commit, I just removed the bit about dead code elimination that I added in BoundsPipeline.v. The C code synthesizes without error now, at least. I haven't built everything yet, so we'll see if things actually work nicely.
Configuration menu - View commit details
-
Copy full SHA for aa4babd - Browse repository at this point
Copy the full SHA aa4babdView commit details -
ran make after [fixing the redundant-land-removing rewrite pass
by removing the dead-code-elimination thing]
Configuration menu - View commit details
-
Copy full SHA for 822615f - Browse repository at this point
Copy the full SHA 822615fView commit details -
Configuration menu - View commit details
-
Copy full SHA for c78648d - Browse repository at this point
Copy the full SHA c78648dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2bba8e2 - Browse repository at this point
Copy the full SHA 2bba8e2View commit details