Benchmark

non-incremental/QF_ABV/brummayerbiere2/countbitstable128.smt2

Count bits pop(x) algorithm, table lookup method
From the book "Hacker's delight" by Henry S. Warren, Jr., page 71
The algorithm precomputes pop(x) for x in range 0 to 255 and stores it
into a lookup table.

We cross-check it with the obvious method of counting bits:
for (s = i = 0; i < BW; i++)
  if (x & (1 << i))
    s++;

Contributed by Robert Brummayer (robert.brummayer@gmail.com)
Benchmark
Size33145
Compressed Size2171
License Creative Commons Attribution 4.0 International (CC-BY-4.0)
Categorycrafted
First Occurrence2008-07-07
Generated By
Generated On
Generator
Dolmen OK1
strict Dolmen OK1
check-sat calls1
Query 1
Status unsat
Inferred Status unsat
Size 33137
Compressed Size2226
Max. Term Depth260
Asserts 1
Declared Functions0
Declared Constants2
Declared Sorts 0
Defined Functions0
Defined Recursive Functions 0
Defined Sorts0
Constants0
Declared Datatypes0

Symbols

ite257 not1 =258 let141
concat16 extract16 bvnot129 bvand128
bvadd143 bvshl128 bvlshr15 zero_extend128
select16 store256

Evaluations

Evaluation Rating Solver Variant Result Wallclock CPU Time
SMT Evaluation 2013 0.71 (2/7) Boolector Boolector-1.5.118-SMT-EVAL-2013 default unsat ✅ 127.22500
Boolector-SMT-COMP-2011 default unsat ✅ 756.51200
Boolector-SMT-COMP-2012 default unsat ✅ 611.79000
CVC3 CVC3-SMT-COMP-2010 default unknown ❌ 835.66800
CVC3-SMT-COMP-2011 default unknown ❌
CVC3-SMT-COMP-2012 default unknown ❌
CVC4 CVC4-SMT-COMP-2012-Resubmission default unknown ❌
CVC4-SMT-EVAL-2013 default unknown ❌
MathSAT MathSAT5-5.2.6-SMT-EVAL-2013 default unknown ❌
MathSAT5-SMT-COMP-2011 default unknown ❌
MathSAT5-SMT-COMP-2012 default unknown ❌
SONOLAR SONOLAR-2013-05-15-SMT-EVAL-2013 default unknown ❌
SONOLAR-SMT-COMP-2011 default unknown ❌
SONOLAR-SMT-COMP-2012 default unknown ❌
Tiffany de Wintermonte TdW-SMT-COMP-2012 default unsat ✅ 93.26580
Z3 Z3-4.3.2.a054b099c1d6-x64-debian-6.0.6-SMT-EVAL-2013 default unknown ❌
Z3-SMT-COMP-2011 default unknown ❌
SMT-COMP 2014 0.71 (2/7) Boolector Boolector boolectord unsat ✅ 850.83800 851.15900
Boolector boolectorj unsat ✅ 340.72700 340.82000
CVC4 CVC4 f7118b2 default unknown ❌ 2399.61000 2400.09000
Kleaver Kleaver-indie-more-typed kleaver_indie_1 unknown ❌ 0.03397 0.02000
Kleaver-indie-more-typed kleaver_portfolio unknown ❌ 0.03652 0.03499
MathSAT MathSAT-5.2.12-Main default unknown ❌ 2398.91000 2400.04000
SONOLAR sonolar_smtcomp-2014 default unsat ✅ 2070.11000 2070.76000
Yices2 Yices-2.2.1-smtcomp2014 default unknown ❌ 2399.12000 2400.02000
Z3 Z3-4.3.2.a054b099c1d6-x64-debian-6.0.6-SMT-COMP-2014 default unknown ❌ 2399.31000 2400.09000
SMT-COMP 2015 0.80 (1/5) Boolector Boolector SMT15 QF_AUFBV final boolector_qf_aufbv unsat ✅ 116.57300 116.61000
CVC4 CVC4-master-2015-06-15-9b32405-main default unknown ❌ 2400.01000 2400.93000
CVC4-experimental-2015-06-15-ff5745a-main default unknown ❌ 2400.01000 2400.73000
MathSAT MathSat 5.3.6 main smtcomp2015_main unknown ❌ 2400.01000 2400.90000
Yices2 Yices default unknown ❌ 2400.01000 2400.86000
Z3 z3 4.4.0 default unknown ❌ 2400.01000 2400.84000
SMT-COMP 2016 0.80 (1/5) Boolector Boolector boolector unsat ✅ 113.60200 113.65700
CVC4 CVC4-master-2016-05-27-cfef263-main default unknown ❌ 2400.02000 2389.02000
MathSAT mathsat-5.3.11-linux-x86_64-Main default unknown ❌ 2400.02000 2401.31000
Yices2 Yices-2.4.2 default unknown ❌ 2400.02000 2401.33000
Z3 z3-4.4.1 default unknown ❌ 2400.01000 2401.36000
SMT-COMP 2017 0.80 (1/5) Boolector Boolector SMT17 final boolector unsat ✅ 123.01600 123.00500
CVC4 CVC4-smtcomp2017-main default unknown ❌ 600.01300 591.89000
MathSAT mathsat-5.4.1-linux-x86_64-Main default unknown ❌ 600.07700 600.01000
Yices2 Yices2-Main default unknown ❌ 600.01300 599.96000
Z3 z3-4.5.0 default unknown ❌ 600.08300 599.93800
SMT-COMP 2018 0.80 (1/5) Boolector Boolector_default unsat ✅ 101.72500 101.71700
CVC4 master-2018-06-10-b19c840-competition-default_default unknown ❌ 1200.02000 1195.21000
MathSAT mathsat-5.5.2-linux-x86_64-Main_default unknown ❌ 1200.09000 1199.86000
Yices2 Yices 2.6.0_default unknown ❌ 1200.11000 1200.05000
Z3 z3-4.7.1_default unknown ❌ 1200.10000 1200.08000
SMT-COMP 2019 0.80 (1/5) Boolector Boolector-wrapped-sq_default unknown ❌ 2400.02000 2399.82000
Poolector-wrapped-sq_default unknown ❌ 2400.12000 9515.17000
CVC4 CVC4-2019-06-03-d350fe1-wrapped-sq_default unknown ❌ 2400.10000 2386.85000
Par4 Par4-wrapped-sq_default unsat ✅ 112.07700 334.49000
Yices2 Yices 2.6.2-wrapped-sq_default unknown ❌ 2400.10000 2399.75000
Z3 z3-4.8.4-d6df51951f4c-wrapped-sq_default unknown ❌ 2400.09000 2399.98000
SMT-COMP 2021 1.00 (0/3) MathSAT mathsat-5.6.6_default unknown ❌ 1200.02000 1199.49000
Yices2 Yices 2.6.2 bug fix_default unknown ❌ 1200.12000 1199.89000
Yices 2.6.2 for SMTCOMP2020_default unknown ❌ 1200.02000 1199.80000
Z3 z3-4.8.11_default unknown ❌ 1200.02000 1199.89000
SMT-COMP 2022 1.00 (0/5) Bitwuzla Bitwuzla-wrapped_default unknown ❌ 1200.02000 1199.89000
cvc5 cvc5-default-2022-07-02-b15e116-wrapped_sq unknown ❌ 1200.02000 1191.10000
MathSAT MathSAT-5.6.8_default unknown ❌ 1200.07000 1199.80000
Yices2 Yices 2.6.2 for SMTCOMP 2021_default unknown ❌ 1200.09000 1200.05000
Z3 z3-4.8.17_default unknown ❌ 1200.03000 1199.00000
SMT-COMP 2023 0.60 (2/5) Bitwuzla Bitwuzla-fixed_default unsat ✅ 384.40700 384.35700
cvc5 cvc5-default-2023-05-16-ea045f305_sq unknown ❌ 1200.04000 1197.47000
UltimateEliminator UltimateIntBlastingWrapper+SMTInterpol_default unknown ❌ 1200.03000 1263.47000
Yices2 Yices 2 for SMTCOMP 2023_default unknown ❌ 1200.02000 1199.88000
Z3-Owl z3-Owl-Final_default sat ✅ 5.97224 5.28244
z3-Owl-Final_default unknown ❌ 1200.02000 1199.74000
SMT-COMP 2024 0.75 (1/4) Bitwuzla Bitwuzla unsat ✅ 330.68926 330.44527
cvc5 cvc5 unknown ❌ 1201.72506 1201.06867
SMTInterpol SMTInterpol unknown ❌ 1201.72063 1247.79862
Yices2 Yices2 unknown ❌ 1201.24112 1201.12561
SMT-COMP 2025 0.83 (1/6) Bitwuzla Bitwuzla unsat ✅ 241.14800 240.96607
cvc5 cvc5 unknown ❌ 1201.78505 1201.06621
SMTInterpol SMTInterpol unknown ❌ 1201.44891 1247.71227
Yices2 Yices2 unknown ❌ 1201.26713 1200.98369
Z3 Z3-Owl-base unknown ❌ 1201.26538 1200.89044
Z3-Owl Z3-Owl unknown ❌ 1201.75683 1201.01561