2025 | Format | Rules | Github |

CHC-COMP

Constrained Horn Clauses (CHC) is a fragment of First Order Logic (FOL) that is sufficiently expressive to describe many verification, inference, and synthesis problems including inductive invariant inference, model checking of safety properties, inference of procedure summaries, regression verification, and sequential equivalence. The CHC competition (CHC-COMP) will compare state-of-the-art tools for CHC solving with respect to performance and effectiveness on a set of publicly available benchmarks. The winners among participating solvers are recognized by measuring the number of correctly solved benchmarks as well as the runtime.

CHC-COMP is associated with the Workshop on Horn-Clause Verification and Synthesis HCVS 2025.

Organizers

Mailing List

Please register here https://software.imdea.org/mailman3/postorius/lists/chc-comp.software.imdea.org to receive updates and to participate in the discussion

Note, there is also the ealier Gitter chatroom, but this seemed to have little popularity. Please be aware that we will not necessarily be responsive over there.

New: Benchmarks and Results

  • CHC-COMP 2025 report as presented at SPIN 2025 (with a minor update in LIA-Lin- Arrays)
  • the full list of benchmarks is available here: https://github.com/chc-comp/chc-comp25-benchmarks
  • scripts for running the competition are here: https://github.com/chc-comp/chc-comp25-scripts, making use of some of the other repositories, too
  • plots are “quantile plots”, aggregating points over results sorted by the CPU time it took to produce them (lower is faster, overall score corresponds to the rightmost value)
  • click on category names for aggregate table including all tools
  • click on the tool names to see table of individual results
  • click on plots to enlarge them
  • the linked tables were generated by benchexec.

Disclaimer: Results that are inconsistent across tools are currently omitted. This means that some tools miss out on some correct points and some are not punished for giving wrong results, but it is not always clear what is the ground truth, which we will fix in the future.

Tools

  • CHC2C 1.0 (Mihály Dobos-Kovács, Levente Bajczi, András Vörös), Note: meta-solver
  • ChocoCatalia (Hiroyuki Katsura, Naoki Kobayashi, Ryosuke Sato)
  • Eldarica 2.2 (Hossein Hojjat, Philipp Ruemmer)
  • Golem 0.7.1 (Martin Blicha)
  • LoAT (Florian Frohn, Jürgen Giesl)
  • MuCyc (Kazuki Uehara, Hiroshi Unno)
  • PCSat (Takuma Monma, Hiroshi Unno)
  • ThetaCHC 6.13.2 (Levente Bajczi, Mihály Dobos-Kovács, Márk Somorjai, András Vörös)
  • Ultimate Tree Automizer (Matthias Heizmann, Max Barth, Daniel Dietsch, Dominik Klumpp)
  • Ultimate Unihorn (Matthias Heizmann, Max Barth, Daniel Dietsch, Dominik Klumpp)

LIA-Lin (⇒ compare results)

Tool sat unsat CPU (s) wall (s)
Golem 762 410 240388 60260
MuCyc 694 403 399364 399351
LoAT 622 410 486478 129799
Eldarica 651 354 600893 144060
Ultimate Unihorn 435 360 855904 779128
PCSat 607 136 1033267 1033319
Ultimate TreeAutomizer 332 290 1155740 1087873
ThetaCHC 114 376 1457498 1449069
CHC2C 160 5 1162523 734400

LIA (⇒ compare results)

Tool sat unsat CPU (s) wall (s)
Golem 734 429 173249 86640
Eldarica 644 375 506038 174340
PCSat 650 367 454110 454104
Ultimate Unihorn 349 245 565136 498393
ThetaCHC 52 140 1536482 1030551
Ultimate TreeAutomizer 34 141 1273739 1194302
CHC2C 162 0 1376846 1073896

LIA-Lin-Arrays (⇒ compare results)

Tool sat unsat CPU (s) wall (s)
Eldarica 53 18 110842 28520
PCSat 43 9 154220 154226
Ultimate Unihorn 42 9 45106 40102
ThetaCHC 45 4 123955 123138
Golem 22 19 161173 80595
Ultimate TreeAutomizer 25 8 32333 29858

LIA-Arrays (⇒ compare results)

Tool sat unsat CPU (s) wall (s)
Eldarica 1022 678 60848 14963
PCSat 1008 567 256250 256264
Ultimate Unihorn 659 487 102567 67300
Ultimate TreeAutomizer 5 416 2207110 2023544
ThetaCHC 400 8 200002 153837

ADT-LIA (⇒ compare results)

Tool sat unsat CPU (s) wall (s)
Choco Catalia 297 146 1044483 1043861
Eldarica 72 162 1468617 367375
PCSat 39 87 1556440 1556422

ADT-LIA-Arrays (⇒ compare results)

Tool sat unsat CPU (s) wall (s)
Eldarica 1981 1000 277898 78469
PCSat 1697 321 1489216 1489263

BV (⇒ compare results)

Tool sat unsat CPU (s) wall (s)
Eldarica 117 151 399052 95632
ThetaCHC 49 123 470348 396892
PCSat 10 3 109664 109653

LRA-Lin (⇒ compare results)

Tool sat unsat CPU (s) wall (s)
Golem 203 29 73506 18382
Eldarica 97 17 293498 103788
ThetaCHC 73 18 321849 169737
PCSat 4 6 443947 443933

Participation and Schedule (updated!)

  • April 25: solver submission deadline.
    Participate here https://forms.gle/Lh6VmRjRDaknZ4xU9.
    We aim to do some pre-runs to check for technical issues.

  • April 25: benchmark submission deadline.
    Benchmarks can be contributed by sending is the link to some Github repository.
    We will then fork it in the CHC-COMP Github organization.
    Benchmark contributions can be updated via pull requests.

  • May 8: presentation of results at SPIN 2025, co-located with ETAPS 2025, Hamilton, Canada.

Infrastructure

The key difference to earlier years will be that evaluations will run on the SV-COMP infrastructure at the LMU Munich.

  • You can already test your solver in the competition environment, which is provided as a Docker file. It is based on standard Ubuntu 24.04.
  • If you are missing a standard software package from the list provided there, you may consider submitting a pull requests, but we do not guarantee that this will be honored.
  • Please otherwise package all additional dependencies with your solver submission.
  • We aim to keep the overhead on the side of participants low. This means we will offer a standard way to integrate, similar to the one on StarExec. Typical SV-COMP participation steps, like submitting a toolinfo module or benchmark definitions are not necessary for CHC-COMP.
  • We will likely use this type of machine: Intel Xeon E3-1230 v5 @ 3.40 GHz, 4x2 cores with hyperthreading, 33GB of main memory. Results will be reported by wall-time and by CPU time to illustrate the benefits of solvers that can run parallel threads.

Benchmarks

The competition benchmarks will be selected among the benchmarks available on GitHub. If you have benchmarks of any kind that can be made public, and that are not yet on Github, please upload! The format of the benchmarks is described here; a detailed description of the benchmark selection process can be found in CHC-COMP 2022: Competition Report. The final list of benchmarks used in the competition will be made public, together with the competition results.

The following tracks are planned for CHC-COMP 2025

  • LIA-Lin: Linear Integer Arithmetic, linear clauses
  • LIA-Nonlin: Linear Integer Arithmetic, nonlinear clauses
  • LIA-Lin-Arrays: Linear Integer Arithmetic + Arrays, linear clauses
  • LIA-Nonlin-Arrays: Linear Integer Arithmetic + Arrays, nonlinear clauses
  • ADT-LIA: Linear Integer Arithmetic + non-recursive Algebraic data-types, nonlinear clauses
  • ADT-LIA-Arrays: Algebraic data-types + Arrays + Linear Integer Arithmetic, nonlinear clauses
  • LRA: Linar Real Arithmetic (tentative)
  • BV: Bitvectors (tentative)

In addition to the theories listed in the track names, benchmarks can also use the Bool theory.

Novel features of CHC-COMP in 2025

  • Model Validation: We introduce a model validation demo track. Participants can opt-in to have their sat models checked independently. We will report these results separately from the main standings. Details and format are being clarified at the moment.
  • Massively Parallel Track: We may run selected evaluations with on a machine with 256 cores. Please get in touch if you think your solver may be able to make use of this.

Big thanks to

  • Dirk Beyer, Po-Chun Chien, Matthias Kettl for support with the experimental setup in 2025
  • SoSy-Lab at LMU Munich for sponsoring computing resources in 2025
  • Everybody who organized and helped with the competition infrastructure over the last years, notably:
    Nikolaj Bjørner, Adrien Champion, Emanuele De Angelis, Grigory Fedyukovich, Hari Govind V K, Arie Gurfinkel, Dejan Jovanovic, and Philipp Ruemmer
  • Aaron Stump and StarExec for computing resources in past years

Previous Editions

Last updated: 2025-05-12 15:35:04 +0000