4

Firstly, I write theorem:
If infinite set of first-order predicate is contradictory, at least one of its finite subset is contrary.

Now, I must use this theorem to prove following thing:
Lets consider infinite graph $G=(V,E)$ such that each finite subgraph of $G$ may be coloured using $k$ colours. My task is to prove that graph $G$ may be coloured with $k$ colours.

Can you help me, please ? I am starting at logic, and I have a problem with this thing :(

  • 1
    By "contrary" I think you mean "contradictory" or "inconsistent". Then, by "EACH of its finite subset" you must mean "AT LEAST ONE of its finite subsets", that is, $\exists$ instead of $\forall$. – bof Oct 07 '16 at 22:09
  • Yes, you are right. I will edit my post. What about solution ? –  Oct 07 '16 at 22:12
  • 1
    Are you familiar with the compactness theorem? – Kevin Long Oct 07 '16 at 22:14
  • Yes, this thing should be used here –  Oct 07 '16 at 22:15
  • Try writing a set of statements $\Sigma$ such that a model satisfying them would be a $k$-coloring of $G$. Then every finite subset could be satisfied by a finite subgraph of $G$. (This part needs to be shown.) – Kevin Long Oct 07 '16 at 22:18
  • Believe me, it is not sufficient for me, I am newbie at this subject –  Oct 07 '16 at 22:19
  • Try using Erdős–De Bruijn theorem as a search term. – bof Oct 07 '16 at 22:19
  • To characterize a coloring of a graph, I need to say three things: first, every vertex must be assigned some color. Second, no vertex is assigned multiple colors. Third, no adjacent vertices are colored similarly. If a set of statements that contains all of these statements, and every finite subset of this set can be satisfied, then the completeness theorem gives us that $G$ can be $k$ colored. – Kevin Long Oct 07 '16 at 22:28
  • Ok, my problem is to express this set $\Sigma$. –  Oct 07 '16 at 23:25
  • Hint: Take a language with a constant for each vertex of the graph, and $k$ unary predicates, one for each colour. Then write a sentence for each vertex of the graph, saying that it has one of the $k$ colours, and write a sentence for each edge, saying that the two endpoints do not have the same color. – bof Oct 08 '16 at 09:05

1 Answers1

4

There are two keys to a problem like this:

  • Figure out what kind of structure a solution represents.

  • Break your "big requirement" down into a collection of "small requirements."

These are vague, but hopefully what I mean will become clear below.


You want a $k$-coloring of $G$. There are a few ways to view a $k$-coloring of $G$ as a first-order structure, but the following is probably the most natural:

  • Let $L$ be the language consisting of one binary relation $E$, $k$ unary relations $U_1, . . . , U_k$, and constants $c_v$ for every vertex $v\in V$.

  • We then want an $L$-structure $M$ such that

    • $c_vE^Mc_w$ iff $vEw$ in $G$,

    • for each vertex $v\in M$, we have $U_i(c_v)$ for exactly one $i\in\{1, . . . , k\}$

    • and if $vEw$ and $U_i(c_v)$, then $\neg U_i(c_w)$.

These are our "big requirements". We can break them into "small requirements" as follows:

  • For $vEw$, let $\varphi_{v, w}$ be the sentence $c_vEc_w$

  • For $v\not Ew$, let $\psi_{v, w}$ be the sentence $\neg c_vEc_w$.

  • For each $v$, let $\chi_v$ be the sentence $(\bigvee_{1\le i\le k}U_i(c_v))\wedge \neg(\bigvee_{1\le i<j\le k}U_i(v)\wedge U_j(v))$.

  • For $vEw$, let $\theta_{v, w}$ be the sentence $\bigwedge_{1\le i\le k}(U_i(v)\rightarrow \neg U_i(w))$.

The set $$\Gamma=\{\varphi_{v, w}: vEw\}\cup\{\psi_{v, w}: \neg vEw\}\cup\{\chi_v: v\in V\}\cup\{\theta_{v, w}: vEw\}$$ is a set of first-order sentences (crucially since $k$ is finite, all the disjunctions and conjunctions are finite), so now we're in business!

We now have to show two things:

  • $\Gamma$ is finitely satisfiable (so it has a model)

and

  • From any model of $\Gamma$, we can recover a $k$-coloring of $G$.

The first of these will follow directly from the assumption that any finite subgraph of $G$ has a $k$-coloring, and so I leave it as an exercise.

The second has kind of a subtle point: if $\mathcal{M}$ is a model of $G$, it is not true that $\mathcal{M}$ is a $k$-coloring of $G$! Why? Well, the domain of $\mathcal{M}$ might include some points which do not correspond to vertices of $G$! Indeed, while we can view $\mathcal{M}$ as a graph, it might not be irreflexive (for $m\in \mathcal{M}$ not one of the $c_v^\mathcal{M}$s, we could have $mEm$), and the colors might "overlap" (for such an $m$, we might have $U_1(m)\wedge U_2(m)\wedge . . . \wedge U_k(m)$), and even if they don't they might fail to induce a $k$-coloring on $\mathcal{M}$ (for such $m_0, m_1$ we could have $U_1(m_0)\wedge U_1(m_1)$).

We could fix the last few problems by adding more axioms to $\Gamma$; however, that still wouldn't fix the problem that $\mathcal{M}$ might have points not corresponding to vertices of $G$ (and indeed this can't be fixed by adding axioms, by the compactness theorem, if $G$ is infinite).

Luckily, we can just ignore this completely! Suppose $\mathcal{M}\models\Gamma$. Then we just "throw away" all the extraneous information: let $$h_\mathcal{M}: G\rightarrow \{1, . . . , k\}: v\mapsto i\iff \mathcal{M}\models U_i(c_v).$$ This is indeed a $k$-coloring of $G$.

Noah Schweber
  • 245,398
  • Very nice answer. Do we need the constants $c_{v}$ in $L$? I thought it'd be enough to define $\Gamma$ consisting of the sentences: (irreflexivity of $E$) $\forall x, \neg(xEx)$, (symmetry of $E$) $\forall x\forall y, xEy\Rightarrow yEx$; and then ($x$ is assigned at least one color) $\forall x, (U_{1}(x)\vee\ldots\vee U_{k}(x))$, ($x$ is assigned at most one color) $\forall x,\neg(U_{i}(x)\wedge U_{j}(x))$ for all $1\leq i<j\leq k$, and finally (adjacent vertices are not assigned the same color) $\forall x\forall y, (xEy\Rightarrow\neg(U_{i}(x)\wedge U_{i}(y))$ for all $1\leq i\leq k$. – John Jun 19 '22 at 15:38
  • 1
    @John How does that let you conclude anything about the original graph $G$? (The point of the constant symbols is to ensure that $G$ embeds into any model of the theory so produced.) – Noah Schweber Jun 19 '22 at 17:51
  • Thank you for your reply. Yes, you are absolutely correct, I realize it now. My confusion arose from this question I asked yesterday: https://math.stackexchange.com/questions/4475757/how-to-express-a-function-fa-rightarrow-b-as-a-first-order-structure I initially used constants to express $f$ as a first-order $L$-structure, only to learn it is not needed. I still have not fully grasped that the vocabulary of the language needs to be the right one to mention whatever it is that we want to give meaning to. Am I wrong? – John Jun 19 '22 at 17:58
  • And to conclude with my understanding of this graph coloring question: I can consider a language $L$ consisting of the constant symbols, the 1-ary preficate symbols $U_i$, the 2-ary predicate symbol $E$ and then the appropriate set of $L$-sentences will consist of the sentences I mentioned above plus all the sentences $c_{v}Ec_{w}$ for each pair of adjacent vertices $v$ and $w$. – John Jun 19 '22 at 18:08