Benchmark

non-incremental/QF_UFLIA/20230314-Jaroslav-Bendik-Certora/83314_a702bf8b823398c9e37a_2_UFLIA.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
Size710009
Compressed Size123359
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 OK
check-sat calls1
Query 1
Status unknown
Inferred Status None
Size 710002
Compressed Size123371
Max. Term Depth18
Asserts 9745
Declared Functions35
Declared Constants1513
Declared Sorts 0
Defined Functions258
Defined Recursive Functions 0
Defined Sorts0
Constants0
Declared Datatypes0

Symbols

true28 false6 Bool74 ite226
not6547 or149 and1812 =>3901
=11317 let3 Int184 +674
-813 *294 <242 <=1440
>195 >=1319

Evaluations

Evaluation Rating Solver Variant Result Wallclock CPU Time
SMT-COMP 2023 0.80 (1/5) cvc5 cvc5-default-2023-05-16-ea045f305_sq unknown ❌ 1200.12000 1199.82000
OpenSMT OpenSMT a78dcf01_default unknown ❌ 1200.02000 1199.00000
SMTInterpol smtinterpol-2.5-1272-g2d6d356c_default sat ✅ 1122.42000 1188.48000
Yices2 Yices 2 for SMTCOMP 2023_default unknown ❌ 1200.08000 1199.79000
Z3 z3-4.8.17_default unknown ❌ 1200.02000 1199.82000
SMT-COMP 2024 0.75 (1/4) cvc5 cvc5 unknown ❌ 1201.71562 1200.50829
OpenSMT OpenSMT unknown ❌ 1201.25609 1201.03009
SMTInterpol SMTInterpol sat ✅ 897.67362 963.90647
Yices2 Yices2 unknown ❌ 1201.43947 1201.26474
SMT-COMP 2025 1.00 (0/4) cvc5 cvc5 unknown ❌ 1201.75057 1201.01951
OpenSMT OpenSMT unknown ❌ 1201.28069 1200.93462
SMTInterpol SMTInterpol unknown ❌ 1201.45900 1241.37368
Yices2 Yices2 unknown ❌ 1201.55820 1201.25679