SNP (complexity)

In computational complexity theory, SNP (from Strict NP) is a complexity class containing a limited subset of NP based on its logical characterization in terms of graph-theoretical properties. It forms the basis for the definition of the class MaxSNP of optimization problems.

It is defined as the class of problems that are properties of relational structures (such as graphs) expressible by a second-order logic formula of the following form:

where are relations of the structure (such as the adjacency relation, for a graph), are unknown relations (sets of tuples of vertices), and is a quantifier-free formula: any boolean combination of the relations.[1] That is, only existential second-order quantification (over relations) is allowed and only universal first-order quantification (over vertices) is allowed. If existential quantification over vertices were also allowed, the resulting complexity class would be equal to NP (more precisely, the class of those properties of relational structures that are in NP), a fact known as Fagin's theorem.

For example, SNP contains 3-Coloring (the problem of determining whether a given graph is 3-colorable), because it can be expressed by the following formula:

Here denotes the adjacency relation of the input graph, while the sets (unary relations) correspond to sets of vertices colored with one of the 3 colors. Similarly, SNP contains the k-SAT problem: the boolean satisfiability problem (SAT) where the formula is restricted to conjunctive normal form and to at most k literals per clause, where k is fixed.

  1. ^ Feder, Tomás; Vardi, Moshe Y. (1993). "Monotone monadic SNP and constraint satisfaction". Proceedings of the twenty-fifth annual ACM symposium on Theory of computing - STOC '93. pp. 612–622. doi:10.1145/167088.167245. ISBN 0897915917. S2CID 9229294.{{cite book}}: CS1 maint: date and year (link)