Module Tezos_benchmarks_proto_023_PtSeouLo.Michelson_generation

type generator_config = {
  1. target_size : Tezos_benchmark.Base_samplers.range;
    (*

    The target size of the terms, in number of nodes, is sampled uniformly in target_size.

    *)
  2. burn_in_multiplier : int;
    (*

    The generators are based on a Markov chain, which must be "heated-up" until it reaches its stationary state. A prefix of samples are therefore thrown away: this is called the burn-in phase. The number of thrown away terms is proportional to burn_in_multiplier and target_size.

    *)
}

generator_config specifies some parameters to the Tezos_benchmark_alpha.Michelson_mcmc_samplers Michelson code and data generators.

val default_generator_config : generator_config

Default configuration for the generators.

Samplers

val make_data_sampler : ?verbose:bool -> Stdlib.Random.State.t -> generator_config -> Tezos_benchmark_023_PtSeouLo.Michelson_mcmc_samplers.michelson_data

make_data_sampler constructs a Michelson data sampler based on the infrastructure available in Tezos_benchmark_alpha.Michelson_mcmc_samplers.

val make_code_sampler : ?verbose:bool -> Stdlib.Random.State.t -> generator_config -> Tezos_benchmark_023_PtSeouLo.Michelson_mcmc_samplers.michelson_code

make_code_sampler constructs a Michelson code sampler based on the infrastructure available in Tezos_benchmark_alpha.Michelson_mcmc_samplers.

Samplers is an instance of the direct-style (non-MCMC based) samplers implemented in Tezos_benchmark_alpha.Michelson_samplers.