pag. 1 ESEMPIO 1 ESEMPIO N. 1 DI PROVA SCRITTA (CORRETTA) Riportiamo un esempio di prova scritta in cui è già indicata la soluzione. Si consiglia di prelevare prima il testo (non corretto) della prova per tentare di risolverlo e poi confrontare le proprie risposte con quelle riportate qui. Il voto massimo se si risponde a tutte le domande è 28. Ad ogni risposta sbagliata viene tolto un punto (non conviene quindi dare una risposta a caso). Gli studenti immatricolati lo scorso anno devono svolgere solo le prime prove. Gli studenti del vecchio ordinamento e quelli che si sono immatricolati quest'anno sono tenuti a rispondere a tutte le domande. Dire quali delle seguenti frasi è una asserzione Non mi annoiare ! Oggi scadono i termini per pagare le tasse Risolvi l'equazione 3x+2=5 Ti piacerebbe andare a Roma ? → Ricordiamo che una asserzione è una espressione linguistica che può essere o vera o falsa. Infatti la prima frase è una esortazione, la terza un comando, la quarta una interrogazione. Dire quale delle seguenti asserzioni è una tautologia ¬p1 ∨ ¬p2 ¬¬p2 →p1 (p1 ∨¬p1 )→p1 (p1 ∧¬p2 )→(¬p2 ∧p1 ) → Naturalmente un modo sicuro per trovare la risposta consiste nel fare le tavole di verità di tutte le formule. Un modo più semplice è osservare che: - la prima formula non è una tautologia perché se p1 e p2 sono vere allora la formula è falsa - la seconda non è una tautologia perché è falsa per p2 vera e p1 falsa - la terza non è una tautologia perché è falsa se p1 è falsa - la quarta formula è una tautologia in quanto esprime la proprietà commutativa della congiunzione. L'asserzione "ho comprato un biglietto alla lotteria" - è necessaria per vincere - è sufficiente e necessaria per vincere - è sufficiente per non vincere - è sufficiente per vincere → Ricordiamo che se vale l'implicazione A→B diciamo anche che A è sufficiente per B, se vale l'implicazione B→A diciamo che A è necessaria per B. Se vale A↔ B allora diciamo che A è sufficiente e necessario per B. Infatti valesse la quarta o la seconda risposta tutti quelli che comprano un biglietto dovrebbero vincere. Se valesse la terza nessun compratore di biglietto vincerebbe. Dire quale delle seguenti formule è logicamente equivalente alla formula ¬(¬p1 ∨¬p2 ). p2 ∧p1 p2 ∨p1 ¬(p2 ∧¬p3 ) ¬p1 ∨p2 → Da notare che è possibile non scrivere le tavole di verità. Infatti basta applicare l'equivalenza logica ¬(A∨B) ≡ ¬ A∧¬ B e la legge della doppia negazione ¬(¬ X) ≡ X. pag. 2 ESEMPIO 1 Dire quale delle seguenti asserzioni è vera se 7 è un numero primo allora 6 è dispari se 2+3=5 allora 5 è pari se 2+3=6 allora 5 è dispari se 6 è pari allora l'Italia è una monarchia → Sappiamo che una formula del tipo A→B è falsa solo se A è vera e B è falsa. E' questo il caso della prima, seconda e quarta risposta. Invece poiché 2+3=6 è falsa, la terza implicazione è vera. Sia 10101 un numero scritto in base 2, dire quale delle seguenti è la sua rappresentazione in base 10 20 7 10 21 → 4 3 2 Infatti 10101=1⋅2 + 0⋅2 + 1⋅2 + 0⋅2 + 1 =16+4+1 = 21. Dire quali dei seguenti numeri, scritto in base 2, coincide con il numero 15 11010 11110 1110 1111 → Il problema è di scrivere 15 come somma di potenze di 2. Si applica il metodo delle divisioni successive per 2. Si prende il numero 15 e lo si divide per 2, si ottiene 7 con il resto di 1, cioè 15 = 2⋅7+1 = . Si prende 7 e lo si divide per 2 ottenendo 7 = 2⋅3+1 e quindi 15 = 2(2⋅3+1). Si prende 3 e si divide per due ottenendo 3= 2⋅1+1. In conclusione 15 = 2(2(2⋅1+1)+1)+1 = 2(22 +2+1) +1= 23 +22 +2+1 e quindi la risposta corretta è 1111. Quale è la somma di 1011 e di 111 ? 10111 10000 11000 10010 → Trovare una formula avente come tavola di verità la seguente tavola: p1 1 1 0 0 p2 1 0 1 0 0 0 1 1 La risposta è (¬p1 ∧p2 )∨(¬p1 ∧¬p2 ). Infatti applicando il teorema di completezza funzionale ci possiamo riferire alle due ultime righe della tavola di verità dove compare 1. Alla terza riga corrisponde (¬p1 ∧p2 ), alla quarta (¬p1 ∧¬p2 ). pag. 3 ESEMPIO 1 Disegnare inoltre un circuito elettrico ed una rete di porte logiche corrispondente. Risposta: ¬p1 p2 ¬ p1 ¬p2 p1 p2 Costruire un tableau per la formula segnata F (p2 ∧¬p1 )∨(¬p2 ∨p1 ) risposta (nel compito non devono essere messi i commenti) F (p2 ∧¬p1 )∨(¬p2 ∨p1 ) (se è falsa (p2 ∧¬p1 )∨(¬p2 ∨p1 ) allora F p2 ∧¬p1 è falsa p2 ∧¬p1 ed F ¬p2 ∨p1 è falsa (¬p2 ∨p1 ) ma dalla falsità di p2 ∧¬p1 si ricava che F p2 F ¬p1 o è falsa p2 oppure è falsa ¬p1 mentre dalla falsità di p2 ∧¬p1 si ricava che, F ¬p2 F ¬p2 è falsa ¬p2 (sia nel primo caso che nel secondo) ed F p1 F p1 è falsa p1 mentre nel primo caso (rispettivamente nel secondo) V p2 Vp1 la falsità di ¬p2 comporta la verità di p2 (la falsità di ¬p1 comporta la verità di p1 ) × × Il tableau è chiuso e quindi la formula (p2 ∧¬p1 )∨(¬p2 ∨p1 ) è una tautologia. Si consideri la grammatica il cui alfabeto è costituito da {$,a} il cui start-symbol è s e le cui regole di produzione sono s → asa, s →a, a→a$ . Dire quali delle seguenti parole possono essere prodotte da tale grammatica …. $$$$$$ $$a$$ $$$aa $$$$$ aaaaa → Infatti se guardiamo le parole che sono a destra di una regola di produzione ci accorgiamo che cominciano con a. Ciò esclude le prime quattro risposte. D'altra parte la sequenza s , asa, aasaa, aaaaa costituisce una derivazione della parola aaaaa Segnare tutte le formule in cui la variabile x occorre libera .. (x≥3)∨∀y[∃x(y+2x≥y)], ∃x[∃z(z+x≥y)] (∃x(x≥3)) → ∃z[∃y(y+6x≤3y)]. ∃y∃x(y+x≥y), [∃x(x3 +3x≥y)]∧(x=x) → → → pag. 4 ESEMPIO 1 Da notare che si dice che x occorre libera in una formula se in almeno in un punto della formula non cade sotto il raggio d'azione di un quantificatore. Ad esempio nella prima formula la variabile x compare sia libera che vincolata. La presenza di una variabile libera determina il fatto che non è possibile stabilire se la formula è vera o falsa se non dopo avere assegnato un valore alla variabile. Dire quale delle seguenti formule rappresenta l'asserzione "l'equazione 3x2 -1=3 ammette sia una soluzione positiva che una soluzione negativa ". [∃y(3y2 -1 = 3)]∧(y>0)∧(y<0) [∃y((3y2 -1 = 3)∧y>0)]∧[∃y((y2 -1 = 3)∧y<0)] → 2 [∃z(3z -1 = 3)] →[∀x(x>0∧x<0)] ∃x[(3x2 -1 = 3)∧(x>0)∧(x<0)] ∀x[(3x2 -1 = 3)∧(x>0)∧(x<0)] La prima non va bene perché la y (vincolata) nella formula [∃y(3y2 -1 = 3)] non ha niente a che fare con la y (libera) nel resto della formula (y>0)∧(y<0). Basti pensare che cambiando la variabile in ∃y(3y2 -1 = 3) si ottiene la formula [∃z(3z2 -1 = 3)]∧(y>0)∧(y<0) che è equivalente a [∃y(3y2 -1 = 3)]∧(y>0)∧(y<0). La terza non va bene perché dice che se l'equazione 3z2 -1 = 3 ammette soluzione allora tutti i numeri sono sia positivi che negativi. La quarta formula non va bene perché asserisce che esiste una soluzione che è allo stesso tempo positiva e negativa. Invece noi ci riferiamo a due soluzioni diverse. La quinta dice che un qualunque numero x è soluzione dell'equazione ed è allo stesso tempo positivo e negativo. Dire quale delle seguenti formule rappresenta l'asserzione "il sistema di equazioni x-2y = 3x x - 2y = 3x+1 non ammette soluzioni". [∃x∃y(¬(x-2y = 3x))]∧[∃x∃y¬(x-2y = 3x+1)] ∀a∀b[¬(a-2b = 3a+1)∨¬(a-2b = 3a)] [∀x∀y¬(x-2y = x)]∧[∀x∀y¬(x-2y = x+1)] ∃x∃y[(x-2y = 3x)∧(x-2y = 3x+1)] [∃x∃y (x-2y = 3x+1)]∧[∃x∃y(x-2y = 3x)] → Infatti possiamo tradurre la frase in "non esistono x ed y tali che x-2y=3x e x-2y=3x+1" e quindi ¬∃x∃y((x-2y=3x)∧(x-2y=3x+1)). Spingendo all'interno ¬, otteniamo ∀x∀y¬((x-2y=3x)∧(x-2y=3x+1)) e quindi ∀x∀y(¬ (x-2y=3x)∨¬(x-2y=3x+1)). Ponendo a e b al posto di x ed y si ottiene la seconda formula. Da notare che la prima formula dice che esiste una coppia di numeri che non risolvono la prima equazione ed una coppia di numeri che non risolvono la seconda. La terza dice che nessuna coppia di numeri risolve la prima equazione e nessuna coppia di numeri risolve la seconda. La quarta formula dice che esiste una soluzione del sistema. L'ultima che esiste sia una soluzione della prima che della seconda (ma non necessariamente una stessa soluzione per entrambe). Dire quale delle seguenti formule traduce la frase " la somma di due numeri primi non è un numero primo" ∃m∀n¬[(Primo(n)∧Primo(m))→Primo(n+m)] ∀p∀q[(Primo(p)∧Primo(q))→ ¬Primo(p+q)] → ∀c∀d¬[(Primo(c)∧Primo(d))→Primo(c+d)] ∀n∃m[(Primo(n)∧Primo(m))→Primo(n+m)] ∃a∀b[(Primo(a)∧Primo(b))→¬Primo(a+b)] Infatti che si parla di due numeri primi qualunque e che quindi la formula deve essere universale. pag. 5 ESEMPIO 1 Dire quali delle seguenti affermazioni sono vere . ∀z∃y(z2 ≥y) è logicamente equivalente a ∃x∀y(x2 ≥y) ∀a∃y(a+y≥0) è logicamente equivalente a ¬[∃y∀x¬(y+x≥0)] [∀x(x≥0)]→[∃y(y2 ≥x)] è logicamente equivalente a [∃y(y2 ≥x)]→[¬∀x(x≥0)] ∀x(x≥0→∃y(y2 ≥x)) è logicamente equivalente a ∀a∃b[a≥0→b2 ≥a] ∀x[x≥0→∃y(y2 ≥x)] è logicamente equivalente a ∀x[(∀y¬(y2 ≥ x))→¬(x≥0)] → → → Per la risposta due osserviamo che se nella formula ¬[∃y∀x¬(y+x≥0)] si spinge avanti la negazione si ottiene ∀y∃x¬¬(y+x≥0) e quindi per la lege di doppia negazione si ottiene ∀z∃y(z2 ≥y). Per la risposta quattro si osservi che spingendo fuori ∃y nella sottoformula (x≥0→∃y(y2 ≥x)) si ottiene ∃y(x≥0→(y2 ≥x)) e quindi che ∀x(x≥0→∃y(y2 ≥x)) è logicamente equivalente a ∀x∃y(x≥0→(y2 ≥x)). Basta poi porre a al posto di x e b al posto di y. Ridurre la formula ¬[¬p 3 ∨((¬p 2 ∨p 3 )∧¬p 2 )] in forma normale disgiuntiva utilizzando un opportuno sistema di riscrittura (scrivere tutti i passi della derivazione) risposta p 3 ∧¬[(¬p 2 ∨p 3 )∧¬p 2 ] (per l'equivalenza ¬(A∨B) ≡ ¬ A∧¬ B e la legge di doppia negazione) p 3 ∧[¬(¬p 2 ∨p 3 )∨p 2 ] (per l'equivalenza ¬(A∧B) ≡ ¬ A∨¬ B ) e la legge di doppia negazione) p 3 ∧[(p 2 ∧¬p 3 )∨p 2 ] (per l'equivalenza ¬(A∨B) ≡ ¬ A∧¬ B e la legge di doppia negazione) [p 3 ∧(p 2 ∧¬p 3 )]∨[p 3 ∧p 2 ] (per la proprietà distributiva di ∧ rispetto ad ∨ [p 3 ∧p 2 ∧¬p 3 ]∨[p 3 ∧p 2 ] (per la proprietà associativa di ∧) Solo vecchio ordinamento e studenti immatricolati quest'anno: Consideriamo la relazione R definita nell'insieme delle parole della lingua italiana da: R = {(x,y) : x o coincide con y oppure è un anagramma di y}. Segnare le asserzioni vere R è riflessiva SI NO R è totale SI NO Infatti, ad esempio, "cane" non è anagramma di "gatto" e "gatto" non è anagramma di "cane", R è transitiva SI NO Nome antonio carlo luisa carlo maria calcolare la relazione Rë R risposta Nome maria mario mario → → Supponiamo che la relazione R "essere genitore" sia rappresentata dalla seguente tabella Nome luisa luigi maria maria mario → Nome antonio luisa carlo pag. 6 ESEMPIO 1 Si consideri il programma padre(luigi, mario). abita(luigi,Roma). abita(maria,Salerno). abita(mario,Potenza). stessacasa(luigi, maria). abita(X,N) :- stessacasa(X,Y), abita(Y,N). stessacasa(X,Y) :- padre(X,Y). stessacasa(X,Y) :- stessacasa(Y,X). Calcolare il minimo modello di Herbrand di tale programma, cioè gli elementi della successione T(∅), T2 (∅), . . . Risposta: T(∅) = {abita(maria,Salerno), abita(luigi,Roma), abita(mario,Potenza), stessacasa(luigi,maria), padre(luigi,mario)}. T2 (∅) = T(∅)∪{abita(luigi,Salerno), stessacasa(luigi,mario), stessacasa(maria,luigi)} T3 (∅) = T2 (∅)∪{abita(luigi,Potenza), abita(maria,Roma), stessacasa(mario,luigi)} T4 (∅) = T3 (∅) pertano T3 (∅) è il minimo punto fisso di T ed è quindi il modello minimo di Herbrand.