Benchmark

non-incremental/QF_UFBV/20230314-Jaroslav-Bendik-Certora/66603_accdadf23a1cf70ae043_72_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
Size10257713
Compressed Size1671487
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 unsat
Size 10257706
Compressed Size1671492
Max. Term Depth51
Asserts 94011
Declared Functions88
Declared Constants4603
Declared Sorts 0
Defined Functions674
Defined Recursive Functions 0
Defined Sorts0
Constants0
Declared Datatypes0

Symbols

true23 false2 Bool3 ite1190
not60063 or339 and34266 =>79740
=182565 BitVec671 bvand83 bvor3
bvneg193 bvadd76741 bvmul26 bvudiv37
bvsdiv2 bvult378 bvule22726 bvugt395
bvuge22683 bvslt29 bvsgt38

Evaluations

Evaluation Rating Solver Variant Result Wallclock CPU Time
SMT-COMP 2024 0.60 (2/5) Bitwuzla Bitwuzla unsat ✅ 7.31520 7.21206
cvc5 cvc5 unknown ❌ 534.91070 536.16354
SMTInterpol SMTInterpol unknown ❌ 1201.74130 1304.02662
Yices2 Yices2 unknown ❌ 1202.11650 1201.57903
Z3alpha Z3-alpha unsat ✅ 580.72149 580.37913