roconnor-blockstream
roconnor-blockstream
It is suggested in https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-November/016508.html that signatures cover the input's scriptPubKey: * The hash of the scriptPubKey (or nothing if MASK) Simplicity's Bitcoin primitives should be expanded to make this...
Double check this, but the memory allocation of many bit sized frames ends up bloated due to the large UWORD size. Better just to make it 8-bit when possible.
We have never used it in practice, and now it is being used to encode a "unary" disconnect for reasoning about commitment-time Simplicity programs.
As noted by @uncomputable, the definition of the IMR in the Tech Report is not the same as the definition used in Haskell and C code. In the Haskell and...
[Recent analysis](https://github.com/BlockstreamResearch/simplicity/blob/memory/doc/memorySurvey.md) shows that during Simplicity execution, peek memory use could be as high as 720 bytes per DAG node. We should rearrange computations and allocations to try to reduce...
This can be done with a command like valgrind --leak-check=yes dist-newstyle/build/x86_64-linux/ghc-9.4.2/Simplicity-0.0.0/t/testsuite/build/testsuite/testsuite -p '$2=="C / SPEC"'
The tech report wasn't updated when the code was migrated to the new *x*-only pubkey style of BIP-schnorr. Care needs to be taken when updating the tech report as the...
There is no good reason not to start with TCOon at https://github.com/ElementsProject/simplicity/blob/6adfd252ececd613203d051d4fc75dd427578e2c/C/eval.c#L357. This could potentially reduce the maximum number of frames needed by 1. It could also reduce the number...
secp256k1_fe_set_b32_limit says that when it returns 0, one is not allowed to use the resulting output value. This refactors the code so that the existing value of t is maintained...