In the mathematical fields of graph theory and finite model theory, the logic of graphs deals with formal specifications of graph properties using sentences of mathematical logic. There are several variations in the types of logical operation that can be used in these sentences. The first-order logic of graphs concerns sentences in which the variables and predicates concern individual vertices and edges of a graph, while monadic second-order graph logic allows quantification over sets of vertices or edges. Logics based on least fixed point operators allow more general predicates over tuples of vertices, but these predicates can only be constructed through fixed-point operators, restricting their power.
A sentence
S
G
S
G\modelsS
S
G
Other topics of research in the logic of graphs include investigations of the probability that a random graph has a property specified within a particular type of logic, and methods for data compression based on finding logical sentences that are modeled by a unique graph.
In the first-order logic of graphs, a graph property is expressed as a quantified logical sentence whose variables represent graph vertices, with predicates for equality and adjacency testing.
For instance, the condition that a graph does not have any isolated vertices may be expressed by the sentencewhere the
\sim
u
v
u
The subgraph isomorphism problem for a fixed subgraph
H
H
G
H
H
H
For simple undirected graphs, the first-order theory of graphs includes the axiomsOther types of graphs, such as directed graphs, may involve different axioms,[2] and logical formulations of multigraph properties require special handling such as having multiple edge relations or separate variables for vertices and edges.
and, independently, proved a zero–one law for first-order graph logic; Fagin's proof used the compactness theorem. According to this result, every first-order sentence is either almost always true or almost always false for random graphs in the Erdős–Rényi model. That is, let
S
n
Gn
n
n
Gn
S
R
The computational complexity of determining whether a given sentence has probability tending to zero or to one is high: the problem is PSPACE-complete.If a first-order graph property has probability tending to one on random graphs, then it is possible to list all the
n
n
A similar analysis can be performed for non-uniform random graphs, where the probability of including an edge is a function of the number of vertices, and where the decision to include or exclude an edge is made independently with equal probability for all edges. However, for these graphs the situation is more complicated.In this case, a first-order property may have one or more thresholds, such that when the edge inclusion probability is bounded away from the threshold then the probability of having the given property tends to zero or one. These thresholds can never be an irrational power of
n
n-c
c>1
c
c
If a first-order sentence includes
k
n
k
O(nk)
O(f(k)nc)
f
c
k
n
n
k
On restricted classes of graphs, model checking of first-order sentences can be much more efficient. In particular, every graph property expressible as a first-order sentence can be tested in linear time for the graphs of bounded expansion. These are the graphs in which all shallow minors are sparse graphs, with a ratio of edges to vertices bounded by a function of the depth of the minor. Even more generally, first-order model checking can be performed in near-linear time for nowhere-dense graphs, classes of graphs for which, at each possible depth, there is at least one forbidden shallow minor. Conversely, if model checking is fixed-parameter tractable for any monotone family of graphs, that family must be nowhere-dense.[4]
A first-order sentence
S
G
G
S
n
G
n+1
n
G
G
Several different graph invariants can be defined from the simplest sentences (with different measures of simplicity) that define a given graph. In particular the logical depth of a graph is defined to be the minimum level of nesting of quantifiers (the quantifier rank) in a sentence defining the graph. The sentence outlined above nests the quantifiers for all of its variables, so it has logical depth
n+1
n+1
All trees, and most graphs, can be described by first-order sentences with only two variables, but extended by counting predicates. For graphs that can be described by sentences in this logic with a fixed constant number of variables, it is possible to find a graph canonization in polynomial time (with the exponent of the polynomial equal to the number of variables). By comparing canonizations, it is possible to solve the graph isomorphism problem for these graphs in polynomial time.
As a special case of Trakhtenbrot's theorem, it is undecidable whether a given first-order sentence can be realized by a finite undirected graph. This means that no algorithm can correctly answer this question for all sentences.[5]
Some first-order sentences are modeled by infinite graphs but not by any finite graph. For instance, the property of having exactly one vertex of degree one, with all other vertices having degree exactly two, can be expressed by a first-order sentence. It is modeled by an infinite ray, but violates Euler's handshaking lemma for finite graphs. However, it follows from the negative solution to the Entscheidungsproblem (by Alonzo Church and Alan Turing in the 1930s) that satisfiability of first-order sentences for graphs that are not constrained to be finite remains undecidable. It is also undecidable to distinguish between the first-order sentences that are true for all graphs and the ones that are true of finite graphs but false for some infinite graphs.
Least fixed point based logics of graphs extend the first-order logic of graphs by allowing predicates (properties of vertices or tuples of vertices) defined by special fixed-point operators. This kind of definition begins with an implication, a formula stating that when certain values of the predicate are true, then other values are true as well. A "fixed point" is any predicate for which this is a valid implication. There may be many fixed points, including the always-true predicate; a "least fixed point" is a fixed point that has as few true values as possible. More precisely, its true values should be a subset of the true values of any other fixed point.
For instance, define
C(u,v)
u
v
u
v
v
C
Several variations of fixed point logics have been studied. In least fixed point logic, the right hand side of the
\leftarrow
Fixed point logics, and extensions of these logics that also allow integer counting variables whose values range from 0 to the number of vertices, have been used in descriptive complexity in an attempt to provide a logical description of decision problems in graph theory that can be decided in polynomial time. The fixed point of a logical formula can be constructed in polynomial time, by an algorithm that repeatedly adds tuples to the set of values for which the predicate is true until reaching a fixed point, so deciding whether a graph models a sentence in this logic can always be decided in polynomial time. Not every polynomial time graph property can be modeled by a sentence in a logic that uses only fixed points and counting. However, for some special classes of graphs the polynomial time properties are the same as the properties expressible in fixed point logic with counting. These include random graphs, interval graphs, and (through a logical expression of the graph structure theorem) every class of graphs characterized by forbidden minors.
In the monadic second-order logic of graphs, the variables represent objects of up to four types: vertices, edges, sets of vertices, and sets of edges. There are two main variations of monadic second-order graph logic: MSO1 in which only vertex and vertex set variables are allowed, and MSO2 in which all four types of variables are allowed. The predicates on these variables include equality testing, membership testing, and either vertex-edge incidence (if both vertex and edge variables are allowed) or adjacency between pairs of vertices (if only vertex variables are allowed). Additional variations in the definition allow additional predicates such as modular counting predicates.[6]
As an example, the connectivity of an undirected graph can be expressed in MSO1 as the statement that, for every partition of the vertices into two nonempty subsets, there exists an edge from one subset to the other. A partition of the vertices can be described by the subset
S
Hamiltonicity can be expressed in MSO2 by the existence of a set of edges that forms a connected 2-regular graph on all the vertices, with connectivity expressed as above and 2-regularity expressed as the incidence of two but not three distinct edges at each vertex. However, Hamiltonicity is not expressible in MSO1, because MSO1 is not capable of distinguishing complete bipartite graphs with equal numbers of vertices on each side of the bipartition (which are Hamiltonian) from unbalanced complete bipartite graphs (which are not).[7]
Although not part of the definition of MSO2, orientations of undirected graphs can be represented by a technique involving Trémaux trees. This allows other graph properties involving orientations to be expressed as well.
According to Courcelle's theorem, every fixed MSO2 property can be tested in linear time on graphs of bounded treewidth, and every fixed MSO1 property can be tested in linear time on graphs of bounded clique-width. The version of this result for graphs of bounded treewidth can also be implemented in logarithmic space. Applications of this result include a fixed-parameter tractable algorithm for computing the crossing number of a graph.[8]
The satisfiability problem for a sentence of monadic second-order logic is the problem of determining whether there exists at least one graph (possibly within a restricted family of graphs) for which the sentence is true. For arbitrary graph families, and arbitrary sentences, this problem is undecidable. However, satisfiability of MSO2 sentences is decidable for the graphs of bounded treewidth, and satisfiability of MSO1 sentences is decidable for graphs of bounded clique-width. The proof involves using Courcelle's theorem to build an automaton that can test the property, and then examining the automaton to determine whether there is any graph it can accept. As a partial converse, proved that, whenever a family of graphs has a decidable MSO2 satisfiability problem, the family must have bounded treewidth. The proof is based on a theorem of Robertson and Seymour that the families of graphs with unbounded treewidth have arbitrarily large grid minors. Seese also conjectured that every family of graphs with a decidable MSO1 satisfiability problem must have bounded clique-width. This has not been proven, but a weakening of the conjecture that extends MSO1 with modular counting predicates is true.