Benchmark

non-incremental/QF_UFBV/20230314-Jaroslav-Bendik-Certora/44289_e5a2e5c780236919ee6a_17_QF_UFBV.smt2

Publications: https://docs.certora.com/en/latest/docs/whitepaper/index.html
This benchmarkset was produced by the Certora Prover, i.e. a tool for
formal verification of Ethereum Smart Contracts.  The benchmarks encode
verification conditions for real Smart Contracts (programs) written by
Certora customers.

The Certora Prover uses various strategies and SMT encodings of the
underlying verification problem. In most cases, we use either LIA,
NIA or BV encodings, where:

1. LIA is typically an overapproximation of the underlying verification
   problem.
2. NIA is typically a precise encoding.
3. BV is required when the input contains non-trivial bitwise operations
   that we do not model precisely with NIA (i.e., in these cases, NIA
   is an overapproximation).

Note that our specification language allows unbounded integers
(i.e. mathints); this the reason why we need NIA and LIA instead of
using just BV.

We also use various encodings of "underlying hashing functions"; the
two main encodings we use rely on i) UF and ii) on UFDT. Therefore,
given a single input (a smart contract and a specification), we typically
produce 6 different encodings: QF_UFNIA, QF_UFLIA, QF_UFBV, QF_UFDTNIA,
QF_UFDTLIA, and QF_UFDTBV. The 462 benchmarks in this benchmark set
originate from 77 unique smart contracts and specifications (77*6 =
462) and can be mapped based on the common name-prefix of the files. For
instances:

./QF_UFBV/20230314-Jaroslav-Bendik-Certora/940_590f27b1c3c800d3243e_33_QF_UFBV.smt2
./QF_UFDTLIA/20230314-Jaroslav-Bendik-Certora/940_590f27b1c3c800d3243e_33_QF_UFDTLIA.smt2
./QF_UFLIA/20230314-Jaroslav-Bendik-Certora/940_590f27b1c3c800d3243e_33_QF_UFLIA.smt2
./QF_UFDTBV/20230314-Jaroslav-Bendik-Certora/940_590f27b1c3c800d3243e_33_QF_UFDTBV.smt2
./QF_UFDTNIA/20230314-Jaroslav-Bendik-Certora/940_590f27b1c3c800d3243e_33_QF_UFDTNIA.smt2
./QF_UFNIA/20230314-Jaroslav-Bendik-Certora/940_590f27b1c3c800d3243e_33_QF_UFNIA.smt2
Benchmark
Size742431
Compressed Size120924
License Creative Commons Attribution 4.0 International (CC-BY-4.0)
Categoryindustrial
First Occurrence2023-07-06
Generated ByJaroslav Bendik
Generated On2023-03-14 00:00:00
GeneratorCertora Prover
Dolmen OK1
strict Dolmen OK1
check-sat calls1
Query 1
Status unknown
Inferred Status sat
Size 742424
Compressed Size120931
Max. Term Depth29
Asserts 6124
Declared Functions34
Declared Constants2324
Declared Sorts 0
Defined Functions325
Defined Recursive Functions 0
Defined Sorts0
Constants0
Declared Datatypes0

Symbols

true3 false4 Bool3 ite644
not4966 or144 and2657 =>4113
=10554 BitVec322 bvand21 bvneg123
bvadd1547 bvmul9 bvudiv1 bvsdiv2
bvult184 bvule1195 bvugt204 bvuge1274
bvslt31 bvsgt26

Evaluations

Evaluation Rating Solver Variant Result Wallclock CPU Time
SMT-COMP 2023 0.20 (4/5) Bitwuzla Bitwuzla-fixed_default sat ✅ 96.15130 96.13390
cvc5 cvc5-default-2023-05-16-ea045f305_sq sat ✅ 1142.46000 1142.09000
UltimateEliminator UltimateIntBlastingWrapper+SMTInterpol_default unknown ❌ 1200.05000 1257.36000
Yices2 Yices 2 for SMTCOMP 2023_default sat ✅ 427.38600 426.97400
Z3-Owl z3-Owl-Final_default sat ✅ 831.09800 830.77400
z3-Owl-Final_default sat ✅ 304.62400 304.58500
SMT-COMP 2024 Bitwuzla Bitwuzla sat ✅ 141.41336 141.30140
cvc5 cvc5 sat ✅ 93.73122 93.60975
SMTInterpol SMTInterpol sat ✅ 119.96139 158.63913
Yices2 Yices2 sat ✅ 24.01500 23.91406
Z3alpha Z3-alpha sat ✅ 342.51537 342.28318