SAT Competition 2009: Benchmark Submission Guidelines

Last update: $LastChangedDate: 2009-01-13 13:00:45 +0100 (mar. 13 janv. 2009) $.

Submission format

The submission can be a set of instances or a generator of instances. The set of instances should be representative of the problem to be solved at various scale. Generators should provide some parameters to scale the instances.

Generator format

The generator is a program to be launched on a Linux environment with some scaling parameters and a random seed if applicable. (for instance, a random 3-SAT generator will have two scaling parameters (nbvar,nbclauses) and a random seed parameter). It will output the instance on the standard output, using the file format below. The command line parameters will appear in the first commented lines of the instance.

File format

The benchmark file format will be in a simplified version of the DIMACS format:
c start with comments
p cnf 5 3
1 -5 4 0
-1 5 3 4 0
-3 -4 0


The benchmarks will be submitted in one of the following categories: Each instance should be submitted as SATISFIABLE, UNSATISFIABLE or UNKNOWN.

Random uniform k-SAT

That category is limited to usual uniform random k-SAT instances. Only generator submissions are allowed here. Any generator must be able to produce many essentially different benchmarks for the same scaling parameters (given a different random seed).

Applications (aka industrial)

Here we should find instances from various applications, such as model checking, planning, encryption, bioinformatic, etc.

The instances here must encode translation into SAT of concrete problems, whose solution is of practical interest.

That category is intended to provide a snapshot of the current strength of solvers as engines for SAT based applications.

Crafted (all others)

The benchmarks especially made to give a hard time to the solver. There will be an award for the smallest instance that cannot be solved by any solver.

Both instances or instance generators can be submitted. Here, no UNKNOWN instances. For both satisfiable and unsatisfiable instances, a proof must be submitted (e.g., a reference to a paper where the corresponding theorem is proved). Benchmarks looking-like uniform random instances that were crafted to be even harder have their place in that category. Mathematical problems encoded in SAT are also typically in this category.


A series is a set of similar benchmarks. For instance, in the random category, a series of benchmarks is a set of N benchmarks having the same ratio #clauses/#variables or the same number of variables for different ratios. All the series will have the same size, presumably 10 benchmarks. The size of the series may change according to the number of submitted solvers and benchmarks.