IL PARADOSSO DI EPIMENIDE VISTO COME UN FLIP-FLOP D “TOGGLE”
Ho già trattato il paradosso di Epimenide in un sito intitolato “IL PARADOSSO DI EPIMENIDE SVELATO” e ho segnalato che le basi del paradosso sono nascoste nella inconsistenza della dichiarazione“io sono Mentitore”.
Ho detto che la dichiarazione “io sono Mentitore” non è logicamente sostenibile e ho concluso che nessun Mentitore ovvero nessun “inveter” ovvero nessun operatore-not può dichiarare il proprio status.
In questo scritto mi soffermerò sul percorso seguito dalla Mente umana nella interpretazione del paradosso e prenderò a modello un circuito elettronico chiamato Flip-Flop.
COME LA MENTE UMANA AFFRONTA IL PARADOSSO DI EPIMENIDE
Nella interpretazione del paradosso di Epimenide la Mente umana segue due tipi di ragionamento che portano entrambi a conclusioni paradossali.
Secondo un tipo di ragionamento lo status di Epimenide sarebbe allo stesso tempo quello di Mentitore e quello di NON-Mentitore (Sincero). Una descrizione schematica di questo tipo di paradosso potrebbe essere così rappresentata:
Mentitore <----------> [status ] <----------> NON-Mentitore
Nello stesso momento, ovvero al tempo T0 coesistono due status contrastanti ovvero quello di Mentitore e quello di NON-Mentitore.
Secondo un altro tipo di ragionamento la conclusione porterebbe a sostenere che lo status di Epimende oscilla continuamente tra uno status di Mentitore ed uno status di NON-Mentitore (sincero). Lo status di Epimenide varierebbe continuamente ed indefinitamente come accade in un oscillatore astabile (sarà trattato più sotto).
IL PARADOSSO ESPRESSO COME FLOW-CHART
Prima di addentrarci nella spiegazione di come funziona un Flip-Flop pensiamo sia opportuno avere a riferimento una rappresentazione grafica del Paradosso, un modello facilmente comprensibile, esposto in forma di Diagramma di Flusso o Flow-Chart.
Nella figura sottostante, Figura 1, è rappresentata, in forma grafica, l’essenza del paradosso.
Figura 1: Situazione informativa dopo che vi è stata la dichiarazione “io sono Mentitore”. L’unica cosa nota, dopo la dichiarazione, è il valore di status dichiarato MD. Resta da definire lo status del dichiarante: (Mentitore ( Ms ) – NON-Mentitore ( Ms ). Resta anche da definire il valore logico della dichiarazione (vera – falsa ).Da notare l’introduzione dell’elemento TEMPO, molto importante e necessario al completamento della dichiarazione.
Ci sono due modi per analizzare il paradosso.
Il primo modo è quello di ipotizzare un preciso status per il dichiarante e poi, confrontando lo status ipotizzato con lo status dichiarato, dedurre se la dichiarazione è vera oppure falsa.
Questo tipo di operazione è rappresentato nella Figura 2, sotto riportata: lo status ipotizzato per il Dichiarante è quello di Mentitore MS , lo status dichiarato è quello di Mentitore MD, il valore di verità della frase, dedotto, è di frase vera.
Figura 2: dando per ipotesi che il dichiarante abbia uno status di Mentitore e sapendo che lo status dichiarato è pure quello di Mentitore, si deduce che la frase dichiarata è vera.
Il confronto tra status ipotizzato Ms e status dichiarato MD è fatto dall’operatore XNOR. Questo Operatore Logico è in grado di indicare che la frase è vera quando gli ingressi alla porta XNOR hanno valore logico identico (Mentitore).
Il secondo modo invece prende a riferimento il valore di verità della dichiarazione (dichiarazione vera oppure dichiarazione falsa) e da questo deduce quale sia lo status del dichiarante ( quello di Mentitore o di NON-Mentitore).
Lo schema di questo ragionamento è rappresentato nella figura sottostante, Figura 3.
Figura 3: secondo modo per calcolare i valori logici ignoti: ipotizzando che la dichiarazione sia vera allora dobbiamo dedurre che lo status del dichiarante è quello di Mentitore Ms.
In entrambi gli esempi sopra esposti si giunge ad una conclusione inconsistente.
Infatti supponendo che lo status del dichiarante sia quello di Mentitore, si giunge alla conclusione che la dichiarazione sia vera. Questa conclusione presenta due problemi.
Il primo problema, quello pregiudiziale, è che la dichiarazione “io sono Mentitore” non può fare parte del repertorio dichiarativo di un Mentitore. Poiché la frase risulta vera, essa non può far parte del repertorio dichiarativo di un mentitore che dichiara unicamente frasi false. La frase non potrebbe essere emessa "fonicamente", allo stesso modo in cui un Tenore non può cantare un brano preparato per un Basso. Non è nelle sue capacità e neanche nel suo repertorio.
Il secondo problema, ammesso che tale frase possa essere "fonicamente" dichiarata da un Mentitore è che la frase risulta comunque incompatibile con il modo di fare di un Mentitore. Dichiarando frasi false il Mentitore inverte sempre e quindi falsifica il valore di verità della dichiarazione. Quindi non può dichiarare una frase vera dicendo "io sono Mentitore".
Il fatto importante è che la parola Mentitore è una parola non neutra nella logica binaria: essa nasconde un modo di operare ovvero un modus operandi particolare che è quello di invertire il valore di verità. Così un Mentitore non dirà mai di essere un Mentitore ma dichiarerà, mentendo, di essere un NON-Mentitore ovvero una persona sincera.
Per essere ancora più chiari diciamo che se è ammesso che un uomo con i capelli biondi dichiari “io sono biondo” e se è “logico” che tale dichiarazione sia ritenuta vera, altrettanto non può essere detto per un uomo che mente tutte le volte che fa una dichiarazione e che dichiara “io sono mentitore”. In questo secondo caso siamo di fronte ad un caso particolare perché, in una dichiarazione del proprio status, la parola Mentitore non è equiparabile alla parola Biondo.
La Mente umana non ha difficoltà ad ammettere che la frase “io sono biondo, dichiarata da un soggetto con i capelli biondi, sia vera. E tuttavia si trova in grave difficoltà ad ammettere che sia ugualmente vera una frase con struttura logica equivalente, ovvero una frase dove il dichiarante Mentitore dichiara “io sono Mentitore”. Questo accade perché il Mentitore ha un modus operandi ben definito e da esso ci aspettiamo sempre dichiarazioni false.
La Mente fa “implicitamente” questa valutazione e, benché la dichiarazione “io sono Mentitore” abbia una una struttura sintattica impeccabile e porti a concludere che la frase è vera, nondimeno essa appare logicamente paradossale quando dichiarata da una persona con status di Mentitore.
Il dilemma che si presenta alla Mente è di questo tipo:
-- devo ritenere la dichiarazione “io sono Mentitore”come vera (quando dichiarata da una persona con status di Mentitore)
oppure
-- devo assolutamente salvare la regola generale e mantenere il convincimento che tutte le dichiarazioni fatte da un Mentitore sono false?
L’analisi del Paradosso potrebbe finire qui: basterebbe ammettere che c’è una eccezione al fatto che le dichiarazioni fatte da un Mentitore sono tutte false. Questa eccezione è costituita dalla dichiarazione “io sono Mentitore”. Una dichiarazione di questo tipo, anche se ha il peccato originale di essere inconsistente perchè non può rientrare nel repertorio delle frasi dichiarabili, dovrebbe essere vera perché costituisce una eccezione alla regola generale che le dichiarazioni fatte da un Mentitore siano sempre false.
Ma la Mente non è disposta ad ammettere che la dichiarazione “io sono Mentitore”, fatta da un Mentitore possa essere vera.
Benché le due opzioni del dilemma si smentiscano reciprocamente e quindi dovrebbero avere una pari dignità in fatto di logica,
la Mente sceglie di non infrangere la regola generale e quindi è costretta a ritenere come falsa la dichiarazione “io sono Mentitore”. Il modus operandi del Mentitore è considerato dominante, e comunque non discutibile.
Questo aspetto del modus operandi del Mentitore per cui tutte le frasi dichiarate sono false, non è esplicitamente espresso nella dichiarazione “io sono Mentitore” e di solito è valutato in modo implicito.
La dichiarazione ' io sono mentitore' in realtà è scomponibile in due dichiarazioni.
La dichiarazione1, ovvero la dichiarazione universalmente nota “io sono mentitore” intesa come espressione dello status-etichetta del dichiarante. La dichiarazione1 è vera ma logicamente inconsistente.
La dichiarazione2 intesa come espressione del modus operandi del mentitore.
Una formulazione della dichiarazione2 potrebbe essere di questo tipo: “tutte le dichiarazioni da me fatte sono false”. Le due dichiarazioni, fatte dal medesimo Mentitore e considerate entrambe vere, in realtà si smentiscono a vicenda.
Dovrebbe essere evidente che le due dichiarazioni si falsificano reciprocamente.
Infatti, se si accetta che la dichiarazione “io sono mentitore” sia vera, allora non può essere vero che tutte le dichiarazioni fatte dal medesimo Mentitore siano false. Reciprocamente, se è vero che tutte le dichiarazioni fatte da me (Mentitore ) sono false, non si comprende perché la dichiarazione da me fatta “io sono Mentitore” abbia la struttura di una frase vera.
E’ evidente che la mente incappa in un paradosso logico apparentemente insormontabile.
Ciò accade perché la parola Mentitore si presta ad una doppia interpretazione.
Nella dichiarazione “io sono Mentitore” la frase risulta vera perché viene considerato solamente il significato che si riferisce allo status-etichetta. Si tratta di una valutazione strettamente nominale o letterale. La parola Mentitore è considerata dalla sintassi logica come una parola neutra, allo stesso modo della parola Biondo o Calvo.
Nella frase “tutte le dichiarazioni da me fatte sono false” viene considerato invece l’aspetto operativo ovvero il modus operandi del Mentitore (falsificatore di verità).Come abbiamo già detto la dichiarazione "io sono Mentitore", fatta da un Mentitore, costituisce una singolarità che smentisce il valore generale della frase “tutte le dichiarazioni da me fatte sono false”.
La mente umana sceglie di non infrangere la regola generale e per coerenza deve dichiarare falsa la dichiarazione “io sono Mentitore”.
Questo passaggio arbitrario ha il vantaggio di restituire una parte di consistenza alla dichiarazione “io sono Mentitore”. Infatti secondo la logica del modus operandi si può ammettere che un mentitore possa dichiarare “io sono Mentitore” solo a patto che tale dichiarazione venga considerata falsa.
In questo caso la dichiarazione recupera consistenza ma compare un altro ostacolo.
Infatti se la dichiarazione “io sono Mentitore” è falsa allora il dichiarante è un NON-Mentitore e dichiara uno status-etichetta che non gli appartiene. Il suo status-etichetta dovrebbe essere quello di Sincero o comunque Non-Mentitore M mentre avevamo ipotizzato uno status-etichetta di Mentitore M.
In conclusione la dichiarazione “io sono Mentitore”, allorché viene considerata falsa, sarebbe coerente con il modus operandi di un Mentitore che dichiara sempre il falso ma sarebbe in contrasto con lo status-etichetta di un dichiarante Mentitore che faccia questo tipo di dichiarazione.
Il Paradosso non è risolto !!!
In sintesi, la Mente umana si aspetta che da un dichiarante con supposto status di Mentitore M venga emessa una dichiarazione falsa. Affinchè ciò accada è necessario che lo status del dichiarante, dedotto tramite ragionamento logico, sia quello di NON-Mentitore M.
Nella figura sottostante, Figura 6, è rappresentata questa situazione. Notare che lo status dedotto Ms , è dedotto a fine dichiarazioe. E lo status dedotto a fine dichiarazione si posiziona in un Tempo diverso rispetto a quello dello status Ms presente prima della dichiarazione.
Figura 6
La Figura 6 mostra un passaggio fondamentale nella comprensione del Paradosso. Infatti, supponendo che lo status del dichiarante sia quello di Mentitore MS , ci si aspetta che la sua dichiarazione sia falsa. Ma la dichiarazione può essere falsa solo se lo status realmente posseduto dal dichiarante è diverso dallo status dichiarato. Poiché lo status dichiarato è MD , lo status dedotto deve essere MS , l'opposto dello status inizialmente ipotizzato. Notare che lo status Ms dedotto si posiziona in un Tempo diverso dallo status Ms predichiarazione.
La Mente si è infilata in un problema che sembra non risolvibile.
Nelle usuali presentazioni del Paradosso non viene considerato il FATTORE TEMPO.
La Figura 6 ci mostra infatti come il fattore TEMPO sia essenziale nella dinamica del ragionamento. La figura mostra chiaramente che affinché la frase sia Falsa è necessario che lo status del dichiarante inviato alla porta XNOR sia uno status di NON-Mentitore MS . Ma è di cruciale importanza comprendere che affinché la frase sia FALSA è sufficiente che lo status inviato alla porta XNOR sia lo status che appare a fine dichiarazione. Lo status del dichiarante a fine dichiarazione non necessariamente deve essere uguale allo status posseduto prima della dichiarazione. E allora cosa dovrebbe capitare durante la dichiarazione?
Durante la dichiarazione deve avvenire una inversione del valore di status da Ms a Ms oppure da Ms a Ms .
Una rappresentazione grafica di cosa deve accadere durante la dichiarazione è mostrato nella figura sottostante, Figura 7, dove è supposto che lo status del dichiarante è quello di NON-Mentitore MS e dove il valore della frase dichiarata è di conseguenza vero.
Figura 7
In questa rappresentazione si presuppone che lo status del dichiarante sia quello di NON-Mentitore ovvero MS .Di conseguenza ci aspettiamo una dichiarazione vera. La dichiarazione può essere vera solo se lo status realmente posseduto dal dichiarante e dedotto tramite ragionamento è uguale allo status dichiarato. Quindi lo status dedotto deve essere quello di Mentitore M , palesemente opposto allo status presupposto M . Per soddisfare tutti i vincoli di questa situazione è necessario che, a fine dichiarazione, lo status del dichiarante dedotto assuma un valore di verità opposto al valore di verità ipotizzato e che tale status variato permanga nel tempo. L'inversione del valore di verità è attuato tramite un inverter (triangolo celeste con pallino rosso), ovvero tramite un Operatore-Not .
Dalla Figura 7 vediamo che c'è una possibilità di conciliare tutti i vincoli a patto che, al dichiarante, sia concesso il TEMPO necessario ad invertire il valore del proprio status. L'unico TEMPO a disposizione del dichiarante è il tempo necessario a completare la dichiarazione. Lo status del dichiarante a fine dichiarazione è opposto allo status posseduto prima della dichiarazione. Se teniamo nella dovuta importanza il fattore TEMPO vediamo che i due status ritenuti paradossali in realtà sono logicamente accettabili perché accadono in tempi diversi , T0 e T1.
I due status si succedono nel tempo e non c'è necessariamente cortocircuito o paradosso.
Esiste un Operatore Logico che possa fare il miracolo di fare tutto il lavoro necessario affinché tutti i vincoli siano soddisfatti? Si, esiste.
Tale Operatore Logico si chiama Flip-Flop. Per risolvere la situazione occorre un tipo particolare di Flip-Flop e cioè il Flip-Flop D organizzato in una configurazione specifica detta "TOGGLE".
Il Flip Flop è un Operatore Logico che rientra nella categoria degli Oscillatori. Faremo quindi una breve digressione per descrivere le caratteristiche essenziali dei vari tipi di oscillatori.
L’oscillatore astabile, come dice il nome, non ha uno stato stabile ma cambia continuamente di stato.
Questo oscillatore emette in continuazione ed automaticamente un segnale oscillante. Costruito con un inverter, oscilla alla frequenza massima possibile ovvero quella compatibile con il tempo necessario alla commutazione o inversione di stato.
Alcuni studiosi del paradosso di Epimenide associano il cambiamento di status del dichiarante ad un meccanismo di questo tipo.
2) oscillatore monostabile.
L’oscillatore monostabile ha un solo stato stabile. Un esempio di tipo analogico (di solito è implementato tramite una costante di tempo determinata da un condensatore e da un resistore) può essere il timer che temporizza l’illuminazione di una scala. Premendo il pulsante si accende la luce scale che resta accesa per un tempo determinato e poi l’oscillatore torna da sé allo stato di riposo. Questo tipo di oscillatore non pare avere relazione con il paradosso di Epimenide. E' citato per completezza.
3) oscillatore bistabile
Un oscillatore bistabile ha due stati stabili. In questa categoria rientrano dei congegni elettronici chiamati FLIP-FLOP. Un esempio di Flip-Flop meccanico, con due stati stabili, può essere considerato il meccanismo inserito in alcune penne a sfera che, premendo un pulsante, fanno fuoriuscire la mina contenente l’inchiostro. Questo stato resta stabile finché non si preme di nuovo il pulsante di attivazione: allora la mina rientra dentro la penna e resta in questo stato stabile. Un’alternanza di stati stabili si ottiene anche con certi interrutori a pulsante (olivette) che accendono e spengono le piccole lampade da comodino.
Esistono diversi tipi di Flip-Flop: il tipo Set-Reset; il tipo J-K; il tipo D; il tipo T (è un tipo D già configurato in modo “Toggle”).
La cosa interessante dei Flip-Flop e che oltre ad avere due stati stabili hanno anche due uscite con valore logico opposto.
Se per Epimenide è considerato paradossale emettere una dichiarazione vera ed allo stesso tempo una dichiarazione falsa, questo è normale per un Flip-Flop. Le due uscite sono classicamente contrassegnate con il carattere Q.
L’uscita “vera” è contrassegnata come uscita Q mentre l’uscita “falsa”, che ha un valore logico complementare a quello dell’uscita Q, è contrassegnata come uscita “Q-negata”. Nei manuali di elettronica l'uscita Q-negata è simbolicamente rappresentata da una Q con una piccola barra orizzontale posizionata sopra il carattere. Per semplicità tipografica rappresenterò l’uscita negata con il carattere Q attraversato da una barra orizzontale posizionata al centro del carattere, in questo modo: Q .
FLIP-FLOP tipo D
Fermeremo la nostra attenzione su di un Flip-Flop detto di tipo D.(In Wikipedia potete trovare una descrizione accurata del funzionamento di questo tipo di Flip-Flop)
Questo tipo di Flip-Flop funziona in modo semplice. Esso è dotato di un ingresso denominato “D” perché su questo ingresso si presentano i Dati binari da trasmettere in uscita. Il dispositivo è ovviamente dotato di due uscite complementari dette Q e Q . Inoltre è dotato di un ingresso di sincronizzazione detto ingresso di clock.
Il dispositivo funziona in questo modo: alla linea di ingresso D si presenta un dato binario che può avere il valore di 1 oppure di 0. La presenza di questo valore in ingresso non modifica le uscite Q e Q. L'ingresso è isolato dalle uscite. Solo quando arriva un impulso sulla linea di clock succede che il dato presente all’ingresso D viene trasferito tale e quale all’uscita vera, l’uscita Q. Contemporaneamente il dato è trasferito anche all’uscita falsa Q, ma con valore invertito. I valori trasferiti alle uscite sono stabili perchè sono memorizzati. Subito dopo il trasferimento del dato si ripristina l'isolamento tra ingresso e uscite.
Per esempio, se all’ingresso D è presente il valore logico 1, alla comparsa dell’impulso di clock il valore 1 è trasferito all’uscita Q mentre all’uscita Q è trasferito il valore 0. La presenza di due uscite complementari presenta utilità non indifferenti. Infatti con un singolo impulso è possibile per esempio accendere una luce attraverso l’uscita Q e contemporaneamente spegnere un motore mediante l’uscita negata Q.
Molto importante è il fatto che il Flip-Flop trasmetta in uscita il valore presente all’ingresso D soltanto con l’arrivo dell’impulso di clock. Atrettanto importante è che i dati emessi alle uscite restino stabili perché memorizzati. Altrettanto importante è il fatto che i dati, una volta emessi alle uscite, restino isolati dal dato posto all'ingresso D.
Il valore logico emesso all’uscita è mantenuto, in modo stabile, fino a che non arriva un altro impulso di clock. Se all’arrivo del nuovo impulso di clock il valore logico dell’ingresso D era variato e posto pari a 0 (zero), allora tale valore sarà trasmesso all’uscita Q mentre all’uscita Q sarà trasmesso il valore logico 1. In sostanza non vi è oscillazione continua come avviene nell’oscillatore astabile. Il valore emesso in uscita è mantenuto fino all’arrivo di un nuovo impulso di clock.
Uno schema funzionale di un Flip-Flop D è fornito nella Figura B sopra riportata. Si tratta di un Flip-Flop D con effetto “latch”, deducibile dalle frecce disegnate nel segnale di clock. Sul fronte di salita del segnale di clock avviene la variazione o commutazione del segnale logico nelle linee di uscita Q e Q. Tale variazione viene mantenuta per tutta la durata del clock ma non viene realmente emessa in uscita. L’emissione in uscita avviene solo alla fine dell’impulso di sincronizzazione ovvero sul fronte discendente del segnale di clock. Il fronte discendente del clock chiude dietro di se ogni altra possibilità di cambiamento dei segnali di uscita (effetto “chiavistello”) e isola le uscite da qualsiasi nuovo segnale posto in ingresso.
Nel paragrafo successivo, LOGICA DEL PARADOSSO, mostrerò come trasformare un Flip-Flop di tipo D in un Flip-Flop TOGGLE.