Skip to main content
Logo
Logica dei Predicati
Overview

Logica dei Predicati

Valerio Di Tommaso Valerio Di Tommaso
18 February 2026
3 min read

Fin’ora avevamo visto come tradurre dalla lingua naturale alla formula logico-matematica, tuttavia adesso allarghiamo lo sguardo verso l’operazione opposta. Come fa una formula matematica, ad esser “decifrata” in linguaggio naturale?

Quantificatori e Predicati:

I Quantificatori:

Sono dei simboli che ci aiutano a dare un senso/significato alle incognite nelle formule matematiche:

SimboloCome si legge
x\forall x• “Per ogni…”
• “Tutti…”
• ”… Tutto”
• “Chiunque…”
x\exists x• “Esiste un…”
• “C’è almeno un…”
• “Qualche…”
• ”… qualcosa”

I Predicati:

Sono delle funzioni logiche che descrivono in base ad una proprietà o una relazione, una verità, quindi un fatto o una azione.

Esempi:

  • Studente(x)Studente(x) = ”xx è uno studente”.
  • Ama(x,y)Ama(x, y) = ”xx ama yy”.

Come si può notare, la “proprietà” di un predicato è intuibile nel nostro caso dal nome dello stesso.


L’Ordine dei Simboli:

In situazioni in cui si hanno più incognite (es: xx e yy), l’ordine in cui appaiono i Quantificatori può cambiare radicalmente il senso della frase.

Capiamolo con degli esempi con spiegazioni:

  • xy(Ama(x,y))\forall x \exists y(Ama(x,y))

    • Ordine: Prima “Tutti”, poi “Qualcuno”.
    • Traduzione: “Tutti amano qualcuno.”
    • Senso: Ognuno ha la sua anima gemella (magari diversa). Io amo Maria, tu ami Luca, egli ama Anna… Nessuno è solo.
  • xy(Ama(x,y))\exists x \forall y(Ama(x,y))

    • Ordine: Prima “Esiste uno”, poi “Tutti”.
    • Traduzione: “C’è qualcuno che ama tutti.”
    • Senso: C’è una persona specifica (tipo Madre Teresa) che ha un cuore così grande da amare l’umanità intera.
  • yx(Ama(x,y))\exists y \forall x(Ama(x,y))

    • Ordine: Prima “Esiste uno (che è amato)”, poi “Tutti (che amano)”.
    • Traduzione: “C’è qualcuno che è amato da tutti.”
    • Senso: C’è una persona super popolare (es. una rockstar) che tutti amano.

Pattern Ricorrenti:

Ecco una tabella con alcuni semplici Pattern che potrebbero ripetersi. Non è fondamentale conoscerla o memorizzarla, ma avere la consapevolezza dell’esistenza di possibili Pattern può sempre essere un’opportunità per aiutarci.

Struttura SimbolicaParole ChiaveEsempioTraduzione Italiana
x(A(x)B(x))\forall x (A(x) \rightarrow B(x))Tutti… sono…x(Uomo(x)Mortale(x))\forall x (Uomo(x) \rightarrow Mortale(x))”Tutti gli uomini sono mortali.”
x(A(x)¬B(x))\forall x (A(x) \rightarrow \neg B(x))

oppure

¬x(A(x)B(x))\neg \exists x (A(x) \wedge B(x)))
Nessuno… è…x(Uomo(x)¬Immortale(x))\forall x (Uomo(x) \rightarrow \neg Immortale(x))”Nessun uomo è immortale.”
x(A(x)B(x))\exists x (A(x) \wedge B(x))Alcuni… sono…x(Studente(x)Genio(x))\exists x (Studente(x) \wedge Genio(x))”Alcuni studenti sono geni.”



(o “C’è almeno uno studente genio”)
x(A(x)¬B(x))\exists x (A(x) \wedge \neg B(x))Alcuni… NON sono…x(Studente(x)¬Studia(x))\exists x (Studente(x) \wedge \neg Studia(x))”Alcuni studenti non studiano.”



(o “C’è uno studente che non studia”)

Esercizi con soluzioni:

  1. x(studente(x))\forall x(studente(x)) “Tutti sono studenti.”

  2. x(studente(x))\exists x(studente(x)) “Esiste uno studente.”

  3. x(studente(x)intelligente(x))\exists x(studente(x) ∧ intelligente(x)) “Uno studente è intelligente.”

  4. x(studente(x)y(studente(y)amico(x,y))\forall x(studente(x) → \exists y(studente(y) \wedge amico(x, y)) “Tutti gli studenti hanno almeno uno studente amico con loro.”

  5. x(studente(x)y((studente(y)xy)amico(x,y)))\exists x(studente(x) \wedge \forall y((studente(y) \wedge x \neq y) \rightarrow amico(x,y))) “Esiste uno studente che è amico di tutti gli altri studenti.”