Model theory

The Interpolation Theorem

Reading preferences

Optional display controls need JavaScript. All reading content and navigation work without it.

Source file content/model-theory/interpolation/interpolation.tex

Source file content/model-theory/interpolation/introduction.tex

Introduction

The interpolation theorem is the following result: Suppose AB\Entails !A \lif !Bsource. Then there is a sentence C!Csource such that AC\Entails !A \lif !Csource and CB\Entails !C \lif !Bsource. Moreover, every constant symbol, function symbol, and predicate symbol (other than =\eqsource) in C!Csource occurs both in A!Asource and B!Bsource. The sentence C!Csource is called an interpolant of A!Asource and B!Bsource.

The interpolation theorem is interesting in its own right, but its main importance lies in the fact that it can be used to prove results about definability in a theory, and the conditions under which combining two consistent theories results in a consistent theory. The first result is known as the Beth definability theorem; the second, Robinson's joint consistency theorem.

Source file content/model-theory/interpolation/separation.tex

Separation of sentence

A bit of groundwork is needed before we can proceed with the proof of the interpolation theorem. An interpolant for A!Asource and B!Bsource is a sentence C!Csource such that AC!A \Entails !Csource and CB!C \Entails !Bsource. By contraposition, the latter is true iff ¬B¬C\lnot !B \Entails \lnot !Csource. A sentence C!Csource with this property is said to separate A!Asource and ¬B\lnot !Bsource. So finding an interpolant for A!Asource and B!Bsource amounts to finding a sentence that separates A!Asource and ¬B\lnot !Bsource. As so often, it will be useful to consider a generalization: a sentence that separates two sets of sentences.

Definition of separation and inseparability

A sentence C!Csource separates sets of sentences Γ\Gammasource and Δ\Deltasource if and only if ΓC\Gamma \Entails !Csource and Δ¬C\Delta \Entails \lnot !Csource. If no such sentence exists, then Γ\Gammasource and Δ\Deltasource are inseparable.

The inclusion relations between the classes of models of Γ\Gammasource, Δ\Deltasource and C!Csource are represented below:

Figure showing separation by a sentence

A rectangle for the models of formula C contains the Gamma circle on the left. A curved boundary separates it from the Delta circle on the right, which lies in the region for not C.

Source transcription

[h] centering

Diagram of two separated model classes

Inside an outer rounded rectangle, disjoint circles labeled Gamma and Delta sit on opposite sides of a curved boundary. Formula C labels the Gamma side and not formula C labels the Delta side.

Source transcription

[node distance=2cm, auto, thick] draw [rounded corners] (0,0) -- (6,0) -- (6,3) -- (0,3) -- cycle; draw (1.5,1.5) circle (0.9cm); draw (4.5,1.5) circle (0.9cm); path node at (1.5,1.5) Large Γ\Gammasource; path node at (4.5,1.5) Large Δ\Deltasource; path node at (0.4,2.6) Large C\formula{C}source; path node at (3.4,0.4) Large ¬C\lnot \formula{C}source; draw (2.5,0) .. controls (2.5,1.5) and (3.5,1.5) .. (3.5,3);

captionC!Csource separates Γ\Gammasource and Δ\Deltasource

Fresh constants preserve inseparability

Suppose L0\Lang{L}_0source is the language containing every constant symbol, function symbol and predicate symbol (other than =\doteqsource) that occurs in both Γ\Gammasource and Δ\Deltasource, and let L'0\Lang{L}'_0source be obtained by the addition of infinitely many new constant symbols cn\Obj c_nsource for n0n \ge 0source. Then if Γ\Gammasource and Δ\Deltasource are inseparable in L0\Lang{L}_0source, they are also inseparable in L'0\Lang{L}'_0source.

Proof

We proceed indirectly: suppose by way of contradiction that Γ\Gammasource and Δ\Deltasource are separated in L'0\Lang{L}'_0source. Then ΓC[c/x]\Gamma \Entails \Subst{!C}{c}{x}source and Δ¬C[c/x]\Delta \Entails \lnot \Subst{!C}{c}{x}source for some CL0!C \in \Lang{L}_0source (where ccsource is a new constant symbol---the case where C!Csource contains more than one such new constant symbol is similar). By compactness, there are finite subsets Γ0\Gamma_0source of Γ\Gammasource and Δ0\Delta_0source of Δ\Deltasource such that Γ0C[c/x]\Gamma_0 \Entails \Subst{!C}{c}{x}source and Δ0¬C[c/x]\Delta_0 \Entails \lnot \Subst{!C}{c}{x}source. Let G!Gsource be the conjunction of all formulas in Γ0\Gamma_0source and H!Hsource the conjunction of all formulas in Δ0\Delta_0source. Then

GC[c/x],H¬C[c/x].!G & \Entails \Subst{!C}{c}{x}, & !H \Entails \lnot \Subst{!C}{c}{x}.source

From the former, by Generalization, we have GxC!G \Entails \lforall[x][!C]source, and from the latter by contraposition, C[c/x]¬H\Subst{!C}{c}{x} \Entails \lnot !Hsource, whence also xC¬H\lforall[x][!C] \Entails \lnot !Hsource. Contraposition again gives H¬xC!H \Entails \lnot \lforall[x][!C]source. By monotonicity,

ΓxC,Δ¬xC,\Gamma &\Entails \lforall[x][!C], & \Delta & \Entails \lnot \lforall[x][!C],source

so that xC\lforall[x][!C]source separates Γ\Gammasource and Δ\Deltasource in L0\Lang{L}_0source.

Witness constants preserve inseparability

Suppose that Γ{xS}\Gamma \cup \{ \lexists[x][!S] \}source and Δ\Deltasource are inseparable, and ccsource is a new constant symbol not in Γ\Gammasource, Δ\Deltasource, or S!Ssource. Then Γ{xS,S[c/x]}\Gamma \cup \{ \lexists[x][!S], \Subst{!S}{c}{x} \}source and Δ\Deltasource are also inseparable.

Proof

Suppose for contradiction that C!Csource separates Γ{xS,S[c/x]}\Gamma \cup \{ \lexists[x][!S], \Subst{!S}{c}{x}\}source and Δ\Deltasource, while at the same time Γ{xS}\Gamma \cup \{\lexists[x]{!S} \}source and Δ\Deltasource are inseparable. We distinguish two cases:

  1. ccsource does not occur in C!Csource: in this case Γ{xS,¬C}\Gamma \cup \{\lexists[x][!S], \lnot!C \}source is satisfiable (otherwise C!Csource separates Γ{xS}\Gamma \cup \{\lexists[x][!S] \}source and Δ\Deltasource). It remains so if S[c/x]\Subst{!S}{c}{x}source is added, so C!Csource does not separate Γ{xS,S[c/x]}\Gamma \cup \{ \lexists[x][!S], \Subst{!S}{c}{x} \}source and Δ\Deltasource after all.

  2. ccsource does occur in C!Csource so that C!Csource has the form C[c/x]\Subst{!C}{c}{x}source. Then we have that

    Γ{xS,S[c/x]}C[c/x],\Gamma \cup \{ \lexists[x][!S], \Subst{!S}{c}{x}\} \Entails \Subst{!C}{c}{x},source

    whence Γ,xSx(SC)\Gamma, \lexists[x][!S] \Entails \lforall[x][(!S \lif !C)]source by the Deduction Theorem and Generalization, and finally Γ{xS}xC\Gamma \cup \{ \lexists[x][!S] \} \Entails \lexists[x][!C]source. On the other hand, Δ¬C[c/x]\Delta \Entails \lnot \Subst{!C}{c}{x}source and hence by Generalization Δ¬xC\Delta \Entails \lnot \lexists[x][!C]source. So Γ{xS}\Gamma \cup \{\lexists[x][!S] \}source and Δ\Deltasource are separable, a contradiction.

Source file content/model-theory/interpolation/interpolation-proof.tex

Craig's Interpolation Theorem

Craig interpolation theorem

[Craig's Interpolation Theorem] If AB\Entails !A \lif !Bsource, then there is a sentence C!Csource such that AC\Entails !A \lif !Csource and CB\Entails !C \lif !Bsource, and every constant symbol, function symbol, and predicate symbol (other than =\eqsource) in C!Csource occurs both in A!Asource and B!Bsource. The sentence C!Csource is called an interpolant of A!Asource and B!Bsource.

Proof

Suppose L1\Lang{L}_1source is the language of A!Asource and L2\Lang{L}_2source is the language of B!Bsource. Let L0=L1L2\Lang{L}_0 = \Lang{L}_1 \cap \Lang{L}_2source. For each i{0,1,2}i \in \{0, 1, 2 \}source, let L'i\Lang{L}'_isource be obtained from Li\Lang{L}_isource by adding the infinitely many new constant symbols c0,c1,c2,\Obj c_0, \Obj c_1, \Obj c_2, \dotssource.

If A!Asource is unsatisfiable, xxx\lexists[x][\eq/[x][x]]source is an interpolant. If ¬B\lnot !Bsource is unsatisfiable (and hence B!Bsource is valid), xx=x\lexists[x][\eq[x][x]]source is an interpolant. So we may assume also that both A!Asource and ¬B\lnot !Bsource are satisfiable.

In order to prove the contrapositive of the Interpolation Theorem, assume that there is no interpolant for A!Asource and B!Bsource. In other words, assume that {A}\{!A\}source and {¬B}\{\lnot !B\}source are inseparable in L0\Lang{L}_0source.

Our goal is to extend the pair ({A},{¬B})(\{ !A \}, \{\lnot!B\})source to a maximally inseparable pair (Γ*,Δ*)(\Gamma^*, \Delta^*)source. Let A0!A_0source, A1!A_1source, A2!A_2source, dots enumerate the sentences of L1\Lang{L}_1source, and B0!B_0source, B1!B_1source, B2!B_2source, dots enumerate the sentences of L2\Lang{L}_2source. We define two increasing sequences of sets of sentences (Γn,Δn)(\Gamma_n, \Delta_n)source, for n0n \ge 0source, as follows. Put Γ0={A}\Gamma_0 = \{ !A\}source and Δ0={¬B}\Delta_0 = \{\lnot !B \}source. Assuming (Γn,Δn)(\Gamma_n, \Delta_n)source are already defined, define Γn+1\Gamma_{n+1}source and Δn+1\Delta_{n+1}source by:

  1. If Γn{An}\Gamma_n \cup \{!A_n \}source and Δn\Delta_nsource are inseparable in L'0\Lang{L}'_0source, put An!A_nsource in Γn+1\Gamma_{n+1}source. Moreover, if An!A_nsource is an existential formula xS\lexists[x][!S]source then pick a new constant symbol ccsource not occurring in Γn\Gamma_nsource, Δn\Delta_nsource, An!A_nsource or Bn!B_nsource, and put S[c/x]\Subst{!S}{c}{x}source in Γn+1\Gamma_{n+1}source.

  2. If Γn+1\Gamma_{n+1}source and Δn{Bn}\Delta_n \cup \{!B_n \}source are inseparable in L'0\Lang{L}'_0source, put Bn!B_nsource in Δn+1\Delta_{n+1}source. Moreover, if Bn!B_nsource is an existential formula xS\lexists[x][!S]source, then pick a new constant symbol ccsource not occurring in Γn+1\Gamma_{n+1}source, Δn\Delta_nsource, An!A_nsource or Bn!B_nsource, and put S[c/x]\Subst{!S}{c}{x}source in Δn+1\Delta_{n+1}source.

Finally, define:

Γ*=n0Γn,Δ*=n0Δn.\Gamma^* & = \bigcup_{n\ge 0} \Gamma_n, & \Delta^* & = \bigcup_{n\ge 0} \Delta_n.source

By simultaneous induction on nnsource we can now prove:

  1. Γn\Gamma_nsource and Δn\Delta_nsource are inseparable in L'0\Lang{L}'_0source;

  2. Γn+1\Gamma_{n+1}source and Δn\Delta_nsource are inseparable in L'0\Lang{L}'_0source.

The basis for reference part-a is given by reference lem:sep1. For part reference part-b, we need to distinguish three cases:

  1. If Γ0{A0}\Gamma_0 \cup \{!A_0 \}source and Δ0\Delta_0source are separable, then Γ1=Γ0\Gamma_1 = \Gamma_0source and reference part-b is just reference part-a;

  2. If Γ1=Γ0{A0}\Gamma_1 = \Gamma_0 \cup\{ !A_0\}source, then Γ1\Gamma_1source and Δ0\Delta_0source are inseparable by construction.

  3. It remains to consider the case where A0!A_0source is existential, so that Γ1=Γ0{xS,S[c/x]}\Gamma_1 = \Gamma_0 \cup \{ \lexists[x][!S], \Subst{!S}{c}{x} \}source. By construction, Γ0{xS}\Gamma_0 \cup \{ \lexists[x][!S]\}source and Δ0\Delta_0source are inseparable, so that by reference lem:sep2 also Γ0{xS,S[c/x]}\Gamma_0 \cup \{ \lexists[x][!S], \Subst{!S}{c}{x} \}source and Δ0\Delta_0source are inseparable.

This completes the basis of the induction for reference part-a and reference part-b above. Now for the inductive step. For reference part-a, if Δn+1=Δn{Bn}\Delta_{n+1} = \Delta_n \cup \{ !B_n \}source then Γn+1\Gamma_{n+1}source and Δn+1\Delta_{n+1}source are inseparable by construction (even when Bn!B_nsource is existential, by reference lem:sep2); if Δn+1=Δn\Delta_{n+1} = \Delta_nsource (because Γn+1\Gamma_{n+1}source and Δn{Bn}\Delta_n \cup \{!B_n\}source are separable), then we use the induction hypothesis on reference part-b. For the inductive step for reference part-b, if Γn+2=Γn+1{An+1}\Gamma_{n+2} = \Gamma_{n+1} \cup \{!A_{n+1} \}source then Γn+2\Gamma_{n+2}source and Δn+1\Delta_{n+1}source are inseparable by construction (even when An+1!A_{n+1}source is existential, by reference lem:sep2); and if Γn+2=Γn+1\Gamma_{n+2} = \Gamma_{n+1}source then we use the inductive case for reference part-a just proved. This concludes the induction on reference part-a and reference part-b.

It follows that Γ*\Gamma^*source and Δ*\Delta^*source are inseparable; if not, by compactness, there is n0n \ge 0source that separates Γn\Gamma_nsource and Δn\Delta_nsource, against reference part-a. In particular, Γ*\Gamma^*source and Δ*\Delta^*source are consistent: for if the former or the latter is inconsistent, then they are separated by xxx\lexists[x][\eq/[x][x]]source or xx=x\lforall[x][\eq[x][x]]source, respectively.

We now show that Γ*\Gamma^*source is maximally consistent in L'1\Lang{L}'_1source and likewise Δ*\Delta^*source in L'2\Lang{L}'_2source. For the former, suppose that AnΓ*!A_n \notin \Gamma^*source and ¬AnΓ*\lnot !A_n \notin \Gamma^*source, for some n0n \ge 0source. If AnΓ*!A_n \notin \Gamma^*source then Γn{An}\Gamma_n \cup \{!A_n \}source is separable from Δn\Delta_nsource, and so there is CL'0!C \in \Lang{L}'_0source such that both:

Γ*AnC,Δ*¬C.\Gamma^* & \Entails !A_n \lif !C, & \Delta^* & \Entails \lnot !C.source

Likewise, if ¬AnΓ*\lnot !A_n \notin \Gamma^*source, there is CL'0!C' \in \Lang{L}'_0source such that both:

Γ*¬AnC,Δ*¬C.\Gamma^* & \Entails \lnot !A_n \lif !C', & \Delta^* & \Entails \lnot !C'.source

By propositional logic, Γ*CC\Gamma^* \Entails !C \lor !C'source and Δ*¬(CC)\Delta^* \Entails \lnot (!C \lor !C')source, so CC!C \lor !C'source separates Γ*\Gamma^*sourceand Δ*\Delta^*source. A similar argument establishes that Δ*\Delta^*source is maximal.

Finally, we show that Γ*Δ*\Gamma^* \cap \Delta^*source is maximally consistent in L'0\Lang{L}'_0source. It is obviously consistent, since it is the intersection of consistent sets. To show maximality, let SL'0!S \in \Lang{L}'_0source. Now, Γ*\Gamma^*source is maximal in L'1L'0\Lang{L'_1} \supseteq \Lang{L'_0}source, and similarly Δ*\Delta^*source is maximal in L'2L'0\Lang{L'_2} \supseteq \Lang{L'_0}source. It follows that either SΓ*!S \in \Gamma^*source or ¬SΓ*\lnot !S \in \Gamma^*source, and either SΔ*!S \in \Delta^*source or ¬SΔ*\lnot !S \in \Delta^*source. If SΓ*!S \in \Gamma^*source and ¬SΔ*\lnot !S \in \Delta^*source then S!Ssource would separate Γ*\Gamma^*source and Δ*\Delta^*source; and if ¬SΓ*\lnot !S \in \Gamma^*source and SΔ*!S \in \Delta^*source then Γ*\Gamma^*source and Δ*\Delta^*source would be separated by ¬S\lnot !Ssource. Hence, either SΓ*Δ*!S \in \Gamma^* \cap \Delta^*source or ¬SΓ*Δ*\lnot !S \in \Gamma^* \cap \Delta^*source, and Γ*Δ*\Gamma^* \cap \Delta^*source is maximal.

Since Γ*\Gamma^*source is maximally consistent, it has a model M'1\Struct{M}'_1source whose domain |M'1|\Domain{M'_1}source comprises all and only the elements cM'1\Assign{c}{M'_1}source interpreting the constant symbols---just like in the proof of the completeness theorem (reference thm:completeness). Similarly, Δ*\Delta^*source has a model M'2\Struct{M}'_2source whose domain |M'2|\Domain{M'_2}source is given by the interpretations cM'2\Assign{c}{M'_2}source of the constant symbols.

Let M1\Struct{M_1}source be obtained from M'1\Struct{M'_1}source by dropping interpretations for constant symbols, function symbols, and predicate symbols in L'1L'0\Lang{L'_1} \setminus \Lang{L'_0}source, and similarly for M2\Struct{M_2}source. Then the map h:M1M2h \colon M_1 \to M_2source defined by h(cM'1)=cM'2h(\Assign{c}{M'_1}) = \Assign{c}{M'_2}source is an isomorphism in L'0\Lang{L}'_0source, because Γ*Δ*\Gamma^* \cap \Delta^*source is maximally consistent in L'0\Lang{L}'_0source, as shown. This follows because any L'0\Lang{L}'_0source-sentence either belongs to both Γ*\Gamma^*source and Δ*\Delta^*source, or to neither: so cM'1PM'1\Assign{c}{M'_1} \in \Assign{P}{M'_1}source if and only if P(c)Γ*\Atom{P}{c} \in \Gamma^*source if and only if P(c)Δ*\Atom{P}{c} \in \Delta^*source if and only if cM'2PM'2\Assign{c}{M'_2} \in \Assign{P}{M'_2}source. The other conditions satisfied by isomorphisms can be established similarly.

Let us now define a model M\Struct{M}source for the language L1L2\Lang{L_1} \cup \Lang{L_2}source as follows:

  1. The domain |M|\Domain{M}source is just |M2|\Domain{M_2}source, i.e., the set of all elements cM'2\Assign{c}{M'_2}source;

  2. If a predicate symbol PPsource is in L2L1\Lang{L_2} \setminus \Lang{L_1}source then PM=PM'2\Assign{P}{M} = \Assign{P}{M'_2}source;

  3. If a predicate PPsource is in L1L2\Lang{L}_1\setminus \Lang{L}_2source then PM=h(PM'1)\Assign{P}{M} = h(\Assign{P}{M'_1})source, i.e., c1M'2,,cnM'2PM\tuple{\Assign{c_1}{M'_2}, \dots, \Assign{c_n}{M'_2}} \in \Assign{P}{M}source if and only if c1M'1,,cnM'1PM'1\tuple{\Assign{c_1}{M'_1}, \dots, \Assign{c_n}{M'_1}} \in \Assign{P}{M'_1}source.

  4. If a predicate symbol PPsource is in L0\Lang{L}_0source then PM=PM'2=h(PM'1)\Assign{P}{M} = \Assign{P}{M'_2} = h(\Assign{P}{M'_1})source.

  5. Function symbols of L1L2\Lang{L}_1 \cup \Lang{L}_2source, including constant symbols, are handled similarly.

Finally, one shows by induction on formulas that M\Struct{M}source agrees with M'1\Struct{M'_1}source on all formulas of L'1\Lang{L'_1}source and with M'2\Struct{M'_2}source on all formulas of L'2\Lang{L'_2}source. In particular, MΓ*Δ*\Struct{M} \Entails \Gamma^* \cup \Delta^*source, whence MA\Struct{M} \Entails !Asource and M¬B\Struct{M} \Entails \lnot!Bsource, and AB\not\Entails !A \lif !Bsource. This concludes the proof of Craig's Interpolation Theorem.

Source file content/model-theory/interpolation/definability.tex

The Definability Theorem

One important application of the interpolation theorem is Beth's definability theorem. To define an nnsource-place relation RRsource we can give a formula C!Csource with nnsource free variables which does not involve RRsource. This would be an explicit definition of RRsource in terms of C!Csource. We can then say also that a theory Σ(P)\Sigma(P)source in a language containing the nnsource-place predicate symbol PPsource explicitly defines PPsource if it contains (or at least entails) a formalized explicit definition, i.e.,

Σ(P)x1xn(P(x1,,xn)C(x1,,xn)).\Sigma(P) \Entails \lforall[x_1][\dots \lforall[x_n][(\Atom{P}{x_1,\dots, x_n} \liff !C(x_1, \dots, x_n))]].source

But an explicit definition is only one way of defining---in the sense of determining completely---a relation. A theory may also be such that the interpretation of PPsource is fixed by the interpretation of the rest of the language in any model. The definability theorem states that whenever a theory fixes the interpretation of PPsource in this way---whenever it implicitly defines PPsource---then it also explicitly defines it.

Definition of explicit definability

Suppose L\Lang{L}source is a language not containing the predicate symbol PPsource. A set Σ(P)\Sigma(P)source of sentences of L{P}\Lang{L} \cup \{P\}source explicitly defines PPsource if and only if there is a formula C(x1,,xn)!C(x_1, \dots, x_n)source of L\Lang{L}source such that

Σ(P)x1xn(P(x1,,xn)C(x1,,xn)).\Sigma(P) \Entails \lforall[x_1][\dots \lforall[x_n][(\Atom{P}{x_1,\dots, x_n} \liff !C(x_1, \dots, x_n))]].source

Definition of implicit definability

Suppose L\Lang{L}source is a language not containing the predicate symbols PPsource and PP'source. A set Σ(P)\Sigma(P)source of sentences of L{P}\Lang{L} \cup \{P\}source implicitly defines PPsource if and only if

Σ(P)Σ(P)x1xn(P(x1,,xn)P(x1,,xn)),\Sigma(P) \cup \Sigma(P') \Entails \lforall[x_1][\dots \lforall[x_n][(\Atom{P}{x_1,\dots, x_n} \liff \Atom{P'}{x_1,\dots, x_n})]],source

where Σ(P)\Sigma(P')source is the result of uniformly replacing PPsource with PP'source in Σ(P)\Sigma(P)source.

In other words, for any model M\Struct{M}source and R,R|M|nR, R' \subseteq \Domain{M}^nsource, if both M[R]Σ(P)\Expan{M}{R} \Entails \Sigma(P)source and M[R]Σ(P)\Expan{M}{R'} \Entails \Sigma(P')source, then R=RR=R'source; where M[R]\Expan{M}{R}source is the structure M\Struct{M'}source for the expansion of L\Lang{L}source to L{P}\Lang{L} \cup \{P\}source such that PM=R\Assign{P}{M'} = Rsource, and similarly for M[R]\Expan{M}{R'}source.

Beth definability theorem

[Beth Definability Theorem] A set Σ(P)\Sigma(P)source of L{P}\Lang{L} \cup\{P\}source-formulas implicitly defines PPsource if and only Σ(P)\Sigma(P)source explicitly defines PPsource.

Proof

If Σ(P)\Sigma(P)source explicitly defines PPsource then both

Σ(P)x1xn(P(x1,,xn)C(x1,,xn))Σ(P)x1xn(P(x1,,xn)C(x1,,xn))\Sigma(P) & \Entails & \lforall[x_1][\dots \lforall[x_n] [(\Atom{P}{x_1,\dots, x_n} \liff !C(x_1,\dots,x_n))]]\\ \Sigma(P') & \Entails & \lforall[x_1][\dots \lforall[x_n] [(\Atom{P'}{x_1,\dots, x_n} \liff !C(x_1,\dots,x_n))]]source

and the conclusion follows. For the converse: assume that Σ(P)\Sigma(P)source implicitly defines PPsource. First, we add constant symbols c1c_1source, dots, cnc_nsource to L\Lang{L}source. Then

Σ(P)Σ(P)P(c1,,cn)P(c1,,cn).\Sigma(P) \cup \Sigma(P') \Entails \Atom{P}{c_1, \dots, c_n} \to \Atom{P'}{c_1, \dots, c_n}.source

By compactness, there are finite sets Δ0Σ(P)\Delta_0 \subseteq \Sigma(P)source and Δ1Σ(P)\Delta_1 \subseteq \Sigma(P')source such that

Δ0Δ1P(c1,,cn)P(c1,,cn).\Delta_0 \cup \Delta_1 \Entails \Atom{P}{c_1, \dots, c_n} \to \Atom{P'}{c_1, \dots, c_n}.source

Let D(P)!D(P)source be the conjunction of all sentences A(P)!A(P)source such that either A(P)Δ0!A(P) \in \Delta_0source or A(P)Δ1!A(P') \in \Delta_1source and let D(P)!D(P')source be the conjunction of all sentences A(P)!A(P')source such that either A(P)Δ0!A(P) \in \Delta_0source or A(P)Δ1!A(P') \in \Delta_1source. Then D(P)D(P)P(c1,,cn)P(c1,,cn)!D(P) \land !D(P') \Entails \Atom{P}{c_1, \dots, c_n} \to \Atom{P'}{c_1, \dots, c_n}source. We can re-arrange this so that each predicate symbol occurs on one side of \Entailssource:

D(P)P(c1,,cn)D(P)P(c1,,cn).!D(P) \land \Atom{P}{c_1, \dots, c_n} \Entails !D(P') \to \Atom{P'}{c_1, \dots, c_n}.source

By Craig's Interpolation Theorem there is a sentence C(c1,,cn)!C(c_1,\dots, c_n)source not containing PPsource or PP'source such that:

D(P)P(c1,,cn)C(c1,,cn);C(c1,,cn)D(P)P(c1,,cn).!D(P) \land \Atom{P}{c_1, \dots, c_n} & \Entails !C(c_1,\dots, c_n); \\ !C(c_1,\dots, c_n) & \Entails !D(P') \to \Atom{P'}{c_1, \dots, c_n}.source

From the former of these two entailments we have: D(P)P(c1,,cn)C(c1,,cn)!D(P) \Entails \Atom{P}{c_1,\dots, c_n} \lif !C(c_1,\dots, c_n)source. And from the latter, since an L{P}\Lang{L} \cup \{P\}source-model M[R]A(P)\Expan{M}{R} \Entails !A(P)source if and only if the corresponding L{P}\Lang{L} \cup \{P'\}source-model M[R]A(P)\Expan{M}{R} \models !A(P')source, we have C(c1,,cn)D(P)P(c1,,cn)!C(c_1,\dots, c_n) \Entails !D(P) \lif \Atom{P}{c_1,\dots, c_n}source, from which:

D(P)C(c1,,cn)P(c1,,cn).!D(P) \Entails !C(c_1,\dots,c_n) \to \Atom{P}{c_1,\dots, c_n}.source

Putting the two together, D(P)P(c1,,cn)C(c1,,cn)!D(P) \Entails \Atom{P}{c_1,\dots, c_n} \liff !C(c_1, \dots, c_n)source, and by monotonicity and generalization also

Σ(P)x1xn(P(x1,,xn)C(x1,,xn)).\Sigma(P) \Entails \lforall[x_1][\dots\lforall[x_n][(\Atom{P}{x_1,\dots, x_n} \liff !C(x_1,\dots, x_n))]].source

Source disclosures