LOGICA MATEMATICA PER INFORMATICA

Documenti analoghi
LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13)

Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1

Teoria dei modelli. Alessandro Berarducci. 3 Marzo Dipartimento di Matematica Pisa

ALGEBRE DI BOOLE. (d) x, y X x y oppure y x.

DAI NUMERI NATURALI AI NUMERI RAZIONALI

LOGICA MATEMATICA PER INFORMATICA (A.A. 11/12)

1 Giochi di Ehrenfeucht-Fraissé e Logica del Prim ordine

Matematica. Corso integrato di. per le scienze naturali ed applicate. Materiale integrativo. Paolo Baiti 1 Lorenzo Freddi 1

Sviluppi e derivate delle funzioni elementari

UNIVERSITÀ DEGLI STUDI LA SAPIENZA CORSO DI STUDI IN INFORMATICA ESERCITAZIONI AL CORSO DI LOGICA MATEMATICA LOGICA PROPOSIZIONALE

Precorsi di matematica

IL TEOREMA FONDAMENTALE DELL ARITMETICA: DIMOSTRAZIONE VELOCE.

Gli insiemi N, Z e Q. I numeri naturali

Logica proposizionale

1 Principio di Induzione

04 - Logica delle dimostrazioni

I teoremi di Gödel. Giovanna Corsi. Dicembre Aritmetizzazione. Numeri di Gödel 2. 3 L aritmetica di Robinson 7

NOTE SULLE FUNZIONI CONVESSE DI UNA VARIABILE REALE

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.

(2) se A A, allora A c A; (3) se {A n } A, allora +

ALGEBRA I: ASSIOMI DI PEANO E PROPRIETÀ DEI NUMERI NATURALI

Un po di logica. Christian Ferrari. Laboratorio di matematica

Corso di elettrotecnica Materiale didattico: i grafi

Insiemi, Numeri, Terminologia. Prof. Simone Sbaraglia

Limiti e continuità. Teoremi sui limiti. Teorema di unicità del limite Teorema di permanenza del segno Teoremi del confronto Algebra dei limiti

L aritmetica degli insiemi infiniti Parte I

Semantica proposizionale. Unit 2, Lez 3 e 4 Corso di Logica

ANALISI 1 1 QUINTA LEZIONE

Geometria della programmazione lineare

Ragionamento Automatico Richiami di calcolo dei predicati

Successioni, massimo e minimo limite e compattezza in R

Università degli Studi di Palermo Facoltà di Economia. Dipartimento di Scienze Economiche, Aziendali e Statistiche. Appunti del corso di Matematica

Alcune Tracce dei Precedenti Esami del Dottorato di Siena in Logica Matematica ed Informatica Teorica

3. Successioni di insiemi.

8. Completamento di uno spazio di misura.

ANALISI 1 - Teoremi e dimostrazioni vari

Introduzione alla TEORIA DEI NUMERI

Corso di Laurea in Matematica Geometria 2. Foglio di esercizi n. 2 a.a Soluzioni

Presentazione di gruppi

Completezza e compattezza

Massimo e minimo limite di successioni

INSIEMI E RELAZIONI. 1. Insiemi e operazioni su di essi

Esercizi di Matematica per la prova di ammissione alla Scuola Galileiana /16

Università degli Studi di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica ALGEBRA BOOLEANA

La codifica digitale

Osservazione 1.1 Si verifica facilmente che esiste un unica relazione d ordine totale su Q che lo renda un campo ordinato.

ALGEBRA I: SOLUZIONI QUINTA ESERCITAZIONE 9 maggio 2011

Linguaggi. Claudio Sacerdoti Coen 29,?/10/ : La struttura dei numeri naturali. Universitá di Bologna

G. Pareschi FUNZIONI BOOLEANE. 1. Funzioni booleane

1 Funzioni reali di una variabile reale

RELAZIONI, FUNZIONI, INSIEMI NUMERICI. 1. Relazioni. Siano X e Y due insiemi non vuoti. Si definisce il prodotto cartesiano

0.1 Spazi Euclidei in generale

Valutazioni discrete. Capitolo 7

Il concetto di calcolatore e di algoritmo

IL TEOREMA DEGLI ZERI Una dimostrazione di Ezio Fornero

NOZIONI DI LOGICA PROPOSIZIONI.

LEZIONE 30. Se x = 1 si dice che x è un versore. Se poi y = (y 1,..., y n ) R n poniamo. Ricordiamo che vale la cosiddetta disuguaglianza triangolare

1. equivalenze e implicazioni logiche. Esercizio 1.2. Trovare le implicazioni che legano i seguenti enunciati (x, y R):

2. I numeri reali e le funzioni di variabile reale

Il teorema di Schwarz

2 non è un numero razionale

Appunti su Indipendenza Lineare di Vettori

LEZIONE Equazioni matriciali. Negli Esempi e si sono studiati più sistemi diversi AX 1 = B 1, AX 2 = R m,n, B = (b i,h ) 1 i m

misura. Adesso, ad un arbitrario punto P dello spazio associamo una terna di numeri reali x

Tecniche di conteggio

Esercitazioni di geometria /2009 (Damiani) Il polinomio minimo. I) Definizione del polinomio minimo.

Quello che avreste dovuto sapere su ordinali e cardinali, ma non avete mai osato studiare.

Lezioni di ISTITUZIONI di MATEMATICA (gruppo 3)

Corso di Laurea in Matematica Geometria 2. Foglio di esercizi n. 5 a.a Soluzioni

Il Teorema di Kakutani

Teoria degli insiemi

Lezione 10: Teorema di Rouchè-Capelli e la classificazione dei sistemi lineari

Note sulle classi di complessità P, NP e NPC per ASD (DRAFT)

Capitolo IV SPAZI VETTORIALI EUCLIDEI

LEZIONE 4. { x + y + z = 1 x y + 2z = 3

Logica per la Programmazione

Forme differenziali lineari e loro integrazione

Parte 4. Spazi vettoriali

Linguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl

PROGRAMMA CONSUNTIVO

X Settimana = 0 R. = 0 R x, x R. + (x 0 R. ) x 0 R = = x 0 R

Introduciamo ora un altro campo, formato da un numero finito di elementi; il campo delle classi resto modulo n, con n numero primo.

Elementi di Algebra Lineare Spazi Vettoriali

x 1 Fig.1 Il punto P = P =

Il teorema di Lagrange e la formula di Taylor

a + 2b + c 3d = 0, a + c d = 0 c d

Piccolo teorema di Fermat

TEN Radici quadrate modulo p e modulo p k. Radici quadrate modulo p, con p > 2.

Prerequisiti Matematici

04 - Numeri Complessi

TEORIA DEI SISTEMI SISTEMI LINEARI

Logiche descrittive Le logiche descrittive sono una famiglia di formalismi per la rappresentazione della conoscenza (KR) che descrivono ciò che è

Forme bilineari simmetriche

Logica per la Programmazione

DIMOSTRAZIONI E TAUTOLOGIE, IPOTESI NON TAUTOLOGICHE. Corso di Logica per la Programmazione A.A. 2013/14 Andrea Corradini

Capitolo 1. Gli strumenti. 1.1 Relazioni

Elementi di Algebra e Logica Determinare la tavola della verità di ciascuna delle seguenti forme proposizionali:

EQUAZIONI, DISEQUAZIONI E SISTEMI

Analisi Matematica 1 e Matematica 1 Geometria Analitica: Rette

Indice. 1 Cenni di logica. 2 Elementi di teoria degli insiemi. 3 Relazioni e funzioni. 4 Strutture algebriche

Transcript:

LOGICA MATEMATICA PER INFORMATICA A.A. 12/13, DISPENSA N. 6 Sommario. Il Teorema di Compattezza e alcune sue applicazioni: assiomatizzabilità e non-assiomatizzabilità di proprietà di strutture, e modelli non-standard dell aritmetica. 1. Teorema di Compattezza Il Teorema di Completezza ha la seguente conseguenza notevole. Ricordiamo che una teoria T è detta coerente se per nessun enunciato A vale T A A. Se tutti i sottinsiemi finiti di un insieme di enunciati sono coerenti, allora tutto l insieme è coerente. Questa implicazione è il verso non-banale di una equivalenza che va sotto il nome di Teorema di Compattezza. Teorema 1.1 (Teorema di Compattezza, versione 1). Un insieme di enunciati è coerente se e soltanto se ogni suo sottinsieme finito è coerente. Dimostrazione. La dimostrazione è ovvia. Sia T coerente e supponiamo che esista un sottinsieme T 0 finito di T non coerente. Allora T 0 A A per qualche A, e a fortiori T A A. Supponiamo ora che ogni sottinsieme finito di T sia coerente. Per assurdo, sia T incoerente. Allora T A A per qualche A. Allora per definizione di dimostrazione formale! esistono enunciati E 1,..., E n T tali che E 1,..., E n A A. Ma allora {E 1,..., E n } è un sottinsieme incoerente. In vista del Teorema di Completezza, il Teorema di Compattezza si riformula come segue. Teorema 1.2 (Teorema di Compattezza, versione 2). Un insieme di enunciati ha un modello se e soltanto se ogni suo sottinsieme finito ha un modello. Dimostrazione. Ovvio dalla versione precedente, dato che T è coerente se e soltanto se T ha un modello, per il Teorema di Completezza. Si osserva che il Teorema di Compattezza si può riformulare come segue: Teorema 1.3 (Teorema di Compattezza, versione 3). T = E se e solo se esiste un sottinsieme finito T 0 T tale che T 0 = E. Dimostrazione. T = E se e solo se T E se e solo se T { E} non è coerente. Studieremo tre tipi di applicazioni del Teorema di Compattezza: (1) Modelli non-standard dell aritmetica, (2) Assiomatizzabilità al I ordine di proprietà di strutture, (3) Dimostrazioni di teoremi di matematica classica. Note preparate da Lorenzo Carlucci, carlucci@di.uniroma1.it. 1

2 A.A. 12/13, DISPENSA N. 6 2. Modelli non-standard dell Aritmetica Dal Teorema di Gödel segue che, se T MA è coerente e T eor(t ) è enumerabile, allora T è incompleta, ossia esiste un enunciato G tale che T G e T G. Dunque T {G} e T { G} sono coerenti. Dunque hanno un modello. Inoltre, un tale G ha la forma yf (m, y) dove F (m, y) è 0 e m è un numerale. Con questa scelta di G si verifica anche che N = G, ossia che G è vero in N. Dunque T { G} pur essendo coerente, non è corretta. Se A = T { G} allora A = yf (m, y). Dunque esiste a A tale che A = F (m, y)[ ( y a) ]. Vedremo che a non può essere l interpretazione in A di un numero naturale, ossia non esiste n N tale che a = n A. L elemento a è un cosidetto numero non-standard! Consideriamo il linguaggio L = {0, 1, +,, <}. La struttura N = {N, 0, 1, +,, <} è una struttura adeguata per L e n N è n. Questa struttura viene detta modello standard. Sia T h(n) l insieme degli enunciati in L veri nella struttura N. Sia c una nuova costante. Consideriamo la teoria T {n < c : n N}. Per Compattezza, la teoria T è coerente. In ogni struttura A che soddisfa T, l elemento che interpreta la costante c è maggiore (nel senso di < A ) di tutti gli elementi che interpretano i termini n. Inoltre, tutte gli enunciati veri nel modello standard N sono anche veri in A. Un modello di questo tipo è detto non-standard. Dato un modello non-standard A, chiamiamo numeri standard di A le interpretazioni dei numerali, ossia {a A : n N(a = n A )}. Vedremo che in generale un modello non-standard di T h(n) (ma anche di MA) inizia con un insieme isomorfo a N, ossia con una copia di N, ma prosegue diversamente! Dato che A = T h(n), abbiamo che A = x y z(x < y y < z x < z), e A = x y(x < y x = y y < x). Dunque < A è un ordine lineare sul dominio A. Inoltre vale A = x(0 < x 0 = x), e dunque 0 A è il minimo elemento di A rispetto all ordine < A. Dato che vale, per ogni n N, A = x(n < x x < n + 1), abbiamo che non ci sono elementi di A tra due numeri standard. Dato che vale A = x(x 0 y(y + 1 = x)), abbiamo che ogni elemento di A ha un predecessore immediato. Dato che, per ogni n N, vale A = n + 1 = n + 1, abbiamo che il successore di un numero standard è un numero standard. Dunque il modello A inizia con una copia di N (la mappa n n A è un isomorfismo d ordine). Inoltre, se a A è un numero non-standard, allora anche il predecessore di a è un numero non-standard. Dunque sotto ogni numero non-standard a A esiste una catena infinita discendente rispetto all ordine < A di numeri non standard: a > a 1 > a 2 >... Dunque l ordine < A non è un buon ordine. Si osserva che lo stesso ragionamento si può fare assumendo che A = T, con T MA come sopra (perché MA è sufficiente a dimostrare gli enunciati che abbiamo verificato veri in A). Dunque, ritornando all esempio iniziale, abbiamo che l elemento a A tale che A = F (m, y)[ ( y a) ] deve essere un numero non-standard! Si osserva però che ogni sottinsieme di A definibile da una formula ha un minimo. Sia X = {a A : A = F (a)}. Dato che in T h(n) vale xf (x) x(f (x) y(f (y) x y)),

LOGICA MATEMATICA PER INFORMATICA 3 X ha un minimo in A rispetto a < A. Da questa osservazione segue che l insieme dei numeri standard non è definibile. Se F (x) definisce i numeri non standard in A allora F (x) definisce i non-standard. Allora dovrebbe esistere un minimo numero non-standard. Ma abbiamo visto sopra che non esiste. 3. Applicazione I: (non) Assiomatizzabilità Data una proprietà P di strutture, è naturale chiedersi se può essere espressa/definita da enunciati del primo ordine, ossia se esiste un insieme di enunciati E che soddisfa A = E A ha la proprietà P Se un tale insieme E esiste, diciamo che E assiomatizza P e che P è una proprietà assiomatizzabile (al I ordine). Ci si può chiedere allora se esiste un insieme finito di enunciati che assiomatizza P. Questo è equivalente a chiedersi se esiste un singolo enunciato E tale che A = E A ha la proprietà P. In questo caso diciamo che P è finitamente assiomatizzabile. Il Teorema di Compattezza è un valido strumento per dimostrare che una certa proprietà P non è finitamente assiomatizzabile. 3.1. Due proprietà fondamentali. Formuliamo due proprietà elementari riguardanti l assiomatizzabilità che saranno utili nel seguito. La prima proprietà è analoga a una proprietà degli insiemi calcolabili: se un insieme e il suo complemento sono entrambi algoritmicamente enumerabili, allora l insieme è decidibile. Lemma 3.1. Se una proprietà P e il suo complemento P sono entrambe assiomatizzabili, allora P è finitamente assiomatizzabile. Dimostrazione. Esercizio! Lemma 3.2. Se la classe dei modelli di una teoria T 1 è finitamente assiomatizzabile, allora è assiomatizzata da un sottinsieme finito di T. Dimostrazione. Esercizio! Osservazione 3.3. Ogni classe K di strutture determina ovviamente una proprietà di strutture, la proprietà P K di appartenere a K. Esistono condizioni (algebriche) generali affinché P K sia finitamente assiomatizzabile (Teorema di Keisler). In questo corso non le studiamo! 3.2. Esempio 1: Finitezza. Cominciamo con un esempio molto semplice: la proprietà di avere dominio finito non è assiomatizzabile. La prima osservazione è che, per ogni n N, è possibile esprimere al I ordine (in una teoria con l identità) che esistono almeno n oggetti distinti. A n := x 1... x n ( x i x j ). La seconda osservazione è che la teoria T definita come T = 1 i<j n n N è soddisfatta da tutte e sole le strutture infinite. Supponiamo che la proprietà di essere avere dominio finito sia assiomatizzabile. Sia T un insieme di enunciati che la assiomatizza. Allora ogni sottinsieme della teoria T T 1 i.e., {A : A = T }. Il Lemma si può riformulare anche così: se T è un insieme infinito di enunciati che assiomatizza la proprietà P, e P è finitamente assiomatizzabile, allora è assiomatizzata da un sottinsieme finito di T. In questo caso la classe dei modelli di T è esattamente la classe delle strutture che soddisfano la proprietà P. A n

4 A.A. 12/13, DISPENSA N. 6 è soddisfacibile, perché esistono insiemi finiti arbitrariamente grandi. Per Compattezza, è assiomatizzabile anche T T. Ma ogni modello di T è infinito. Si osserva che lo stesso risultato si può ottenere aggiungendo un infinità numerabile di nuove costanti c 1, c 2,... e, per ogni n N, la congiunzione i<j n c i c j. L argomento si generalizza come nel seguente teorema. Teorema 3.4. Sia T un insieme di enunciati. Se T ha modelli finiti arbitrariamente grandi, allora ha un modello infinito. Dimostrazione. L argomento è identico a quello svolto sopra. Abbiamo visto che la proprietà di essere un insieme infinito è assiomatizzabile (dalla teoria T di sopra). La proprietà è anche finitamente assiomatizzabile? Ovviamente no, perché altrimenti la negazione degli assiomi sarebbe un assiomatizzazione finita per la proprietà di essere un insieme finito! (N.B. questo ragionamento vale perché stiamo parlando di una assiomatizzazione finita, che è equivalente a una assiomatizzazione con un unico assioma). Proposizione 3.5. La proprietà di essere un insieme infinito è assiomatizzabile ma non è finitamente assiomatizzabile. Osservazione 3.6. Un argomento analogo dimostra che la proprietà di essere un buon ordinamento non è finitamente assiomatizzabile. Una relazione binaria < su è un buon ordinamento su un insieme X se < è antisimmetrica e tricotomica (i.e., è un ordine totale stretto) e ogni sottinsieme non vuoto di X ha un elemento minimo. Equivalentemente, se non esistono catene infinite discendenti di elementi di X. 3.3. Esempio 2: Connettività di Grafi. Un grafo (semplice) G = (V, E) è connesso se e solo se per ogni v, w V con v w esiste n N e vertici x 1,..., x n V (tutti distinti tra loro e da v, w) tali che E(v, x 1 ),..., E(x n, w) (se n = 0 si intende che E(v, w)). Il linguaggio adeguato per parlare di grafi ha un solo simbolo di relazione binario, E(x, y). Proposizione 3.7. La connettività non è assiomatizzabile. Dimostrazione. Supponi per assurdo che lo sia, e sia T l assiomatizzazione. La formula seguente dice che non esiste un cammino di lunghezza n + 1 tra v e w. n 1 P n (v, w) = ( x 1... x n )(E(v, x 1 ) E(x i, x i+1 ) E(x n, w)). Consideriamo l espansione del linguaggio dei grafi con due nuove costanti, a, b. Consideriamo la teoria T nel nuovo linguaggio definita come segue. i=1 T = T {P n (a, b)} n N +. Per Compattezza si dimostra che T è coerente. Un modello di T non ha cammini tra l elemento associato ad a e quello associato a b. Dunque è un grafo non connesso, ma soddisfa T. 3.4. Esempio 3: campi. Il linguaggio adeguato per la teoria dei campi è L = {0, 1, +, }. I normali assiomi di campo sono al I ordine. Sia F la congiunzione di tali assiomi. Dunque la classe dei campi è assiomatizzabile (finitamente) all interno delle strutture adeguate per il linguaggio L. Consideriamo ora la classe dei campi di caratteristica 2 p, per p un numero primo. Proposizione 3.8. Per ogni p > 0, la classe dei campi di caratteristica p è finitamente assiomatizzabile. Dimostrazione. Gli assiomi dei campi sono in numero finito. L assioma forza la caratteristica p. C p := (1 + 1 + + 1 = 0) }{{} p volte 2 La caratteristica di un campo è il minimo n tale che (underbrace1 + 1 + + 1n volte = 0. Se un tale n esiste è primo, e se non esiste allora si dice che il campo ha caratteristica 0.

LOGICA MATEMATICA PER INFORMATICA 5 Proposizione 3.9. La classe dei campi di caratteristica 0 è assiomatizzabile ma non finitamente assiomatizzabile. Dimostrazione. Aggiungendo agli assiomi dei campi l insieme di assiomi { C 2, C 3,..., C p,... } p P assiomatizzo i campi di caratteristica 0. Se questa teoria fosse assiomatizzabile, allora sarebbe assiomatizzabile da un insieme finito di assiomi che asseriscono che la caratteristica non è p 1,..., p k. Sia p un primo maggiore di tutti i p i. Allora Z p è un modello degli assiomi di campo e degli assiomi C p1,..., C pk. Ma non è un campo di caratteristica 0. Otteniamo come corollario la seguente proposizione, usando una delle due proprietà fondamentali dell assiomatizzabilità dimostrate sopra. Proposizione 3.10. La classe dei campi di caratteristica positiva non è assiomatizzabile. Osservazione 3.11. Dai risultati di sopra si può ottenere il seguente Corollario: Sia E un enunciato nel linguaggi dei campi che vale in tutti i campi di caratteristica 0. Allora esiste un numero primo p tale che E vale in tutti i campi di caratteristica p. Osservazione 3.12. Si può dimostrare analogamente che la classe dei campi algebricamente chiusi è assiomatizzabile ma non finitamente assiomatizzabile. Per dimostrare l assiomatizzabilità basta ricordare che un campo è algebricamente chiuso se e solo se ogni polinimio di grado 2 a coefficienti nel campo ha uno zero nel campo. Per ogni k N si può esprimere con una formula la relazione y = x k. Partendo da questa formula si può formulare, per ogni n N un enunciato τ n nel linguaggio dei campi che dice che ogni polinomio di grado n ha uno zero nel campo. L aggiunta di tutti i τ n agli assiomi di campo assiomatizza i campi algebricamente chiusi. Per dimostrare che la classe non è finitamente assiomatizzabile si ragiona come per il caso dei campi di caratteristica positiva, ma qui è più difficile trovare il modello finale. In questo caso si deve usare un risultato di algebra un po più sofisticato: per ogni n N esiste un campo non algebricamente chiuso in cui tutti i polinomi di grado n hanno uno zero. 4. Applicazione II: dimostrazioni per Compattezza Il Teorema di Compattezza di può usare come strumento per dimostrare risultati di matematica classica in diverse aree. Lo schema generale dell applicazione è il seguente. Sia A una struttura matematica (es. un insieme, un grafo, un gruppo, uno spazio vettoriale, etc.) per cui esiste una nozione adeguata di sottostruttura (es. sottinsieme, sottografo, sottogruppo, sottospazio etc.). Sia P una proprietà significativa di strutture del tipo di A. In molti casi di interesse, il Teorema di Compattezza si può usare per dimostrare implicazioni della forma seguente. Se ogni sottostruttura finita di A ha la proprietà P allora A ha la proprietà P. Lo schema della dimostrazione è generale. Data una struttura A del tipo in questione, si definisce una teoria T A tale che se T A è soddisfacibile allora A ha la proprietà P. Per dimostrare che T A è soddisfacibile basta per Compattezza dimostrare che ogni sottinsieme finito T 0 T di T A è soddisfacibile. Ma per dimostrare questo, in molti casi, se T A è definita in modo adeguato, basta la premessa dell implicazione che stiamo dimostrando: ogni sottostruttura finita di A ha la proprietà P. 4.1. k-colorabilità di grafi. Un grafo è k-colorabile se esiste una partizione dei vertici di G in k classi tali che non esistono archi tra i vertici di una stessa classe. In altre parole: è possibile colorare i vertici di G con k colori in modo tale che se due vertici sono connessi da un arco, allora hanno colori diversi. Teorema 4.1. Sia G un grafo infinito. G è k-colorabile se e solo se ogni sottinsieme finito di G è k-colorabile. Usando il Teorema di Compatteza dimostriamo il Teorema. Dato che ci siamo limitati a linguaggi numerabili, dimostriamo il teorema per grafi numerabili (ma l argomento si può generalizzare facilmente). Ad ogni grafo numerabile Fissiamo un grafo numerabile G = (V, E) associamo una teoria del I ordine con identità T G come segue. Il linguaggio della teoria ha un simbolo di relazione binaria per cui si assumono gli Assiomi dell Identità. Per semplicità di lettura denotiamo questo simbolo con =. Il linguaggio ha un simbolo

6 A.A. 12/13, DISPENSA N. 6 di relazione binario E (gli archi del grafo), k predicati unari C 1,..., C k (le classi di colori), e una costante c v per ogni vertice del grafo G. La teoria T è data dai seguenti enunciati. (1) x E(x, x) (2) x y(e(x, y) E(y, x)) (3) x(c 1 (x) C k (x)) (4) x (C i (x) C j (x)) per 1 i < j k (5) x y(c i (x) C i (y) E(x, y)) per 1 i k (6) c v c w, per ogni coppia di vertici distinti v, w in G (7) E(c v, c w ) per ogni coppia di vertici di G connessi da un arco in G. Un modello (normale) di questa teoria è un grafo (perché soddisfa gli assiomi 1 e 2) k-colorabile (perché soddisfa gli assiomi 3,4,5) che contiene G come sottografo (perché soddisfa gli assiomi 6 e 7). Dunque se esiste un tale modello, G è k-colorabile. Dimostriamo che esiste un modello. Per questo per il Teorema di Completezza basta dimostrare che T è coerente. Per dimostrare che T è coerente per il Teorema di Compattezza basta dimostrare che ogni sottinsieme finito di T è coerente. In ogni sottinsieme finito T 0 di T appare solo un numero finito di costanti c v, v V. Siano c v1,..., c vt queste costanti. Il sottografo di G indotto da questi vertici è un sottografo finito di G e per ipotesi è k-colorabile. Questo sottografo è un modello di T 0. Si osserva che per la dimostrazione precedente basta il teorema di Compattezza per la logica proposizionale. In questo caso il Teorema di Compattezza dice che un insieme di formule proposizionali è soddisfacibile se e solo se è soddisfacibile ogni suo sottinsieme finito. Fissato un grafo G = (V, E), consideriamo il seguente linguaggio proposizionale. Per ogni v V e per ogni i [1, k] abbiamo una variabile proposizionale P v,i. Il significato intuitivo di questa variabile è che v ha il colore i. Consideriamo il seguente insieme T di formule (1) P v,1 P v,2 P v,k, per ogni v V. (2) (P v,i P v,j ) per ogni v V, i j in [1, k]. (3) (P v,i P w,i ) per ogni {v, w} E, i [1, k]. Sia α un assegnamento booleano alle variabili del linguaggio. Se α soddisfa T, possiamo definire una colorazione di G in k colori come segue. c(v) = i se e solo se α(p vi ) = 1. Si dimostra facilmente che c è una k-colorazione di G. Per dimostrare il teorema della k-colorabilità basta allora dimostrare che T è soddisfacibile. Per Compattezza basta dimostrare che ogni sottinsieme finito di T è soddisfacibile. Sia T 0 T finito. Consideriamo l insieme V 0 dei vertici v V menzionati in T 0, ossia tali che P v,i appare in qualche formula di T 0, per qualche i [1, k]. Per ipotesi, il sottografo di G indotto da questo insieme di vertici è k-colorabile. Sia c una tale k-colorazione. Possiamo usarla per definire un assegnamento che soddisfa T 0. Poniamo α(p v,i ) = 1 se v V 0 c(v) = i, altrimenti poniamo α(p v,i ) = 0. Si dimostra facilmente che α(t 0 ) = 1.