La conversione dei sillogismi

Questo articolo tratta della conversione dei sillogismi e da per scontate una serie di conoscenze sul sillogismo.
Se non lo hai ancora studiato e non conosci modi, figure, quadrato delle opposizioni, ecc. puoi trovare informazioni utili in questa pagina.

Il quadrato delle opposizioni
Il quadrato delle opposizioni

 

Conversione dei sillogismi

Durante il medioevo fin dalla Summa Logicales di Piero Ispano, i logici terministi, e in generale i filosofi della scolastica hanno elaborato una filastrocca mnemonica utile a ricordare i vari modi del sillogismo e la tecnica da utilizzare per la loro conversione.

Ai sillogismi validi sono quindi stati assegnati i nomi seguenti:

Barbara, Celarent, Darii, Ferio (Prima figura: MP-SM)
Cesare, Camestres, Festino,Baroco (Seconda figura: PM-SM)
Darapti, Disamis, Datisi, Felapton, Bocardo, Ferison (Terza figura: MP-MS)
Bamalip, Camenes, Dimaris, Fesapo, Fresison (Quarta figura: PM-MS).

Dal momento che, secondo il quadrato delle opposizioni:

A. E’ un enunciato universale affermativo
I. E’ un enunciato particolare affermativo
E. E’ un enunciato universale negativo
O. E’ un enunciato particolare negativo

è piuttosto intuitivo comprendere il ruolo delle vocali nei nomi latini dei sillogismi:

Barbara è ad esempio un sillogismo composto da tre enunciati universali affermativi (bArbArA), mentre Baroco (bArOcO) sarà composto da un enunciato universale affermativo e da due enunciati particolari negativi.

Nella seconda strofa della rima sono indicati i sillogismi di seconda figura. In questo caso il nome, oltre all’informazione AIEO sulle proposizioni, contiene anche consonanti che indica il metodo da utilizzare per la riconduzione dei sillogismi secondari a sillogismi di prima figura.

La riconduzione di basa su due regole:

  1.  L’iniziale del nome indica a quale sillogismo di prima figura va ricondotto il sillogismo secondario.
    Ad esempio Camestres va ricondotto a Celarent, Baroco va ricondotto a Barbara, Darapti a Darii, ecc
  2. Tra le consonanti interne alla parola, m, s, c e p indicano la tecnica di conversione.

Le tecniche di conversione sono quindi quattro:

  1. La consonante m indica che va effettuata una mutatio praemissarum, cioè una mutazione delle premesse, invertendo di posto la premessa minore e quella maggiore
  2. La consonante s indica che la conversione da effettuare è una conversio simplex, cioè una conversione semplice. La conversione semplice consiste nel mutare la posizione di soggetto S, predicato P o termine medio M nella posizione della prima figura.
    NB: La conversione semplice è possibile solo quando soggetto e predicato hanno la stessa estensione.
  3. La consonante p indica che va effettuata una conversione per accidens, che nell’intenzione degli autori medievali significa che ciò che è universale diventa particolare (o accidentale), quindi A si converte in I ed E si converte in O.
  4. La consonante c indica che la conversione va effettuata per contradictionem , cioè mostrando che dall’assunzione della verità delle premesse e della falsità della conclusione si ricava una contraddizione.

A parte m,s,p,c ogni altra consonante non ha alcun valore.

Proviamo a ragionare su due esempi:

Esempio 1: conversione semplice (conversio simplex)

Nessun oviparo è un felino
Tutti i gatti sono felini
Nessun gatto è oviparo

Di che tipo di sillogismo si tratta? Vediamo che è di seconda figura perché nella forma PM-SM-SP, e che la premessa maggiore è una universale negativa (E), quella minore una universale positiva (A), mentre la conclusione è una universale negativa (E) .
Da E-A-E deduciamo che si tratta di Cesare, che va ricondotto a Celarent perché la sua iniziale è una C, con la regola della conversio simplex perché la parola Cesare contiene una s, trasformando la premessa maggior perché la s si trova prima della prima vocale E di Cesare

Quindi:

Trasformiamo la premessa maggiore da PM (seconda figura) a MP ( prima figura)

Nessun felino è un oviparo

La premessa minore è già nella forma SM, quindi non la trasformiamo, anche perché la regola vuole che si trasformi solo l’enunciato della premessa maggiore.

Tutti i gatti sono felini

Anche la conclusione non va trasformata per lo stesso motivo di sopra, e perché si trova già in forma SP.

Nessun gatto è oviparo

Il sillogismo risultante dalla trasformazione sarà:

Nessun felino è oviparo
Tutti i gatti sono felini
Nessun gatto è oviparo

Vediamo che si tratta di un sillogismo in forma MP-SM-SP, quindi è di prima figura, e che quantificazioni ed estensioni delle proposizioni è: universale negativa E, universale affermativa A, universale negativa E.
Siamo quindi di fronte a un sillogismo Celarent.

Esempio 2: conversione per contradictionem

(i) Tutti i gatti sono felini
(ii) Qualche animale non è un felino
(iii) Qualche animale non è un gatto

Si tratta come si vede di un sillogismo di seconda figura (PM-SM-SP). La premessa maggiore è una universale affermativa (A), quella minore una particolare negativa (O) e la conclusione una particolare negativa (O). Si tratta quindi di un sillogismo Baroco, che va quindi ricondotto al sillogismo Barbara, dal momento che l’iniziale è una B.

In Baroco troviamo una c dopo la seconda vocale, che significa che dobbiamo effettuare una conversione per contradictionem.

Poniamo quindi come falsa la conclusione:

(iii) Qualche animale non è un gatto

Per il quadrato delle opposizioni, se questa proposizione è falsa, sarà vera la sua contraddittoria.

(iv) Tutti gli animali sono gatti

Ora, costruiamo con (i) e (iv), che sappiamo essere vere, costruiamo il seguente sillogismo:

Tutti i gatti sono felini
Tutti gli animali sono gatti
Tutti gli animali sono felini

Si tratta di un sillogismo valido. Ma se la sua conclusione è vera, allora deve essere falsa la sua contraddittoria:

Qualche animale non è un felino

E ciò è in contraddizione con (ii), che dice che «Qualche animale non è un felino» è vera.

In questo caso ve tenuto ben presente che la “riconduzione” di Baroco, insieme a quella di Bocardo, va intesa in questo modo, e non come una semplice trasformazione del sillogismo di partenza direttamente nel corrispettivo di prima figura. Va inoltre tenuto presente che la trasformazione avviene verso un sillogismo valido, che non per forza è vero.

Ora puoi provare a convertire dei sillogismi. Contattami se qualcosa non ti è chiaro.

Buona fortuna!

firmasm

Tutti i ciclisti sono sportivi: l’enigma di un tableau e la sua soluzione

 

Questo articolo è un’introduzione alla soluzione dei tableau.
Riporta un esercizio sui tableau che ho portato a termine per il corso di istituzioni di logica tenuto all’Università degli Studi di Milano.
I metodi di risoluzione dei tableau sono quelli proposti nella dispensa del corso , la trovi qui.

Il tableau in questo articolo verifica la validità di un sillogismo.
Per informazioni sul sillogismo (forme, modi, ecc) consulta la pagina che ho pubblicato  qui.

Il tableau da risolvere

Per questo primo tableau utilizziamo quindi il seguente sillogismo:

Tutti i ciclisti sono sportivi
Qualche uomo è un ciclista
Qualche uomo è sportivo

 

Si tratta di un sillogismo di prima figura, modo Darii.
Prima figura significa che è nella forma
Termine medio M (ciclista)-predicato P (sportivo)
Soggetto S (uomo) – Termine medio M (Sportivo)
Soggetto S (uomo) – Predicato P (Sportivo)

Darii significa che il sillogismo è nella forma AII:Universale affermativa A-Particolare affermativa I- Particolare affermativa I . (vedi il quadrato delle opposizioni che trovi qui)

La formula di questo sillogismo si scrive in questo modo:

\((\forall _x(M_{(x)} \rightarrow P_{(x)}) \wedge \exists  _{(x)} (S_{(x)} \wedge M_{(x)})) \rightarrow \exists _{(x)}(S_{(x)} \wedge P_{(x)})\)

Dove:

  • \(\forall\) è il quantificatore universale e significa “per ogni”
  • \(\exists\) è il quantificatore esistenziale che significa “esiste almeno un”
  • \( \rightarrow\) è il simbolo di implicazione, significa “se…allora”
  • \(\wedge\) è il simbolo di congiunzione, significa”e” (AND logico).
  • \(\vee\) è il simbolo di disgiunzione, significa “oppure” (OR logico),
  • \(\neg\) è il simbolo di negazione significa “non” (NOT logico).

Per le regole di inferenza utilizzeremo anche il simbolo di trasformazione \(\leadsto\). Significa “si trasforma in”.

 

Come si risolve il tableau

Il primo passo

Per la risoluzione della formula \(\Gamma\) ci si basa sul principio di non contraddizione e sul principio del terzo escluso.
Come primo passo si nega quello che viene affermato ( \(\neg\Gamma\)) e si procede applicando le regole finché si incontrano contraddizioni.
Se come primo passo si afferma che la formula è falsa e in seguito si dimostra che la sua falsità implica una contraddizione, secondo i principi aristotelici di non contraddizione e del terzo escluso il tableau risulterà vero.
Detto in termini più semplici: la formula può essere vera o falsa. Se non è falsa, allora è vera.

Le regole di inferenza

Per risolvere i tableau occorre applicare con attenzione una serie di regole.
Le regole per la risoluzione dei tableau proposte nel corso sono le seguenti:

1. Regole di riscrittura

Le regole di riscrittura sono le prime che si applicano quando si risolve un tableau, subito dopo aver negato il tableau con \(\neg \).

Si tratta delle seguenti sette regole:

  1. $$\neg(C\rightarrow D) \leadsto C \wedge \neg D $$
  2. $$ C \rightarrow D \leadsto \neg C \vee D $$
  3. $$ \neg \neg C \leadsto C $$
  4. $$ \neg ( C \vee D ) \leadsto \neg C \wedge \neg D $$
  5. $$ \neg (C \wedge D ) \leadsto \neg C \vee \neg D $$
  6. $$ \neg \forall _x C \leadsto \exists _x \neg C $$
  7. $$ \neg \exists _x C \leadsto \forall _x \neg C $$

Le regole di riscrittura si applicano per prime e si procede finché non ci si trova nella situazione detta FNN (Forma Normale Negativa), cioè quando nel tableau:

  • Non compaiono simboli \(\neg\) davanti a quantificatori
  • Non compaiono simboli \(\neg\) davanti a parentesi
  • Non compaiono simboli di implicazione \(\rightarrow\)

 

2. Regole di espansione

Una volta che, dopo aver applicato le regole di riscrittura, si giunge allo stato FNN, si procede applicando le regole di epansione.

Le regole di espansione riguardano gli operatori \(\wedge \) , \(\vee \) e i quantificatori \(\exists \), \(\forall\) e vanno applicate in questo ordine:

\(\wedge , \vee, \exists,   \forall \)

  1. Regola per la congiunzione \( \wedge \), dove \(\Gamma \) è la formula $$\frac {\Gamma , B \wedge C }{\Gamma , B, C } $$
  2. Regola per la disgiunzione \(\vee \)$$\frac {\Gamma , B \vee C }{\Gamma , B || \Gamma C } $$
    Quando si applica questa regola la formula viene divisa in due rami \(R _t \) e \(R _f \)
  3. Regola per il quantificatore  esistenziale \(\exists \)$$\frac {\Gamma ,  \exists _x B }{\Gamma , B  _{( c/x)}  } $$
    NB: x si trasforma in una costante fino a quel momento mai utilizzata nel tableau. Non trasformare x in costanti già utilizzate.
  4. Regola per il quantificatore universale \(\forall \)
    $$\frac {\Gamma ,  \forall _x B }{\Gamma , B  _{( t/x)} , \forall _x B  } $$
    NB: x si trasforma in una costante già utilizzata nel tableau. Non creare nuove costanti.

La risoluzione del tableau

Ora che abbiamo fissato le regole possiamo iniziare a verificare la formula, che chiameremo \(\Gamma \).

Trasformazione tramite regole di riscrittura finché non si giunge alla forma normale negativa (FNN)

Per prima cosa  neghiamo la formula ( \(\neg \Gamma \)):

\( \neg ((\forall _{(x)}(M_{(x)} \rightarrow P_{(x)}) \wedge \exists  _{(x)} (S_{(x)}\wedge M_{(x)})) \rightarrow \exists _{(x)}(S_{(x)} \wedge P_{(x)}))\)

Tra la prima e la seconda parte della formul troviamo un segno di implicazione, e l’intera formula è preceduta da una negazione.
Applichiamo quindi la regola di riscrittura \(\neg(C\rightarrow D) \leadsto C \wedge \neg D \):

\(  (\forall _x(M_{(x)} \rightarrow P_{(x)}) \wedge \exists  _{(x)} (S_{(x)} \wedge M_{(x)})) \wedge \neg \exists _{(x)}(S_{(x)} \wedge P_{(x)}) )\)

A questo punto, tenendo presente che dobbiamo sempre elaborare prima le parti più esterne alle parentesi, dobbiamo applicare a regola di riscrittura \(\neg \exists _x C \leadsto \forall _x \neg C \):

\(  (\forall _x(M_{(x)} \rightarrow P_{(x)}) \wedge \exists  _{(x)} (S_{(x)} \wedge M_{(x)})) \wedge  \forall _{(x)} \neg(S_{(x)} \wedge P_{(x)}) )\)

Ora applichiamo la regola di riscrittura \(\neg (C \wedge D ) \leadsto \neg C \vee \neg D \):

\(  (\forall _x(M_{(x)} \rightarrow P_{(x)}) \wedge \exists  _{(x)} (S_{(x)} \wedge M_{(x)})) \wedge  \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) )\)

L’ultimo passo da fare per trasformare la formula in Forma Normale Negativa è applicare la regola di riscrittura  \(C \rightarrow D \leadsto \neg C \vee D \)

\(  (\forall _x(\neg M_{(x)} \vee P_{(x)}) \wedge \exists  _{(x)} (S_{(x)} \wedge M_{(x)})) \wedge  \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) )\)

A questo punto la formula è stata tradotta in forma normale negativa. Si passa quindi all’applicazione delle regole di espansione

Applicazione delle regole di espansione

La prima regola di espansione da applicare è la regola di congiunzione: \( \frac {\Gamma , B \wedge C }{\Gamma , B, C } \). Applichiamola due volte ottenendo:

\(  \forall _x(\neg M_{(x)} \vee P_{(x)})) , \exists  _{(x)} (S_{(x)} \wedge M_{(x)})) , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) \)

Ora, non avendo segni \(\vee \) da risolvere fuori parentesi, la prossima regola da applicare è quella del quantificatore esistenziale \(\exists \):
\(\frac {\Gamma ,  \exists _x B }{\Gamma , B  _{( c/x)}  } \). La formula si trasforma in:

\(  \forall _x(\neg M_{(x)} \vee P_{(x)}) ,  (S_{(a)} \wedge M_{(a)}) , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) \)

Come si noterà in base alla regola di espansione utilizzata viene introdotta una costante a.

A questo punto applichiamo la regola di congiunzione:

\(  \forall _x(\neg M_{(x)} \vee P_{(x)}) ,  S_{(a)} , M_{(a)} , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) \)

Ora applichiamo la regola del quantificatore universale a \(  \forall _x(\neg M_{(x)} \vee P_{(x)})\):

\(   \forall _x(\neg M_{(x)} \vee P_{(x)}) ,  S_{(a)} , M_{(a)} , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) ,\neg M_{(a)} \vee P_{(a)}\)

Quindi applichiamo la regola di disgiunzione ottenendo due ramificazioni:

1) \(   \forall _x(\neg M_{(x)} \vee P_{(x)}) ,  S_{(a)} , M_{(a)} , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) ,\neg M_{(a)}\)
2) \(   \forall _x(\neg M_{(x)} \vee P_{(x)}) ,  S_{(a)} , M_{(a)} , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) , P_{(a)}\)

La prima ramificazione contiene una contraddizione in quanto contiene sia \(M_{(a)}\) che \(\neg M_{(a)}\). Quindi la ramificazione 1 è contraddetta e si ferma qui.

Vediamo la seconda ramificazione:

Applichiamo la regola per il quantificatore universale a \( \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) \), ottenendo:

2) \(   \forall _x(\neg M_{(x)} \vee P_{(x)}) ,  S_{(a)} , M_{(a)} , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) , P_{(a)}, \neg S_{(a)} \vee \neg P_{(a)}\)

Applichiamo la regola di disgiunzione, ottenendo due rami:

2.1) \(   \forall _x(\neg M_{(x)} \vee P_{(x)}) ,  S_{(a)} , M_{(a)} , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) , P_{(a)}, \neg S_{(a)}\)
2.2) \(   \forall _x(\neg M_{(x)} \vee P_{(x)}) ,  S_{(a)} , M_{(a)} , \forall _{(x)} (\neg S_{(x)} \vee \neg P_{(x)}) , P_{(a)},  \neg P_{(a)}\)

 

Il ramo 2.1 contiene la contraddizione \( S_{(a)} , \neg S_{(a)}\), mentre il ramo 2.2 contiene la contraddizione\( P_{(a)},\neg P_{(a)}\), quindi entrambi i rami si chiudono.

Se falsificando la formula iniziale si incorre in contraddizione, la formula iniziale risulterà di conseguenza vera. Abbiamo quindi dimostrato che il sillogismo:

Tutti i ciclisti sono sportivi
Qualche uomo è un ciclista
Qualche uomo è sportivo

è logicamente valido.

Ora vado a fare un giro in bici, prima però vi propongo un semplice tableau da risolvere:

\((\forall _{(x)} (U _{(x)} \rightarrow M_{(x)}) \wedge U_{(s)}) \rightarrow M_{(s)}\)

Buona fortuna!

firmasm

 

 

 

Ri-creazioni di logica: soluzione informatica a un quesito con la Susi

Da La Settimana Enigmistica

Quesito con la Susi numero 931

susi931

 

Come risolvere il quesito?
Per trovare la soluzione occorre effettuare il conteggio dei numeri che compaiono nelle ore dall’una (100) a lle dodici (1200) e che corrispondono a un quadrato.

Per calcolare la soluzione utilizzerò uno script che ho allestito in linguaggio JavaScript, un linguaggio standard molto diffuso sul web.

 

Procedura per la soluzione

Come abbiamo detto, devo controllare se il numero è un quadrato, quindi creo la funzione isSquare a cui passerò il parametro ora da controllare.
La funzione isSquare si basa sulla logica secondo la quale un  un quadrato deve essere positivo e  la sua radice quadrata deve essere un numero naturale.

function isSquare(n) {
  
  if (n > 0 && Math.sqrt(n) % 1 === 0) {
    return true;
  } else {

    return false;
  }
}

Ora che la funzione di controllo è pronta, passo a comporre l’elenco delle ore.
Istanzio la varabile numtimes che conterrà il conteggio richiesto dal quesito,
i punti di partenza e di arrivo delle ore e dei minuti, e la variabile che conterrà l’ora da controllare, e la stringa che conterrà l’elenco dei valori.

//Il numero da calcolare
var numTimes = 0;
//l'ora parte dal minuto zero e termina al minuto 59
var startMinutes = 0;
var endMinutes = 59;
//il calcolo deve essere effettuato per i valori dal'una alle 12
var startHours = 1;
var endHours = 12;

//istanzio la variabile ora, che conterrà l'ora da controllare
var hour = 0;
//istanzio la variabile stringa che conterrà l'elenco dei numeri
var string = '';

Ciclo sulle undici ore (dall’una alle dodici) e sui minuti (da 0 a 59).

I minuti saranno concatenati alle ore e devono essere a due cifre, occorre dunque aggiungere uno zero all’inizio del numero se è minore di 10

Ottengo l’ora concatenando le ore ai minuti

//istanzio gli iteratori per i cicli 
var i = 0; var j = 0; 

for (i >= startHours; i <= endHours; i++) { 

  for (j = startMinutes; j <= endMinutes; j++) { 
    n = j; 
    
    if ((j < 10)) { n = '0' + j; } 
 
    hour = parseInt(String(i) + String(n));
   //se l'ora è compresa tra l'una e le dodici...
    if (hour >= 100 && hour <= 1200) {
      //controllo che sia un quadrato usando la funzione isSquare definita sopra
      if (isSquare(hour)) {
        //aggiungo 1 al numero da ritrovare
        numTimes++;
        //inserisco nella stringa della lista l'ora
        string = string + hour + '-';
       
      }
    }
  }
}

//visualizzo in console il numero cercato
console.log('Soluzione:'+numTimes);
// per completezza, visualizzo in console anche l'elenco dei numeri trovati
console.log('Lista orari: ' + string);

 

Eseguo questo codice e in console   visualizzo in un millisecondo la soluzione.

 

Il valore che compare in console è 15, quindi la soluzione al quesito secondo me è 15,

I numeri che compaiono nella serie sono i seguenti;

100-121-144-225-256-324-400-441-529-625-729-841-900-1024-1156

Nel prossimo articolo proverò a risolvere qualche altro quesito della settimana enigmistica utilizzando qualche altro tipo di logica e di linguaggio di programmazione.

Essenza ed esistenza

Quale differenza c’è tra essenza ed esistenza? Il filosofo medievale Tommaso D’Aquino si interroga su questo punto in uno scritto giovanile, il De ente et essentia, opera influenzata dalla metafisica del filosofo persiano Avicenna. Gli enti sono le cose che concretamente esistono, ad esempio le persone che incontriamo per strada, il gatto che vediamo sul divano, mentre l’essenza è ciò che costituisce come tali quelle determinate cose, in questo caso rispettivamente l’umanità e la gattitudine. L’essenza,  quidditas in latino, è quel concetto che risponde alla domanda «che cos’è» quella determinata cosa.

Tommaso concepisce la relazione tra essenza (ciò che la cosa è, che si esprime nella sua definizione) ed esistenza (l’atto per cui quella cosa è) in modo del tutto analogo alla differenza aristotelica tra potenza e atto: l’essenza è l’ente in potenza, l’esistente è l’ente in atto.

Il De Ordine di Agostino

Contemporaneamente alla parte manualistica che trovate qui, ho iniziato a scrivere i commenti alle opere.

Comprenderanno il De Ordine di Aurelio Agostino, la Consolazione della filosofia di Severino Boezio (bel libro da leggere per tutti), Monologion e Proslogion di Anselmo d’Aosta e due opere di Tommaso d’Aquino, la Somma contro i gentili e la Somma teologica.

Il commento al De Ordine si trova qui