We propose type-aware operator mutation, a simple, but unusually effective approach for testing SMT solvers. The key idea is to mutate operators of conforming types within the seed formulas to generate well-typed mutant formulas. These mutant formulas are then used as the test cases for SMT solvers. We realized type-aware operator mutation within the OpFuzz tool and used it to stress-test Z3 and CVC4, two state-of-the-art SMT solvers. Type-aware operator mutations are unusually effective: During one year of extensive testing with OpFuzz, we reported 1092 bugs on Z3’s and CVC4’s respective GitHub issue trackers, out of which 819 unique bugs were confirmed and 685 of the confirmed bugs were fixed by the developers. The detected bugs are highl...
We introduce StringFuzz, a software tool for automatically testing string SMT solvers. String SMT so...
This repository contains the artifact for the paper "Satisfiability Modulo Fuzzing: A Synergistic Co...
Abstract—A relatively new and important branch of Mutation Analysis involves model mutations. In our...
SMT solvers are at the basis of many applications, such as program verification, program synthesis, ...
SMT solvers are at the basis of many applications, such as program verification, program synthesis, ...
In mutation testing, faulty versions of a program are generated through automated modifications of s...
Diver is a black-box fuzzer for testing SMT Solvers. The technical details of Diver can be found in ...
Mutation analysis is a fault-based method used for introducing small changes into a program, produci...
Model based software development is a common procedure within a wide range of embedded software deve...
Mutation testing is a fault-finding software testing technique that creates mutants by injecting a s...
Testing is one of the crucial activities to assure the software quality. The main objective of testi...
Software continues to be vital to the modern world, and as its ubiquity increases, its correctness b...
Background: In model-based test generation, SMT solvers explore the state-space of the model in sear...
Testing is an essential activity in software development, used to increase confidence in the quality...
Satisfiability Modulo Theories (SMT) solvers are fundamental tools in the broad context of software ...
We introduce StringFuzz, a software tool for automatically testing string SMT solvers. String SMT so...
This repository contains the artifact for the paper "Satisfiability Modulo Fuzzing: A Synergistic Co...
Abstract—A relatively new and important branch of Mutation Analysis involves model mutations. In our...
SMT solvers are at the basis of many applications, such as program verification, program synthesis, ...
SMT solvers are at the basis of many applications, such as program verification, program synthesis, ...
In mutation testing, faulty versions of a program are generated through automated modifications of s...
Diver is a black-box fuzzer for testing SMT Solvers. The technical details of Diver can be found in ...
Mutation analysis is a fault-based method used for introducing small changes into a program, produci...
Model based software development is a common procedure within a wide range of embedded software deve...
Mutation testing is a fault-finding software testing technique that creates mutants by injecting a s...
Testing is one of the crucial activities to assure the software quality. The main objective of testi...
Software continues to be vital to the modern world, and as its ubiquity increases, its correctness b...
Background: In model-based test generation, SMT solvers explore the state-space of the model in sear...
Testing is an essential activity in software development, used to increase confidence in the quality...
Satisfiability Modulo Theories (SMT) solvers are fundamental tools in the broad context of software ...
We introduce StringFuzz, a software tool for automatically testing string SMT solvers. String SMT so...
This repository contains the artifact for the paper "Satisfiability Modulo Fuzzing: A Synergistic Co...
Abstract—A relatively new and important branch of Mutation Analysis involves model mutations. In our...