Commit Graph

99 Commits

Author SHA1 Message Date
rvcas
318ae6aad4 feat(bls): finish cost model 2023-11-15 15:55:56 -05:00
rvcas
5243c36ed6 feat(bls): add default costs for the new functions 2023-11-15 15:55:56 -05:00
microproofs
18db1c394a feat: Implemented builtin semantic versioning
feat: impl flat serialization and deserialization for bls constants
feat: started on cost models for the new builtins

Co-authored-by: rvcas <x@rvcas.dev>
2023-11-15 15:55:56 -05:00
rvcas
f101581813 feat(bls): pretty printing for g1 and g1 element
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2023-11-15 15:55:56 -05:00
microproofs
0d2ac952d0 feat: implemented the Bls381-12 builtins and types
also implemented Keccak256 and Blake2b_224

TODO: cost model, flat serialization, pretty

Co-authored-by: rvcas <x@rvcas.dev>
2023-11-15 15:55:56 -05:00
microproofs
596ce49327 fix: mixed up operators for ConstAboveDiagonal and ConstBelowDiagonal
Closes #618
2023-10-13 11:40:07 -04:00
KtorZ
9782c094b7 Fix clippy suggestions. 2023-09-08 16:21:07 +02:00
microproofs
819a0a20e6 add tests for case and constr
Fix a minor issue with decoding order
2023-09-03 11:52:49 -04:00
microproofs
c9b01ab365 chore: fill in cost model
test: Add case and constr eval tests
2023-09-03 11:52:49 -04:00
microproofs
85901dc141 chore: update cost model with placeholders for new terms to pass tests 2023-09-03 11:52:49 -04:00
microproofs
40e1d39f8b Add placeholders for cost model 2023-09-03 11:52:49 -04:00
microproofs
33d6d3049e add compute for the new terms constr and case 2023-09-03 11:52:49 -04:00
Pi Lanningham
f464eb3702 Cargo fmt + clippy, with latest rust 2023-08-07 19:00:39 -04:00
microproofs
6eeb282dee Now code gen is finished and we just have testing 2023-08-07 12:02:44 -04:00
KtorZ
2a747305f7 Fixes evaluation of large positive bigint in the UPLC machine
Fixes #511.
2023-07-05 18:52:14 +02:00
rvcas
8a7df7f66b test: add empty list test 2023-07-04 17:19:29 -04:00
rvcas
a124a16a61 feat(tests): implement a way to express that tests can fail 2023-05-25 16:54:53 -04:00
rvcas
1fb31e246c fix: better conditional comp for wasm 2023-05-11 16:59:54 -04:00
rvcas
e3f2fb5393 fix: need to return deserialization error here 2023-04-17 10:50:40 -04:00
rvcas
ccc450659a chore: switch discharge value back to the recursive form for simplicity 2023-04-13 01:28:27 -04:00
microproofs
564939ab61 feat
* remove more Rc's
* reconstruct Value::Builtin only when needed

Co-authored-by: Lucas Rosa <x@rvcas.dev>
2023-04-13 01:28:27 -04:00
microproofs
09a6ea51d6 feat(machine): reduce term allocations
* remove term from VBuiltin
* and also means we don't need the useless wrapping

Co-authored-by: Lucas Rosa <x@rvcas.dev>
2023-04-13 01:28:27 -04:00
rvcas
70f12d3fc5 chore: new branch with some things from the bumpalo branch 2023-04-13 01:28:27 -04:00
rvcas
1444c9328d fix some typos 2023-04-07 16:51:18 -04:00
rvcas
f8545854fc feat: json output for uplc eval 2023-03-08 10:19:36 +01:00
rvcas
4f1d14f2a0 feat: introduce miette into uplc 2023-03-08 10:19:35 +01:00
KtorZ
fbf65de1dc Update default cost models for Aiken
Closes #396
2023-02-22 17:03:48 +01:00
KtorZ
428b5f2b37 Align output of tx simulate with other Aiken's commands.
And also return a structured output as JSON, so it's more easily used
  by other tools.

  ```
       Parsing script context
    Simulating 78ec148ea647cf9969446891af31939c5d57b275a2455706782c6183ef0b62f1
      Redeemer Spend → 0

  {"mem":151993,"cpu":58180696}
  ```
2023-02-14 16:50:55 +01:00
Kasey White
e92d9af3c2 fix: changed how list_access_to_uplc handles discards fixing unit test 55
Also fix incorrect error message in runtime in machine
2023-02-11 04:30:18 -05:00
rvcas
c1d67e95e1 feat: fix errors and add tests for BigInt changes 2023-02-09 15:01:30 -05:00
alessandrokonrad
221f1afbfe Changed imports 2023-02-08 16:28:59 +01:00
alessandrokonrad
74b3507777 Added tag/constructor conversion tests 2023-02-08 16:26:58 +01:00
Ales
242eaa8b67 Merge pull request #347 from spacebudz/constr
Fix constructor tag range
2023-02-08 14:52:50 +01:00
alessandrokonrad
ce648b7483 Fixed schnorr and limiting it to 32 bytes messages for now 2023-02-08 08:04:24 -05:00
alessandrokonrad
3012a0b41d Fix constructor tag range 2023-02-08 13:14:26 +01:00
alessandrokonrad
7c9443d87f Changed to prehash function 2023-02-07 22:53:30 +01:00
rvcas
08e8347317 chore: rename feature flag to native-secp256k1 2023-02-07 00:25:22 -05:00
rvcas
67a2674d27 feat: allow verify functions to build for wasm 2023-02-07 00:25:22 -05:00
rvcas
31cd19f198 feat: use secp256k1 to implement verify for ecdsa and schnorr 2023-02-04 22:07:56 -05:00
rvcas
cde3e31723 feat: fill in todo for verify ecdsa and schnorr costing 2023-02-04 22:07:56 -05:00
rvcas
09d8d683b6 fix: switch to error from secp256k1 2023-02-04 22:07:56 -05:00
rvcas
c2ff9389c5 feat(runtime): implement verifyEcdsaSecp256k1Signature 2023-02-04 22:07:56 -05:00
rvcas
d224fe5356 feat(runtime): set force count and arg typechecking for the elliptic curve builtins 2023-02-04 22:07:56 -05:00
rvcas
fb37521857 feat: make a transparent machine error for signature::Error 2023-02-04 22:07:56 -05:00
Kasey White
3123ad9079 change eval_builtin_app to return Rc so that ifthenelse and chooselist are faster 2023-02-01 18:53:11 -05:00
Kasey White
456b08a205 minor performance improvements
Changed a couple cases where the inner Rc object was cloned to use the Rc object instead
2023-02-01 18:53:11 -05:00
rvcas
a365649360 chore: clippy autofix 2023-02-01 18:53:11 -05:00
rvcas
9c4e921e79 feat: more Rc in machine 2023-02-01 18:53:11 -05:00
rvcas
c8efe60843 feat: use Rc for more things, fib_iter runs almost 3 seconds faster now 2023-02-01 18:53:11 -05:00
Kasey White
afd040fda5 feat: Finish up assert feature
Better error reporing on NonFunctionalApplication Error
Refactor redundant code
Add handling of whens with one clause.
2023-01-29 05:21:55 -05:00