gazprea-fuzzer-python/config.yaml
2023-11-17 16:57:53 -07:00

71 lines
1.8 KiB
YAML

# The default configuration for the Gazprea Fuzzer
---
generation-options:
max-nesting-depth: 5 # maximum nesting depth for statements
max-conditionals-loops: 5 # maximum number of loops/conditionals per routine
properties:
max-range-length: 5 # maximum length of ranges, vectors and tuples, (axa matrices can exist)
id-length: # length of identifiers
min: 1
max: 10
function-name-length: # length of function names
min: 1
max: 10
expression-weights: # weights for expressions
# the higher a weight, the more likely (0, +inf)
brackets: 10
# arithmetic
addition: 80
subtraction: 80
multiplication: 30
division: 10
modulo: 10
power: 5
negation: 20
# comparison
equality: 50
inequality: 50
less-than: 30
greater-than: 30
less-than-or-equal: 10
greater-than-or-equal: 10
# logical
and: 50
or: 50
not: 10
xor: 10
# vector/string
generator: 20
range: 30
filter: 10
reverse: 10
concatenation: 50
statement-weights: # set to 0 for any statements you wish to exclude
variable-declaration:
int-declaration: 50
float-declaration: 50
char-declaration: 50
string-declaration: 50
bool-declaration: 50
vector-declaration: 20
tuple-declaration: 10
matrix-declaration: 10
function-call: 20
conditional: 30
loop: 20
assignment: 40
print: 20
input: 5
return: 5 # probability for a return statement to be placed arbitrarily in the middle of a generated procedure
block-termination-probability: 0.2 # probability for a block to terminate