Fondamenti di Informatica, 17 Settembre 2016
Non e' ammesso l'uso di alcun testo, appunti, calcolatrici, telefonini o
smartphone. Le risposte vanno scritte nel foglio di bella copia. Si
raccomanda la massima SINTETICITA'. L'eccessiva verbosita' verra'
considerata negativamente.
Occorre essersi prenotati sul portale studenti del nostro
ateneo. Se cio' non e' stato fatto, comunicarlo immediatamente
al docente o all'assistente in aula ed indicarlo chiaramente sull'elaborato che si consegna.
I risultati
verranno indicati nella pagina web del corso.
Date ed orari degli orali, sul Forum.
Esercizio 1
(a)
Definire i principi di Induzione, Induzione completa e Induzione ben fondata.
(b)
Dimostrare in deduzione naturale il seguente teorema
((A ∧ B) ∧ C) → (A ∧(B ∧ C))
(c)
Descrivere la relazione tra Induzione e Ricorsione.
Esercizio 2
(a)
Definire formalmente il codice in complemento a due per i numeri interi.
(b)
Fornire un esempio di codice a espansione con configurazione di espansione.
(c)
Siano X e Y numeri negativi.
Si dimostri che
codZc2(X - Y)
=
codZc2(X) (+) codZc2(-Y)
(Dove con "(+)" tra rappresentazioni intendiamo il normale algoritmo di somma cifra per cifra con riporto e risultato troncato a p cifre, mentre con '+' tra numeri intendiamo la funzione matematica binaria di addizione)
Esercizio 3
Discutere brevemente della semantica operazionale strutturata (SOS)
dei linguaggi di programmazione.