# Logic of graphs

__: Logical formulation of graph properties__

**Short description**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 [math]\displaystyle{ S }[/math] may be true for some graphs, and false for others; a graph [math]\displaystyle{ G }[/math] is said to *model* [math]\displaystyle{ S }[/math], written [math]\displaystyle{ G\models S }[/math], if [math]\displaystyle{ S }[/math] is true of the vertices and adjacency relation of [math]\displaystyle{ G }[/math]. The algorithmic problem of model checking concerns testing whether a given graph models a given sentence. The algorithmic problem of satisfiability concerns testing whether there exists a graph that models a given sentence.
Although both model checking and satisfiability are hard in general, several major algorithmic meta-theorems show that properties expressed in this way can be tested efficiently for important classes of graphs.

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.

## First order

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.^{[1]}

### Examples

For instance, the condition that a graph does not have any isolated vertices may be expressed by the sentence
[math]\displaystyle{ \forall u\exists v(u\sim v) }[/math]
where the [math]\displaystyle{ \sim }[/math] symbol indicates the undirected adjacency relation between two vertices. This sentence can be interpreted as meaning that for every vertex [math]\displaystyle{ u }[/math] there is another vertex [math]\displaystyle{ v }[/math] that is adjacent to [math]\displaystyle{ u }[/math].^{[1]}

The subgraph isomorphism problem for a fixed subgraph [math]\displaystyle{ H }[/math] asks whether [math]\displaystyle{ H }[/math] appears as a subgraph of a larger graph [math]\displaystyle{ G }[/math]. It may be expressed by a sentence that states the existence of vertices (one for each vertex of [math]\displaystyle{ H }[/math]) such that, for each edge of [math]\displaystyle{ H }[/math], the corresponding pair of variables represent adjacent vertices and such that, for each remaining pair of vertices of [math]\displaystyle{ H }[/math], the corresponding pair of variables represent distinct vertices;^{[2]} see the illustration. As a special case, the clique problem (for a fixed clique size) may be expressed by a sentence that states the existence of a number of vertices equal to the clique size, all of which are adjacent.^{[3]}

### Axioms

For simple undirected graphs, the first-order theory of graphs includes the axioms

Other types of graphs, such as directed graphs, may involve different axioms,^{[5]} and logical formulations of multigraph properties require special handling such as having multiple edge relations^{[6]} or separate variables for vertices and edges.^{[7]}

### Zero-one law

(Glebskiĭ Kogan) and, independently,
(Fagin 1976) 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 [math]\displaystyle{ S }[/math] be a fixed first-order sentence, and choose a random [math]\displaystyle{ n }[/math]-vertex graph [math]\displaystyle{ G_n }[/math] uniformly at random among all graphs on a set of [math]\displaystyle{ n }[/math] labeled vertices. Then in the limit as [math]\displaystyle{ n }[/math] tends to infinity the probability that [math]\displaystyle{ G_n }[/math] models [math]\displaystyle{ S }[/math] will tend either to zero or to one:
[math]\displaystyle{ \lim_{n\to\infty}\operatorname{Pr}[G_n\models S]\in\{0,1\}. }[/math]
Moreover, there is a specific infinite graph, the Rado graph [math]\displaystyle{ R }[/math], such that the sentences modeled by the Rado graph are exactly the ones for which the probability of being modeled by a random finite graph tends to one:
[math]\displaystyle{ R\models S \quad \Longleftrightarrow \quad \lim_{n\to\infty}\operatorname{Pr}[G_n\models S] = 1. }[/math]
For random graphs in which each edge is included independently of the others with a fixed probability, the same result is true, with the same sentences having probabilities tending to zero or to one.^{[8]}

The computational complexity of determining whether a given sentence has probability tending to zero or to one is high: the problem is PSPACE-complete.^{[9]}
If a first-order graph property has probability tending to one on random graphs, then it is possible to list all the [math]\displaystyle{ n }[/math]-vertex graphs that model the property, with polynomial delay (as a function of [math]\displaystyle{ n }[/math]) per graph.^{[4]}

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 [math]\displaystyle{ n }[/math], so random graphs where the edge inclusion probability is an irrational power obey a zero-one law analogous to the one for uniformly random graphs. A similar zero-one law holds for very sparse random graphs that have an edge inclusion probability of [math]\displaystyle{ n^{-c} }[/math] with [math]\displaystyle{ c\gt 1 }[/math], as long as [math]\displaystyle{ c }[/math] is not a superparticular ratio.^{[10]} If [math]\displaystyle{ c }[/math] is superparticular, the probability of having a given property may tend to a limit that is not zero or one, but this limit can be calculated efficiently.^{[11]} There exist first-order sentences that have infinitely many thresholds.^{[12]}

### Parameterized complexity

If a first-order sentence includes [math]\displaystyle{ k }[/math] distinct variables, then the property it describes can be tested in graphs of [math]\displaystyle{ n }[/math] vertices by examining all [math]\displaystyle{ k }[/math]-tuples of vertices; however, this brute force search algorithm is not particularly efficient, taking time [math]\displaystyle{ O(n^k) }[/math].
The problem of checking whether a graph models a given first-order sentence includes as special cases the subgraph isomorphism problem (in which the sentence describes the graphs that contain a fixed subgraph) and the clique problem (in which the sentence describes graphs that contain complete subgraphs of a fixed size).
The clique problem is hard for W(1), the first level of a hierarchy of hard problems from the point of view of parameterized complexity. Therefore, it is unlikely to have a fixed-parameter tractable algorithm, one whose running time takes the form [math]\displaystyle{ O(f(k)n^c) }[/math] for a function [math]\displaystyle{ f }[/math] and constant [math]\displaystyle{ c }[/math] that are independent of [math]\displaystyle{ k }[/math] and [math]\displaystyle{ n }[/math].^{[13]}
More strongly, if the exponential time hypothesis is true, then clique-finding and first-order model checking would necessarily take time proportional to a power of [math]\displaystyle{ n }[/math] whose exponent is proportional to [math]\displaystyle{ k }[/math].^{[14]}

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.^{[15]}

### Data compression and graph isomorphism

A first-order sentence [math]\displaystyle{ S }[/math] in the logic of graphs is said to define a graph [math]\displaystyle{ G }[/math] if [math]\displaystyle{ G }[/math] is the only graph that models [math]\displaystyle{ S }[/math]. Every graph may be defined by at least one sentence; for instance, one can define any [math]\displaystyle{ n }[/math]-vertex graph [math]\displaystyle{ G }[/math] by a sentence with [math]\displaystyle{ n+1 }[/math] variables, one for each vertex of the graph, and one more to state the condition that there is no vertex other than the [math]\displaystyle{ n }[/math] vertices of the graph. Additional clauses of the sentence can be used to ensure that no two vertex variables are equal, that each edge of [math]\displaystyle{ G }[/math] is present, and no edge exists between a pair of non-adjacent vertices of [math]\displaystyle{ G }[/math]. However, for some graphs there exist significantly shorter sentences that define the graph.^{[16]}

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.^{[17]} The sentence outlined above nests the quantifiers for all of its variables, so it has logical depth [math]\displaystyle{ n+1 }[/math]. The *logical width* of a graph is the minimum number of variables in a sentence that defines it.^{[17]} In the sentence outlined above, this number of variables is again [math]\displaystyle{ n+1 }[/math]. Both the logical depth and logical width can be bounded in terms of the treewidth of the given graph.^{[18]} The logical length, analogously, is defined as the length of the shortest sentence describing the graph. The sentence described above has length proportional to the square of the number of vertices, but it is possible to define any graph by a sentence with length proportional to its number of edges.^{[17]}

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.^{[19]}

### Satisfiability

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.^{[20]}

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.^{[21]}

## Fixed point

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.^{[22]}

For instance, define [math]\displaystyle{ C(u,v) }[/math] to be true when the two vertices [math]\displaystyle{ u }[/math] and [math]\displaystyle{ v }[/math] are connected by a path in a given graph, and false otherwise.
Then every vertex is connected to itself, and when [math]\displaystyle{ u }[/math] is connected to a neighbor of [math]\displaystyle{ v }[/math], it is also connected by one more step to [math]\displaystyle{ v }[/math]. Expressing this reasoning in logical terms, [math]\displaystyle{ C }[/math] is the least fixed point of the formula
[math]\displaystyle{ C(u,v)\leftarrow\Bigl( (u=v)\vee \exists w\bigl(C(u,w)\wedge w\sim v\bigr)\Bigr). }[/math]
Here, being a fixed point means that the truth of the right side of the formula implies the truth of the left side, as the reversed implication arrow suggests. Being the least fixed point, in this case, implies that no two vertices will be defined as connected unless their connectivity comes from repeated use of this implication.^{[22]}

Several variations of fixed point logics have been studied. In least fixed point logic, the right hand side of the [math]\displaystyle{ \leftarrow }[/math] operator in the defining formula must use the predicate only positively (that is, each appearance should be nested within an even number of negations) in order to make the least fixed point well defined.
In another variant with equivalent logical power, inflationary fixed point logic, the formula need not be monotone but the resulting fixed point is defined as the one obtained by repeatedly applying implications derived from the defining formula starting from the all-false predicate.
Other variants, allowing negative implications or multiple simultaneously-defined predicates, are also possible, but provide no additional definitional power.
A predicate, defined in one of these ways, can then be applied to a tuple of vertices as part of a larger logical sentence.^{[22]}

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.^{[23]}^{[24]} 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,^{[23]}^{[25]} interval graphs,^{[23]}^{[26]} and (through a logical expression of the graph structure theorem) every class of graphs characterized by forbidden minors.^{[23]}

## Second order

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: MSO_{1} in which only vertex and vertex set variables are allowed, and MSO_{2} 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.^{[27]}

### Examples

As an example, the connectivity of an undirected graph can be expressed in MSO_{1} 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 [math]\displaystyle{ S }[/math] of vertices on one side of the partition, and each such subset should either describe a trivial partition (one in which one or the other side is empty) or be crossed by an edge. That is, a graph is connected when it models the MSO_{1} sentence
[math]\displaystyle{ \forall S\Bigl( \forall x(x\in S) \vee \forall y\bigl(\lnot(y\in S)\bigr) \vee \exists x\exists y\bigl(x\in S\wedge \lnot(y\in S) \wedge x\sim y\bigr) \Bigr). }[/math]
However, connectivity cannot be expressed in first-order graph logic, nor can it be expressed in existential MSO_{1} (the fragment of MSO_{1} in which all set quantifiers are existential and occur at the beginning of the sentence) nor even existential MSO_{2}.^{[28]}

Hamiltonicity can be expressed in MSO_{2} 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 MSO_{1}, because MSO_{1} 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).^{[29]}

Although not part of the definition of MSO_{2}, 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.^{[30]}

### Courcelle's theorem

According to Courcelle's theorem, every fixed MSO_{2} property can be tested in linear time on graphs of bounded treewidth, and every fixed MSO_{1} property can be tested in linear time on graphs of bounded clique-width.^{[31]} The version of this result for graphs of bounded treewidth can also be implemented in logarithmic space.^{[32]} Applications of this result include a fixed-parameter tractable algorithm for computing the crossing number of a graph.^{[33]}

### Seese's theorem

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 MSO_{2} sentences is decidable for the graphs of bounded treewidth, and satisfiability of MSO_{1} 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,^{[34]} (Seese 1991) proved that, whenever a family of graphs has a decidable MSO_{2} 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 MSO_{1} satisfiability problem must have bounded clique-width.^{[35]} This has not been proven, but a weakening of the conjecture that extends MSO_{1} with modular counting predicates is true.^{[34]}

## Notes

- ↑
^{1.0}^{1.1}(Spencer 2001), Section 1.2, "What Is a First Order Theory?", pp. 15–17. - ↑ Verbitsky & Zhukovskii (2019).
- ↑ Zeume (2017).
- ↑
^{4.0}^{4.1}Goldberg (1993). - ↑ For instance, (Henson 1972) requires directed graphs to be described by an asymmetric relation, meaning that loops and 2-cycles are both disallowed, giving the oriented graphs.
- ↑ Koncewicz (1973).
- ↑ Bruggink & König (2018).
- ↑ (Glebskiĭ Kogan); (Fagin 1976)
- ↑ Grandjean (1983).
- ↑ (Shelah Spencer); (Spencer 2001).
- ↑ Lynch (1992).
- ↑ Spencer (1990).
- ↑ Downey & Fellows (1995).
- ↑ Chen et al. (2006).
- ↑ (Nešetřil Ossona de Mendez), 18.3 The Subgraph Isomorphism Problem and Boolean Queries, pp. 400–401; (Dvořák Kráľ); (Grohe Kreutzer).
- ↑ Pikhurko, Spencer & Verbitsky (2006).
- ↑
^{17.0}^{17.1}^{17.2}Pikhurko & Verbitsky (2011). - ↑ Verbitsky (2005).
- ↑ Immerman & Lander (1990).
- ↑ (Ebbinghaus Flum). (Parys 2014) writes that this undecidability result is well known, and attributes it to (Trahtenbrot 1950) on the undecidability of first-order satisfiability for more general classes of finite structures.
- ↑ Lavrov (1963).
- ↑
^{22.0}^{22.1}^{22.2}Grohe (2017), pp. 23–27. - ↑
^{23.0}^{23.1}^{23.2}^{23.3}Grohe (2017), pp. 50–51. - ↑ Cai, Fürer & Immerman (1992).
- ↑ Hella, Kolaitis & Luosto (1996).
- ↑ Laubner (2010).
- ↑ These definitions can be found e.g. in (Courcelle Engelfriet), p. 69, under the slightly different notation MS
_{1}and MS_{2}. Other authors used the MSO_{1}and MSO_{2}notations, and Courcelle came to use it later as well; see, e.g., (Courcelle 2018). - ↑ Fagin, Stockmeyer & Vardi (1995).
- ↑ (Courcelle Engelfriet); (Libkin 2004), Corollary 7.24, pp. 126–127.
- ↑ Courcelle (1996).
- ↑ Courcelle & Engelfriet (2012).
- ↑ Elberfeld, Jakoby & Tantau (2010).
- ↑ (Grohe 2001); (Kawarabayashi Reed).
- ↑
^{34.0}^{34.1}Courcelle & Oum (2007). - ↑ Seese (1991).

## References

- Bruggink, H. J. Sander; König, Barbara (2018), "Recognizable languages of arrows and cospans",
*Mathematical Structures in Computer Science***28**(8): 1290–1332, doi:10.1017/S096012951800018X - Cai, Jin-Yi; Fürer, Martin (1992), "An optimal lower bound on the number of variables for graph identification",
*Combinatorica***12**(4): 389–410, doi:10.1007/BF01305232 - Chen, Jianer; Huang, Xiuzhen; Kanj, Iyad A.; Xia, Ge (2006), "Strong computational lower bounds via parameterized complexity",
*Journal of Computer and System Sciences***72**(8): 1346–1367, doi:10.1016/j.jcss.2006.04.007 - "On the expression of graph properties in some fragments of monadic second-order logic",
*Proc. Descr. Complex. Finite Models*, DIMACS,**31**, Amer. Math. Soc., 1996, pp. 33–62, http://www.labri.fr/perso/courcell/Textes/DIMACS(1997).pdf - Courcelle, Bruno; Engelfriet, Joost (2012),
*Graph Structure and Monadic Second-Order Logic: A Language-Theoretic Approach*, Encyclopedia of Mathematics and its Applications,**138**,*Cambridge University Press*, ISBN 9781139644006 - "Fly-automata for checking MSO
_{2}graph properties",*Discrete Applied Mathematics***245**: 236–252, 2018, doi:10.1016/j.dam.2016.10.018 - "Vertex-minors, monadic second-order logic, and a conjecture by Seese",
*Journal of Combinatorial Theory*, Series B**97**(1): 91–126, 2007, doi:10.1016/j.jctb.2006.04.003, http://mathsci.kaist.ac.kr/~sangil/pdf/2006co.pdf - Downey, R. G.; Fellows, M. R. (1995), "Fixed-parameter tractability and completeness. II. On completeness for W[1]",
*Theoretical Computer Science***141**(1–2): 109–131, doi:10.1016/0304-3975(94)00097-3 - "Deciding first-order properties for sparse graphs",
*Proc. 51st Annual IEEE Symposium on Foundations of Computer Science (FOCS 2010)*, 2010, pp. 133–142, doi:10.1109/FOCS.2010.20, ISBN 978-0-7695-4244-7 - Ebbinghaus, Heinz-Dieter; Flum, Jörg (1995),
*Finite Model Theory*, Springer Monographs in Mathematics (2nd ed.), Springer, p. 129, doi:10.1007/3-540-28788-4 - Elberfeld, Michael; Jakoby, Andreas; Tantau, Till (October 2010), "Logspace Versions of the Theorems of Bodlaender and Courcelle",
*Proc. 51st Annual IEEE Symposium on Foundations of Computer Science (FOCS 2010)*, pp. 143–152, doi:10.1109/FOCS.2010.21, http://wwwmayr.in.tum.de/konferenzen/Sommerakademie2010/talks/tantau_paper.pdf - "Probabilities on finite models",
*Journal of Symbolic Logic***41**(1): 50–58, 1976, doi:10.1017/s0022481200051756, https://scholar.archive.org/work/sfm46wwu45hqzmrfw2lrf6ztqa - "On monadic NP vs monadic co-NP",
*Information and Computation***120**(1): 78–92, 1995, doi:10.1006/inco.1995.1100 - Glebskiĭ, Ju. V.; Kogan, D. I.; Liogon'kiĭ, M. I.; Talanov, V. A. (1969), "Volume and fraction of satisfiability of formulas of the lower predicate calculus",
*Otdelenie Matematiki, Mekhaniki i Kibernetiki Akademii Nauk Ukrainskoĭ SSR: Kibernetika*(2): 17–27 - "Polynomial space polynomial delay algorithms for listing families of graphs",
*Proceedings of the Twenty-Fifth Annual ACM Symposium on Theory of Computing (STOC '93)*, New York, NY, USA: ACM, 1993, pp. 218–225, doi:10.1145/167088.167160, ISBN 0-89791-591-7 - Grandjean, Étienne (1983), "Complexity of the first-order theory of almost all finite structures",
*Information and Control***57**(2–3): 180–204, doi:10.1016/S0019-9958(83)80043-6 - "Computing crossing numbers in quadratic time",
*Proceedings of the Thirty-Third Annual ACM Symposium on Theory of Computing (STOC '01)*, 2001, pp. 231–236, doi:10.1145/380752.380805 -
*Descriptive complexity, canonisation, and definable graph structure theory*, Lecture Notes in Logic,**47**, Cambridge University Press, Cambridge, 2017, ISBN 978-1-107-01452-7 - "Deciding first-order properties of nowhere dense graphs",
*Proceedings of the 46th Annual ACM Symposium on Theory of Computing (STOC '14)*, New York: ACM, 2014, pp. 89–98, doi:10.1145/2591796.2591851, ISBN 978-1-4503-2710-7 - Hella, Lauri; Kolaitis, Phokion G.; Luosto, Kerkko (1996), "Almost everywhere equivalence of logics in finite model theory",
*The Bulletin of Symbolic Logic***2**(4): 422–443, doi:10.2307/421173 - Henson, C. Ward (1972), "Countable homogeneous relational structures and [math]\displaystyle{ \aleph_{0} }[/math]-categorical theories",
*The Journal of Symbolic Logic***37**: 494–500, doi:10.2307/2272734 - "Describing graphs: a first-order approach to graph canonization",
*Complexity Theory Retrospective: In honor of Juris Hartmanis on the occasion of his sixtieth birthday*, New York: Springer-Verlag, 1990, pp. 59–81, doi:10.1007/978-1-4612-4478-3_5 - Lavrov, I. A. (1963), "The effective non-separability of the set of identically true formulae and the set of finitely refutable formulae for certain elementary theories",
*Algebra i Logika Sem.***2**(1): 5–18 - "Computing crossing number in linear time",
*Proceedings of the Thirty-Ninth Annual ACM Symposium on Theory of Computing (STOC '07)*, 2007, pp. 382–390, doi:10.1145/1250790.1250848 - Koncewicz, Leszek (1973), "Definability of classes of graphs in the first order predicate calculus with identity",
*Polish Academy of Sciences***32**: 159–190, doi:10.1007/BF02123839 - Laubner, Bastian (2010), "Capturing polynomial time on interval graphs",
*25th Annual IEEE Symposium on Logic in Computer Science (LICS 2010)*, Los Alamitos, California: IEEE Computer Society, pp. 199–208, doi:10.1109/LICS.2010.42 - Libkin, Leonid (2004),
*Elements of finite model theory*, Texts in Theoretical Computer Science: An EATCS Series, Springer-Verlag, Berlin, doi:10.1007/978-3-662-07003-1, ISBN 3-540-21202-7, https://archive.org/details/elementsoffinite00libk - Lynch, James F. (1992), "Probabilities of sentences about very sparse random graphs",
*Random Structures & Algorithms***3**(1): 33–53, doi:10.1002/rsa.3240030105 -
*Sparsity: Graphs, Structures, and Algorithms*, Algorithms and Combinatorics,**28**, Springer-Verlag, 2012, doi:10.1007/978-3-642-27875-4, ISBN 978-3-642-27874-7 - Parys, Paweł (2014), "First-order logic on CPDA graphs",
*Computer science—theory and applications*, Lecture Notes in Computer Science,**8476**, New York: Springer-Verlag, pp. 300–313, doi:10.1007/978-3-319-06686-8_23 - Pikhurko, Oleg (2006), "Succinct definitions in the first order theory of graphs",
*Annals of Pure and Applied Logic***139**(1–3): 74–109, doi:10.1016/j.apal.2005.04.003 - Pikhurko, Oleg; Verbitsky, Oleg (2011), "Logical complexity of graphs: a survey",
*Model Theoretic Methods in Finite Combinatorics (AMS-ASL Joint Special Session, January 5-8, 2009, Washington, DC)*, Contemporary Mathematics,**558**, American Mathematical Society, pp. 129–180, ISBN 978-0-8218-8322-8, https://books.google.com/books?id=5kfVAwAAQBAJ&pg=PA129 - Seese, D. (1991), "The structure of the models of decidable monadic theories of graphs",
*Annals of Pure and Applied Logic***53**(2): 169–195, doi:10.1016/0168-0072(91)90054-P - "Zero-one laws for sparse random graphs",
*Journal of the American Mathematical Society***1**(1): 97–115, 1988, doi:10.2307/1990968 - "Infinite spectra in the first order theory of graphs",
*Combinatorica***10**(1): 95–102, 1990, doi:10.1007/BF02122699 -
*The Strange Logic of Random Graphs*, Algorithms and Combinatorics,**22**, Springer-Verlag, Berlin, 2001, doi:10.1007/978-3-662-04538-1, ISBN 3-540-41654-4 - "The impossibility of an algorithm for the decision problem for finite domains",
*Doklady Akademii Nauk SSSR*, New Series**70**: 569–572, 1950 - Verbitsky, Oleg (2005), "The first order definability of graphs with separators via the Ehrenfeucht game",
*Theoretical Computer Science***343**(1–2): 158–176, doi:10.1016/j.tcs.2005.05.003 - Verbitsky, Oleg; Zhukovskii, Maksim (2019), "Tight bounds on the asymptotic descriptive complexity of subgraph isomorphism",
*ACM Transactions on Computational Logic***20**(2): A9:1–A9:18, doi:10.1145/3303881 - Zeume, Thomas (2017), "The dynamic descriptive complexity of k-clique",
*Information and Computation***256**: 9–22, doi:10.1016/j.ic.2017.04.005, https://informatik-rub.de/wp-content/uploads/2021/03/Zeume2017-dynclique-journal.pdf

Original source: https://en.wikipedia.org/wiki/Logic of graphs.
Read more |