Ripasso di teoria ed esercizi in preparazione al secondo compito.??? Dicembre 2004
|
|
- Rossana Fiori
- 8 anni fa
- Visualizzazioni
Transcript
1 Ripasso di teoria ed esercizi in preparazione al secondo compito??? Dicembre 2004
2 Teoria: domande tipiche da compitino 1. Manipolazione delle strutture sintattiche: quali sono i predicati per la manipolazione delle strutture sintattiche che Prolog fornisce? Tali predicati sono tutti necessari, o è possibile definire ciascuno di essi in funzione dei restanti predicati? 2. Predicati metalogici in Prolog: quali sono i predicati metalogici che Prolog fornisce? Per quale ragione i predicati metalogici hanno questo nome? Come funzionano tali predicati? 3. Cut: Come funziona il predicato cut? Che differenza c è tra cut verdi e cut rossi? In che modo la posizione del cut nel
3 body di una clausola influenza l esecuzione del body stesso? Come si può usare il cut per implementare la negazione come fallimento? Come lo si può utilizzare per implementare il costrutto if then else? Che relazione c è tra cut verdi e determinismo? 4. Predicati extralogici: quali sono i predicati extralogici che Prolog fornisce? Per quale ragione i predicati extralogici hanno questo nome? Come funzionano tali predicati? Elencare alcune valide ragioni per usare i predicati extra-logici. Elencare alcune valide ragioni per NON usare i predicati extra-logici. Illustrare la tecnica di generazione dei lemmi. 5. Programmazione al second ordine: quali sono i predicati per programmazione al second ordine che Prolog fornisce? Per
4 quale ragione si parla di programmazione al second ordine? Come funzionano tali predicati? Come si può usare il predicato set of per implementare un predicato senza doppi(l1, L2) che unifica L2 con la lista L1 privata di tutti i doppioni (suggerimento: è sufficiente una sola clausola e deve essere utilizzato il predicato member per la verifica di appartenenza di un elemento ad una lista)? 6. Agenti: Cosa è un agente secondo la definizione debole? Cosa è un agente secondo la definizione forte? Quali campi di ricerca hanno influito sulla nascita del paradigma ad agenti, ed in che modo? Quali sono i problemi intrinseci del planning? Per quali ragioni Brooks ha deciso di implementare robot intelligenti applicando tecniche diverse
5 da quelle simboliche tipicamente usate nel planning? Quali sono le differenze tra un agente ed un oggetto? Quali sono le differenze tra un agente ed un sistema esperto? Quali sono le differenze tra un agente ed una interfaccia che implementa la tecnica della manipolazione diretta? Descrivere un interruttore come un agente dotato di volontà, desideri, capacità, credenze, intenzioni, ecc. Una tale descrizione sarebbe legittima? Sarebbe utile? Cosa è una architettura per agenti? Quante tipologie di architetture per agenti esistono? In cosa differiscono queste tipologie di architetture? Cosa è un MAS e quali sono le sue principali caratteristiche? In quali campi possono essere (o sono stati) utilizzati i MAS? Illustrare una applicazione di agenti o MAS. 7. Linguaggi basati sulla logica per modellare agenti: Discutere quali caratteristiche della programmazione logica la rendono
6 adatta a implementare prototipi di agenti e sistemi multiagente. Descrivere le principali caratteristiche di un linguaggio a propria scelta per modellare agenti.
7 Esercizi: preparazione al compitino 1. Manipolazione delle strutture sintattiche, predicati metalogici: Definire il predicato my univ(term, List) che si comporta esattamente come il predicato built-in =.. di Prolog. La definizione di my univ deve includere solo arg e functor. Costruire l albero SLD con regola di selezione leftmost per il programma dato e per il goal my univ(f(a, b, c(h)), [Z, a, b, c(v)]). 2. Cut: Definire un predicato Prolog count unifying terms(t, L, Res) che dati una lista L non necessariamente ground ed un termine T non necessariamente ground, restituisce il numero di elementi della lista L che unificano con T.
8 3. Cut, predicati extralogici: implementare un predicato Prolog consult(file) che apre un file e legge tutte le clausole presenti in esso asserendole in memoria. 4. Cut, predicati extralogici: implementare un predicato asserisci(t) tale che la clausola T venga aggiunta alla base di conoscenza al momento della valutazione di asserisci(t); la clausola T viene rimossa nel momento in cui si effettua backtracking su asserisci(t) (che comunque fallisce in fase di backtracking). 5. Cut, predicati extralogici: Implementare un predicato rimuovi(t) tale che la clausola T venga rimossa dalla base di conoscenza al momento della valutazione di rimuovi(t); la clausola T
9 viene riasserita nel momento in cui si effettua backtracking su rimuovi(t) (che comunque fallisce in fase di backtracking). 6. Programmazione al second ordine: Implementare una variante di bag of, my findall(x, Goal, Instances), tale che Instances è il multinsieme delle istanze di X per cui Goal è vero. 7. Programmazione al second ordine: Implementare un predicato ch(x, Cs) che colleziona nella lista Cs gli elementi S tali che l atomo father(x, S) è incluso nella base di conoscenza del programma (si tratta in pratica di una set of specializzata per il predicato father). Si utilizzino per l implementazione due tecniche diverse: chiamata ricorsiva del predicato ch e failure-driven loop.
10 Teoria: osservazioni sul cut Per capire in che modo funziona il cut, e quali sono le conseguenze di cambiare la sua posizione all interno del body di una clausola, si consideri il seguente esempio: not1(x) :- X,!, fail. not1(x). not2(x) :-!, X, fail. not2(x). not3(x) :- X, fail,!. not3(x).
11 Soluzione es. 1 Definire il predicato my univ(term, List) che si comporta esattamente come il predicato built-in =.. di Prolog. La definizione di my univ deve includere solo arg e functor. :- use_module(library(lists)). my_univ(term, List):- var(list), var(term),!, fail. % Se entrambi gli argomenti sono variabili, la chiamata % fallisce.
12 my_univ(term, List):- var(list), % Se la lista e variabile, Term deve essere % istanziato. % In questo caso my_univ e usato per costruire % la lista.!, functor(term, F, Arity), list_of_arguments(term, Arity, Args), append([f], Args, List). my_univ(term, [F Args]):- % Utilizzo questa regola solo se la lista e % istanziata.
13 % my_univ e usato per costruire il termine (nel caso % in cui Term sia variabile) o per verificare che % la lista List (istanziata) sia l appiattimento del % termine Term (istanziato). length([f Args], Length), Arity is Length - 1, functor(term, F, Arity), list_of_arguments(term, Arity, Args). list_of_arguments(term, 1, [Arg1]) :-!, arg(1, Term, Arg1). list_of_arguments(term, Pos, Args) :-
14 arg(pos, Term, ArgPos), NewPos is Pos - 1, list_of_arguments(term, NewPos, NewArgs), append(newargs, [ArgPos], Args).
15 Soluzione es. 2 Definire un predicato Prolog count unifying terms(t, L, Res) che dati una lista L non necessariamente ground ed un termine T non necessariamente ground, restituisce il numero di elementi della lista L che unificano con T. count_unifying_terms1(term, List, NUMBER) :- aux_count_unifying_terms1(term, List, NUMBER,0). aux_count_unifying_terms1(term, [], NUMBER, NUMBER).
16 aux_count_unifying_terms1(term, [Term Tail], NUMBER, AUX_NUMBER):-!, NEW_AUX_NUMBER is AUX_NUMBER + 1, aux_count_unifying_terms1(term, Tail, NUMBER, NEW_AUX_NUMBER). aux_count_unifying_terms1(term, [Head Tail], NUMBER, AUX_NUMBER):- aux_count_unifying_terms1(term, Tail, NUMBER, AUX_NUMBER).
17 Soluzione es. 2 (versione corretta!) Ci sono dei problemi con count unifying terms1? Sì! La soluzione corretta è: count_unifying_terms(term, List, NUMBER) :- aux_count_unifying_terms(term, List, NUMBER,0). aux_count_unifying_terms(term, [], NUMBER, NUMBER). aux_count_unifying_terms(term, [Head Tail], NUMBER, AUX_NUMBER):-
18 not_unifies(term, Head),!, aux_count_unifying_terms(term, Tail, NUMBER, AUX_NUMBER). aux_count_unifying_terms(term, [Head Tail], NUMBER, AUX_NUMBER):- NEW_AUX_NUMBER is AUX_NUMBER + 1, aux_count_unifying_terms(term, Tail, NUMBER, NEW_AUX_NUMBER). not_unifies(term, Term) :-!, fail. not_unifies(term1, Term2).
19 Soluzione es. 3 Implementare un predicato Prolog consult(file) che apre un file e legge tutte le clausole presenti in esso asserendole in memoria. Soluzione con failure-driven loop : consult(file):- see(file), consult_loop, seen. consult_loop :- repeat, read(clause), process(clause),!. process(x) :- end_of_file(x),!. process(clause) :- assert(clause), fail. repeat. repeat :- repeat.
20 Soluzione es. 4 Implementare un predicato asserisci(t) tale che la clausola T venga aggiunta alla base di conoscenza al momento della valutazione di asserisci(t); la clausola T viene rimossa nel momento in cui si effettua backtracking su asserisci(t) (che comunque fallisce in fase di backtracking). asserisci(t) :- assert(t). asserisci(t) :- retract(t),!, fail.
21 Soluzione es. 5 Implementare un predicato rimuovi(t) tale che la clausola T venga rimossa dalla base di conoscenza al momento della valutazione di rimuovi(t); la clausola T viene riasserita nel momento in cui si effettua backtracking su rimuovi(t) (che comunque fallisce in fase di backtracking). rimuovi1(t) :- retract(t). rimuovi1(t) :- assert(t),!, fail.
22 Soluzione es. 5 (versione corretta!) Ci sono dei problemi con rimuovi1? Sì! Si consideri la base di conoscenza costituita da a(1) ed il goal?- rimuovi(a(x)), fail. La soluzione corretta è: rimuovi(t) :- retract(t), aux(t). e aux(t). aux(t) :- assert(t),!, fail.
23 Soluzione es. 6 Implementare una variante di bag of: my findall(x, Goal, Instances) tale che Instances è il multinsieme delle istanze di X per cui Goal è vero. :- dynamic instance/1. my_findall(x, Goal, _) :- asserta(instance(mark)), Goal, asserta(instance(x)), fail. my_findall(x, _, Ins) :- retract(instance(x)), reap(x, Ins). reap(x, [X Ins]) :-
24 X \== mark, retract(instance(x1)), reap(x1, Ins). reap(mark, []).
25 Soluzione es. 7 Implementare un predicato ch(x, Cs) che colleziona nella lista Cs gli elementi S tali che l atomo father(x, S) è incluso nella base di conoscenza del programma (si tratta in pratica di una setof specializzata per il predicato father). Si utilizzino per l implementazione due tecniche diverse: chiamata ricorsiva del predicato ch e failure-driven loop (si veda l implementazione di ch2). :- dynamic instance/1. ch(x, Cs) :- father(x, S), not(clause(instance(s), true)),!, asserta(instance(s)),
26 ch(x, Cs). ch(_, Cs) :- collect_all_instances([],cs). ch2(x, _) :- father(x, S), asserta(instance(s)), fail. ch2(_, Cs) :- collect_all_instances([],cs). collect_all_instances(acc, Cs) :- retract(instance(s)),!, collect_all_instances([s Acc], Cs). collect_all_instances(cs, Cs).
27 not(x) :- X,!, fail. not(_).
28 Suggerimenti per esercizi da svolgere a casa 1. Definire un predicato ground(term) che ha successo se Term è ground. 2. Definire, utilizzando opportunamente il predicato cut, un predicato merge(l1, L2, L) che, date due liste ordinate di numeri (L1 ed L2) costruisce la lista ordinata che contiene tutti e soli gli elementi di entrambe le liste (L). 3. Si utilizzi la tecnica di generazione dei lemmi per rendere efficiente il programma per il calcolo dei numeri di Fibonacci descritto sotto:
29 fib(0, 0). fib(1, 1). fib(n, Y) :- N>1, N1 is N-1, fib(n1, Y1), N2 is N-2, fib(n2, Y2), Y is Y1 + Y2. 4. Si scarichino i testi dei compiti degli anni passati dalla pagina della didattica di Viviana Mascardi e si provi a svolgerli (per alcuni ci sono anche le soluzioni in rete)
Universita' degli Studi di Udine UNA PROPOSTA PER L'INTRODUZIONE DI CAPACITA' DI META-RAPPRESENTAZIONE IN UN LINGUAGGIO DI PROGRAMMAZIONE LOGICA
Universita' degli Studi di Udine FACOLTA' DI SCIENZE MATEMATICHE FISICHE E NATURALI UNA PROPOSTA PER L'INTRODUZIONE DI CAPACITA' DI META-RAPPRESENTAZIONE IN UN LINGUAGGIO DI PROGRAMMAZIONE LOGICA Relatore:
DettagliAA 2006-07 LA RICORSIONE
PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella
DettagliEsempi di domande ed esercizi assegnati nei compiti degli anni precedenti
Esempi di domande ed esercizi assegnati nei compiti degli anni precedenti Domande 1. Dato un insieme di simboli di funzione F, un insieme di simboli di predicato P ed un insieme di variabili V, spiegare
DettagliLezione 4 Le code. Informatica. 26 Aprile 2016. Le pizze devono essere preparate e consegnate seguendo l ordine di arrivo degli ordini
Lezione 4 Le code Informatica 26 Aprile 2016 Bender il pizzaiolo robot Bender ha aperto una pizzeria da asporto con i suoi amici: Dr. Zoidberg risponde al telefono e riceve gli ordini Bender prepara le
DettagliRISOLUTORE AUTOMATICO PER SUDOKU
RISOLUTORE AUTOMATICO PER SUDOKU Progetto Prolog - Pierluigi Tresoldi 609618 INDICE 1.STORIA DEL SUDOKU 2.REGOLE DEL GIOCO 3.PROGRAMMAZIONE CON VINCOLI 4.COMANDI DEL PROGRAMMA 5.ESEMPI 1. STORIA DEL SUDOKU
DettagliFondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI!
Fondamenti di Informatica Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Finalità: Fornire gli elementi di base dei concetti che sono di fondamento all'informatica Informazioni Pratiche ORARIO:
DettagliRicorsione. (da lucidi di Marco Benedetti)
Ricorsione (da lucidi di Marco Benedetti) Funzioni ricorsive Dal punto di vista sintattico, siamo in presenza di una funzione ricorsiva quando all interno della definizione di una funzione compaiono una
DettagliSommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.
Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell
DettagliEVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO
EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO Linguaggi di programmazione classificati in base alle loro caratteristiche fondamentali. Linguaggio macchina, binario e fortemente legato all architettura. Linguaggi
DettagliCorso di Informatica
Corso di Informatica Modulo T2 3-Compilatori e interpreti 1 Prerequisiti Principi di programmazione Utilizzo di un compilatore 2 1 Introduzione Una volta progettato un algoritmo codificato in un linguaggio
DettagliTipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:
Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante
DettagliLezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
DettagliALGEBRA DELLE PROPOSIZIONI
Università di Salerno Fondamenti di Informatica Corso di Laurea Ingegneria Corso B Docente: Ing. Giovanni Secondulfo Anno Accademico 2010-2011 ALGEBRA DELLE PROPOSIZIONI Fondamenti di Informatica Algebra
DettagliAlgoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.
Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito
DettagliProva di Laboratorio di Programmazione
Prova di Laboratorio di Programmazione 6 febbraio 015 ATTENZIONE: Non è possibile usare le classi del package prog.io del libro di testo. Oltre ai metodi richiesti in ciascuna classe, è opportuno implementare
Dettaglicome nasce una ricerca
PSICOLOGIA SOCIALE lez. 2 RICERCA SCIENTIFICA O SENSO COMUNE? Paola Magnano paola.magnano@unikore.it ricevimento: martedì ore 10-11 c/o Studio 16, piano -1 PSICOLOGIA SOCIALE COME SCIENZA EMPIRICA le sue
Dettagli(anno accademico 2008-09)
Calcolo relazionale Prof Alberto Belussi Prof. Alberto Belussi (anno accademico 2008-09) Calcolo relazionale E un linguaggio di interrogazione o e dichiarativo: at specifica le proprietà del risultato
DettagliCONCETTO DI ANNIDAMENTO
LEZIONE14 SQL ANNIDAMENTI PAG. 1 / 5 PROF. ANDREA ZOCCHEDDU LEZIONE14 SQL ANNIDAMENTI CONCETTO DI ANNIDAMENTO LINGUAGGIO SQL QUERY ANNIDATE Per annidamento si intende la possibilità che, all interno di
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliRegione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da
ARPA Fonte Dati Regione Toscana Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.0 Data emissione 06/08/13 Stato DRAFT 1 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 2 Sommario
DettagliSoluzione dell esercizio del 12 Febbraio 2004
Soluzione dell esercizio del 12/2/2004 1 Soluzione dell esercizio del 12 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. 2. Modello concettuale
DettagliBASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015
BASE DI DATI: introduzione Informatica 5BSA Febbraio 2015 Di cosa parleremo? Base di dati relazionali, modelli e linguaggi: verranno presentate le caratteristiche fondamentali della basi di dati. In particolare
DettagliFunzioni in C. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni
DettagliAlgebra Di Boole. Definiamo ora che esiste un segnale avente valore opposto di quello assunto dalla variabile X.
Algebra Di Boole L algebra di Boole è un ramo della matematica basato sul calcolo logico a due valori di verità (vero, falso). Con alcune leggi particolari consente di operare su proposizioni allo stesso
DettagliAlgebra di Boole ed Elementi di Logica
Algebra di Boole ed Elementi di Logica 53 Cenni all algebra di Boole L algebra di Boole (inventata da G. Boole, britannico, seconda metà 8), o algebra della logica, si basa su operazioni logiche Le operazioni
DettagliProlog: aritmetica e ricorsione
Capitolo 13 Prolog: aritmetica e ricorsione Slide: Aritmetica e ricorsione 13.1 Operatori aritmetici In logica non vi è alcun meccanismo per la valutazione di funzioni, che è fondamentale in un linguaggio
DettagliProgettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo
DettagliCorso di Informatica
Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down
DettagliUso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012
Fondamenti di informatica Oggetti e Java ottobre 2012 1 JUnit JUnit è uno strumento per assistere il programmatore Java nel testing JUnit consente di scrivere test di oggetti e classi Java i test sono
Dettagli12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)
12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,
DettagliI database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:
Il modello relazionale I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due: 1. forniscono sistemi semplici ed efficienti per rappresentare
DettagliS::= Aa bb bc A::= 1B 0 B::= 0A 1 C::= Cc d Si scriva un riconoscitore in Prolog del linguaggio generato da G. Suggerimento: si elimini la ricorsione
COMPITO DI LINGUAGGI SIMBOLICI DOCENTE MICHELA MILANO - 11 GENNAIO 2001 Esercizio 1 Si scriva un metaprogramma Prolog che lavori su un programma Prolog P ricevendo in ingresso da utente una lista La di
DettagliGESTIONE della BASE di DATI
GESTIONE della SE di DTI I dati sono una componente fondamentale di un GIS Devono essere valutati con attenzione gli strumenti usati per: creare l archivio dei dati manipolare le informazioni contenute
DettagliSistemi Informativi e Basi di Dati
Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli
DettagliTraccia di soluzione dell esercizio del 25/1/2005
Traccia di soluzione dell esercizio del 25/1/2005 1 Casi d uso I casi d uso sono in Figura 1. Ci sono solo due attori: il Capo officina e il generico Meccanico. Figura 1: Diagramma dei casi d uso. 2 Modello
DettagliCorso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP
Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Web PHP Tematiche Trattate
DettagliMatematica in laboratorio
Unità 1 Attività guidate Attività 1 Foglio elettronico Divisibilità tra numeri naturali Costruisci un foglio di lavoro per determinare se a è divisibile per b, essendo a e b due numeri naturali, con a
DettagliGESTIONE DEI PROCESSI
Sistemi Operativi GESTIONE DEI PROCESSI Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in Java Concetto
DettagliDispensa di Informatica I.1
IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.
DettagliSoluzione dell esercizio del 2 Febbraio 2004
Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo
DettagliINFORMATICA 1 L. Mezzalira
INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello
DettagliIntroduzione alla programmazione in C
Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale
DettagliAutomazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it
Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione
DettagliAXO Architettura dei Calcolatori e Sistema Operativo. processo di assemblaggio
AXO Architettura dei Calcolatori e Sistema Operativo processo di assemblaggio linguaggio assembly è il linguaggio simbolico che consente di programmare un calcolatore utilizzando le istruzioni del linguaggio
DettagliSommario. Introduzione 1
Sommario Introduzione 1 1 Il Telecontrollo 1.1 Introduzione... 4 1.2 Prestazioni di un sistema di Telecontrollo... 8 1.3 I mercati di riferimento... 10 1.3.1 Il Telecontrollo nella gestione dei processi
DettagliPiano di gestione della qualità
Piano di gestione della qualità Pianificazione della qualità Politica ed obiettivi della qualità Riferimento ad un eventuale modello di qualità adottato Controllo della qualità Procedure di controllo.
DettagliTrasformazione in clausole
DEPARTMENT OF INFORMATION ENGINEERING UNIVERSITY OF PADOVACorso Principio di A.A. Intelligenza di 2005-2006 Risoluzione Artificiale ing. Marco Falda marco.falda@unipd.it atomi letterali) Una A1 A2 L An
DettagliStrutturazione logica dei dati: i file
Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer
DettagliSOMMARIO Coda (queue): QUEUE. QUEUE : specifica QUEUE
SOMMARIO Coda (queue): Specifica: interfaccia. Implementazione: Strutture indicizzate (array): Array di dimensione variabile. Array circolari. Strutture collegate (nodi). Prestazioni. Strutture Software
Dettaglix u v(p(x, fx) q(u, v)), e poi
0.1. Skolemizzazione. Ogni enunciato F (o insieme di enunciati Γ) è equisoddisfacibile ad un enunciato universale (o insieme di enunciati universali) in un linguaggio estensione del linguaggio di F (di
DettagliLa prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete
La prima applicazione Java Programma MyFirstApplication Il programma visualizza una finestra vuota sullo schermo. Importo il package delle classi usate nel seguito. Dichiaro la classe MyFirstApplication
DettagliCOS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle
DettagliAlgebra di Boole. Le operazioni, nell algebra booleana sono basate su questi tre operatori: AND ( ), OR ( + ),NOT ( )
Algebra di Boole L algebra di Boole prende il nome da George Boole, matematico inglese (1815-1864), che pubblicò un libro nel 1854, nel quale vennero formulati i principi dell'algebra oggi conosciuta sotto
DettagliAnalizzatore lessicale o scanner
Analizzatore lessicale o scanner Lo scanner rappresenta un'interfaccia fra il programma sorgente e l'analizzatore sintattico o parser. Lo scanner, attraverso un esame carattere per carattere dell'ingresso,
DettagliCapitolo 4 Probabilità
Levine, Krehbiel, Berenson Statistica II ed. 2006 Apogeo Capitolo 4 Probabilità Insegnamento: Statistica Corso di Laurea Triennale in Economia Facoltà di Economia, Università di Ferrara Docenti: Dott.
DettagliFONDAMENTI DI INTELLIGENZA ARTIFICIALE 1 parte (6 CFU) 12 Luglio 2012 Tempo a disposizione: 2 h Risultato: 32/32 punti
FONDAMENTI DI INTELLIGENZA ARTIFICIALE 1 parte (6 CFU) 12 Luglio 2012 Tempo a disposizione: 2 h Risultato: 32/32 punti Esercizio 1 (7 punti) Si formalizzi in logica dei predicati del primo ordine la seguente
DettagliCAPITOLO 7 - SCAMBIO DI MESSAGGI
CAPITOLO 7 - SCAMBIO DI MESSAGGI Lo scambio di messaggi è una forma di comunicazione nel quale un processo richiede al sistema operativo di mandare dei dati direttamente ad un altro processo. In alcuni
DettagliRECLAMO ANNO. Data di invio Firma Il reclamo risulta: privo di riscontro Il Responsabile del processo: Il Dirigente Scolastico
RECLAMO N. ANNO Il sottoscritto:..residente a:.... Prov.. in Via. Tel.: genitore dell alunno: frequentante per l anno scolastico: la classe:.. sezione insegnante della classe:. personale ATA COMUNICA CHE
DettagliIntroduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6
Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,
DettagliAncora su diagnosi. Lezione 9 giugno. Conoscenza incompleta e senso comune. Frameworks per il ragionamento basato su assunzioni
Ancora su diagnosi Lezione 9 giugno Ancora su diagnosi Conoscenza incompleta, senso comune e ragionamento basato su assunzioni Cenni su pianificazione Abbiamo accennato alla diagnosi di guasti. Occorre
DettagliProgrammi e Oggetti Software
Corso di Laurea Ingegneria Civile Elementi di Informatica Programmi e Oggetti Software Settembre 2006 Programmi e Oggetti Software 1 Contenuti Cosa è un programma Cosa significa programmare Il punto di
DettagliSistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliMECCANISMI E POLITICHE DI PROTEZIONE 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
Dettaglida 2 a 5 giocatori, dai 10 anni in su, durata 30 minuti
da 2 a 5 giocatori, dai 10 anni in su, durata 30 minuti OBIETTIVO Il vincitore è colui che, dopo due round di gioco, delle sue 11 ordinazioni, ne ha consegnate il maggior numero. CONTENUTO DELLA SCATOLA
DettagliUTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI
UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI Un utilizzatore a valle di sostanze chimiche dovrebbe informare i propri fornitori riguardo al suo utilizzo delle sostanze (come tali o all
DettagliScheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux
Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola
DettagliIntroduzione ai tipi di dato astratti: applicazione alle liste
Universitàdegli Studi di L Aquila Facoltàdi Scienze M.F.N. Corso di Laurea in Informatica Corso di Laboratorio di Algoritmi e Strutture Dati A.A. 2005/2006 Introduzione ai tipi di dato astratti: applicazione
DettagliAlgoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione
Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Esercizi II parte Esercizio 1 Discutere la correttezza di ciascuna delle seguenti affermazioni. Dimostrare formalmente la validità
DettagliBasi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS
Basi di Basi di (Sistemi Informativi) Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche sul web) Avete già interagito (magari inconsapevolmente)
DettagliIl documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.
Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.0 ver 1.0 del 19/03/2013 Nettuno Solutions s.r.l. Viale
DettagliBASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone
BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell
DettagliElementi di semantica operazionale
Elementi di semantica operazionale 1 Contenuti sintassi astratta e domini sintattici un frammento di linguaggio imperativo semantica operazionale domini semantici: valori e stato relazioni di transizione
DettagliIntroduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico
Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle
DettagliApproccio stratificato
Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia
DettagliFONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)
FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU) 13 Febbraio 2015 Tempo a disposizione: 2 h Risultato: 32/32 punti Esercizio 1 (punti 6) Si esprimano in logica dei predicati del I ordine le seguenti frasi:
DettagliAlgebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE
Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE Andrea Bobbio Anno Accademico 2000-2001 Algebra Booleana 2 Calcolatore come rete logica Il calcolatore può essere visto come una rete logica
DettagliAlgebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.
Algebra booleana Nel lavoro di programmazione capita spesso di dover ricorrere ai principi della logica degli enunciati e occorre conoscere i concetti di base dell algebra delle proposizioni. L algebra
DettagliFONDAMENTI di INFORMATICA L. Mezzalira
FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software
DettagliProgettazione : Design Pattern Creazionali
Progettazione : Design Pattern Creazionali Alessandro Martinelli alessandro.martinelli@unipv.it 30 Novembre 2010 Progettazione : Design Pattern Creazionali Aspetti generali dei Design Pattern Creazionali
DettagliI casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.
UML e i Casi d USO I casi d uso specificano una sequenza di azioni che producono un risultato visibile agli attori del sistema. Essi nascono per fornire descrizioni delle capacità del sistema. I casi d
DettagliMODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it
MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo
DettagliStrutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)
Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi
DettagliIntroduzione al Linguaggio C
Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C
DettagliEsercitazione di Basi di Dati
Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 6 Maggio 2004 Come costruire una ontologia Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione, stanza
DettagliOggetti Lezione 3. aspetti generali e definizione di classi I
Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione
DettagliSistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
DettagliProgetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore
ARPA Fonte Dati Regione Toscana 1 Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.1 Data emissione 09/10/13 Stato FINAL 2 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 1.1 09/10/2013
DettagliFunzioni. Il modello console. Interfaccia in modalità console
Funzioni Interfaccia con il sistema operativo Argomenti sulla linea di comando Parametri argc e argv Valore di ritorno del programma La funzione exit Esercizio Calcolatrice 2, presente in tutti i programmi
DettagliESERCIZI DI PREPARAZIONE ALLA PROVA FINALE: RETI SEMANTICHE
ESERCIZI DI PREPARAZIONE ALLA PROVA FINALE: RETI SEMANTICHE 1. Costruire la rete semantica conseguente ad una interpretazione personale del seguente testo in Linguaggio Naturale: Internet può essere definita
DettagliIntroduzione all Information Retrieval
Introduzione all Information Retrieval Argomenti della lezione Definizione di Information Retrieval. Information Retrieval vs Data Retrieval. Indicizzazione di collezioni e ricerca. Modelli per Information
DettagliPROCESSO DI INDICIZZAZIONE SEMANTICA
PROCESSO DI INDICIZZAZIONE SEMANTICA INDIVIDUAZIONE DEI TEMI/CONCETTI SELEZIONE DEI TEMI/CONCETTI ESPRESSIONE DEI CONCETTI NEL LINGUAGGIO DI INDICIZZAZIONE TIPI DI INDICIZZAZIONE SOMMARIZZAZIONE INDICIZZAZIONE
DettagliGESTIONE INFORMATICA DEI DATI AZIENDALI
GESTIONE INFORMATICA DEI DATI AZIENDALI Alberto ZANONI Centro Vito Volterra Università Tor Vergata Via Columbia 2, 00133 Roma, Italy zanoni@volterra.uniroma2.it Rudimenti di programmazione Programming
DettagliCliens Gestione Studio Legale 2009.2 Modifica dei Reports
La funzione di Modica Reports consente di personalizzare le stampe (reports) di Cliens in base alle proprie esigenze. Ad esempio è possibile modificare l aspetto delle Fatture oppure delle stampe dell
DettagliLuCe (Logic Tuple Centres)
LuCe (Logic Tuple Centres) Oliviero Riganelli Andrea Vallorani LuCe è un modello per la coordinazione degli agenti Internet. sfrutta la nozione di logic tuple-based based, spazio di interazione per gli
DettagliMANUALE ESPERTI PON 2007/2013
MANUALE ESPERTI PON 2007/2013 COME ACCEDERE AI PON 1 passo Gli operatori possono accedere in due modi 1 modalità di accesso Sito istruzione www.istruzione.it Cliccare su 2 2 modalità di accesso Sito Indire
DettagliArchitettura degli elaboratori Seconda esercitazione di laboratorio. Dr. Francesco Giacomini e Dr. Matteo Manzali Università degli Studi di Ferrara
Architettura degli elaboratori Seconda esercitazione di laboratorio Dr. Francesco Giacomini e Dr. Matteo Manzali Università degli Studi di Ferrara Linee generali (1) L esercitazione consiste nell implementare
DettagliGLI ARCHIVI DI DATI. File Un File è una sequenza di informazioni che costituisce una unità logica. Un file è un un contenitore di di informazioni
GLI ARCHIVI DI DATI File Un File è una sequenza di informazioni che costituisce una unità logica. Un file è un un contenitore di di informazioni» Un file può contenere un testo» Un file può contenere la
DettagliUML Diagrammi delle classi. UML Diagramma classi 1
UML Diagrammi delle classi UML Diagramma classi 1 Diagramma delle classi Non è nei nostri obiettivi affrontare UML nel suo complesso Ci concentreremo sui diagrammi delle classi che ci forniscono un linguaggio
DettagliTecniche di riconoscimento statistico
On AIR s.r.l. Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 4 Reti neurali per la classificazione Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com
Dettagli