Tx_rollup.V
module L : Plompiler.LIB
module Hash : sig ... end
module Plompiler_Curve : sig ... end
module Schnorr : sig ... end
module Merkle : sig ... end
module T : sig ... end
module Encodings : sig ... end
val compression_bound : unit T.Bounded_u.t list -> Z.t
val monadic_compress : unit T.Bounded_u.t list -> L.Num.scalar L.Num.repr L.t
val assert_merkle_proof :
T.Merkle.leaf L.repr ->
T.Merkle.path ->
T.Merkle.root L.repr ->
unit L.Bool.repr L.t
val hash_account : T.account_u -> L.Num.scalar L.Num.repr L.t
val assert_tree_proofs :
T.account_u ->
T.leaf_u ->
T.Merkle.path ->
T.Merkle.path ->
T.Merkle.root L.repr ->
unit L.Bool.repr L.t
val coerce : 'a T.Bounded_u.t -> L.scalar L.repr
val check_eq_account : T.account_u -> T.account_u -> unit L.repr L.t
val predicate_fees :
old_root:Plompiler.Csir.Scalar.t ->
old_next_pos:(Z.t * Z.t) ->
new_root:Plompiler.Csir.Scalar.t ->
new_next_pos:(Z.t * Z.t) ->
fees:(Z.t * Z.t) ->
Epoxy_tx__Types.P.account_tree_el ->
unit L.repr L.t
val hash_op :
[< `Create of T.create_u
| `Credit of T.credit_u
| `Debit of T.debit_u
| `Transfer of T.transfer_u ] ->
L.scalar L.repr L.t
val expected_op_code : Types.P.tx -> Plompiler.S.t
val get_op_code : Types.P.tx -> Z.t
val predicate_ill_formed :
old_root:Plompiler.Csir.Scalar.t ->
old_next_pos:(Z.t * Z.t) ->
new_root:Plompiler.Csir.Scalar.t ->
new_next_pos:(Z.t * Z.t) ->
fee:(Z.t * Z.t) ->
exit_validity:bool ->
rollup_id:bytes ->
Types.P.tx ->
unit L.Bool.repr L.t
val transfer_circuit :
op_code:Plompiler.Csir.Scalar.t ->
old_root:T.Merkle.root L.Bool.repr ->
old_next_pos:'a ->
rollup_id:L.scalar L.repr ->
generator:T.Schnorr.Affine.point L.repr ->
T.transfer_u ->
T.transfer_storage_u ->
(T.Merkle.root L.Bool.repr * 'b * Epoxy_tx__Constants.fee T.Bounded_u.t) L.t
val predicate_op :
?public:bool ->
old_root:Plompiler.Csir.Scalar.t ->
old_next_pos:(Z.t * Z.t) ->
new_root:Plompiler.Csir.Scalar.t ->
new_next_pos:(Z.t * Z.t) ->
fee:(Z.t * Z.t) ->
exit_validity:bool ->
rollup_id:bytes ->
Types.P.tx ->
Types.P.tx_storage ->
unit L.repr L.t
val predicate_private_batch :
old_root:Plompiler.Csir.Scalar.t ->
old_next_pos:(Z.t * Z.t) ->
new_root:Plompiler.Csir.Scalar.t ->
new_next_pos:(Z.t * Z.t) ->
fees:(Z.t * Z.t) ->
rollup_id:bytes ->
Types.P.transfer list ->
Types.P.transfer_storage list ->
unit L.repr L.t