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.