Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
vector.cpp File Reference

Go to the source code of this file.

Classes

struct  RandomInsertion
 Insert a random element at a random index. More...
 
struct  RandomDeletion
 Delete a random element at a random index. More...
 
struct  RandomSwap
 Swap two random elements at random indices. More...
 
struct  RandomElementMutation
 Mutate a random element at a random index. More...
 

Functions

template<typename T >
void mutate_vec (std::vector< T > &vec, std::mt19937_64 &rng, std::function< void(T &, std::mt19937_64 &)> mutate_element_function, std::function< T(std::mt19937_64 &)> generate_random_element_function, const VecMutationConfig &config)
 
template void mutate_vec< CFGInstruction > (std::vector< CFGInstruction > &vec, std::mt19937_64 &rng, std::function< void(CFGInstruction &, std::mt19937_64 &)> mutate_element_function, std::function< CFGInstruction(std::mt19937_64 &)> generate_random_element_function, const VecMutationConfig &config)
 
template void mutate_vec< FuzzInstruction > (std::vector< FuzzInstruction > &vec, std::mt19937_64 &rng, std::function< void(FuzzInstruction &, std::mt19937_64 &)> mutate_element_function, std::function< FuzzInstruction(std::mt19937_64 &)> generate_random_element_function, const VecMutationConfig &config)
 
template void mutate_vec< std::vector< FuzzInstruction > > (std::vector< std::vector< FuzzInstruction > > &vec, std::mt19937_64 &rng, std::function< void(std::vector< FuzzInstruction > &, std::mt19937_64 &)> mutate_element_function, std::function< std::vector< FuzzInstruction >(std::mt19937_64 &)> generate_random_element_function, const VecMutationConfig &config)
 
template void mutate_vec< bb::avm2::FF > (std::vector< bb::avm2::FF > &vec, std::mt19937_64 &rng, std::function< void(bb::avm2::FF &, std::mt19937_64 &)> mutate_element_function, std::function< bb::avm2::FF(std::mt19937_64 &)> generate_random_element_function, const VecMutationConfig &config)
 

Function Documentation

◆ mutate_vec()

template<typename T >
void mutate_vec ( std::vector< T > &  vec,
std::mt19937_64 rng,
std::function< void(T &, std::mt19937_64 &)>  mutate_element_function,
std::function< T(std::mt19937_64 &)>  generate_random_element_function,
const VecMutationConfig config 
)

Definition at line 78 of file vector.cpp.

◆ mutate_vec< bb::avm2::FF >()

template void mutate_vec< bb::avm2::FF > ( std::vector< bb::avm2::FF > &  vec,
std::mt19937_64 rng,
std::function< void(bb::avm2::FF &, std::mt19937_64 &)>  mutate_element_function,
std::function< bb::avm2::FF(std::mt19937_64 &)>  generate_random_element_function,
const VecMutationConfig config 
)

◆ mutate_vec< CFGInstruction >()

template void mutate_vec< CFGInstruction > ( std::vector< CFGInstruction > &  vec,
std::mt19937_64 rng,
std::function< void(CFGInstruction &, std::mt19937_64 &)>  mutate_element_function,
std::function< CFGInstruction(std::mt19937_64 &)>  generate_random_element_function,
const VecMutationConfig config 
)

◆ mutate_vec< FuzzInstruction >()

template void mutate_vec< FuzzInstruction > ( std::vector< FuzzInstruction > &  vec,
std::mt19937_64 rng,
std::function< void(FuzzInstruction &, std::mt19937_64 &)>  mutate_element_function,
std::function< FuzzInstruction(std::mt19937_64 &)>  generate_random_element_function,
const VecMutationConfig config 
)

◆ mutate_vec< std::vector< FuzzInstruction > >()

template void mutate_vec< std::vector< FuzzInstruction > > ( std::vector< std::vector< FuzzInstruction > > &  vec,
std::mt19937_64 rng,
std::function< void(std::vector< FuzzInstruction > &, std::mt19937_64 &)>  mutate_element_function,
std::function< std::vector< FuzzInstruction >(std::mt19937_64 &)>  generate_random_element_function,
const VecMutationConfig config 
)