Autori: M. Di Ianni, A. Panepuccia

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Autori: M. Di Ianni, A. Panepuccia"

Transcript

1 AR Analisi di Reti 2010/2011 M.Di Ianni Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia In questa dispensa verrà trattato il problema dell assegnazione dei ruoli in un grafo. Tale problema è stato introdotto nell ambito dell analisi di una reti sociali, ossia, strutture costituita da individui (generalmente persone, ma anche gruppi e organizzazioni) connessi tra di loro da una o più relazioni di interdipendenza. Una rete sociale viene naturalmente descritta tramite un grafo in cui i nodi rappresentano gli individui e gli archi rappresentano le relazioni; queste ultime sono determinanti per l assegnazione dei ruoli agli individui all interno della rete sociale. L obiettivo del role assignment nell ambito delle reti sociali è quello di classificarne i membri: si assume, cioè, che i membri che ricoprono lo stesso ruolo abbiamo un comportamento simile. Il problema del role assignment appare, a prima vista, analogo al problema del clustering. Come abbiamo visto nella Dispensa 4, tutte le tecniche di clustering raggruppano gli elementi sulla base della loro distanza reciproca, e, quindi, l appartenenza o meno ad un cluster dipende da quanto l elemento preso in esame è distante dall insieme stesso. Come già osservato, è possibile parlare di modelli di clustering in cui viene richiesto che i cluster e le connessioni fra i cluster abbiano proprietà strutturali più complesse che non la semplice vicinanza (rispetto alla metrica utilizzata). Essi sono genericamente chiamati Role Assignment (assegnazioni di ruoli). Rispetto al clustering, i role assignment inseriscono due nodi nello stesso cluster (meglio, assegnano ad essi lo stesso ruolo) se i loro vicinati hanno una struttura simile : la definizione formale del tipo di similitudine richiesta differenzia i vari tipi di role assignment. La dispensa, nei Paragrafi 6.1 e 6.2, fornirà, rispettivamente, un introduzione ed una panoramica sulle reti sociali e sui problemi di role assignment, con sezioni dedicate alle varie tipologie. Il resto della dispensa sarà incentrato sull ecological role assignment, introdotto brevemente nel Paragrafo Nel Paragrafo 6.3 verrà introdotta la classe di grafi che ammettono un role assignment ecologico che utilizza tanti ruoli quanti sono i nodi. Nel Paragrafo 6.4 verrà introdotta un tecnica di partizionamento dei nodi di un grafo in sottoinsiemi che induce direttamente un role assignment ecologico. Infine, nel Paragrafo 6.5 dove verrà descritto un algoritmo polinomiale che, dato un intero positivo k, permette di individuare un role assignment ecologico per un grafo che utilizzi esattamente k ruoli ogni qualvolta k sia un numero di ruoli valido per il grafo. 6.1 Le reti sociali Il concetto di rete sociale nasce, storicamente, per caratterizzare reti di natura prettamente fisica quali, ad esempio: una comunità di lavoratori, che si incontra nei relativi circoli dopolavoristici e che costituisce una delle associazioni AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 1

2 di promozione sociale, le comunità di sportivi, le comunità di persone accomunate da problematiche strettamente lavorative e di tutela sindacale del diritto nel lavoro, le confraternite e in generale le comunità basate sulla pratica comune di una religione e il ritrovo in chiese, templi, moschee, sinagoghe e altri luoghi di culto. Una rete sociale si può, inoltre, basare su di un comune approccio educativo come nello scautismo, o di visione sociale, come nelle reti segrete della carboneria e della massoneria. Nell ambito delle scienze sociali, il concetto di rete sociale è stato utilizzato a lungo come metafora per tradurre ora l idea della società come rete di reticoli sociali, ora l idea dell azione sociale come esito di vincoli ed opportunità emergenti dalle relazioni tra i soggetti. L uso metaforico del termine ha posto il concetto di rete sociale ad un livello di astrazione piuttosto elevato, portando con sé un indubbio fascino evocativo e al tempo stesso, alle volte, creando confusione terminologica e mancanza di chiarezza nelle definizioni. Recentemente, la diffusione del web e l utilizzo del termine rete sociale nel suo ambito ha reso ancor più evidente la necessità di risolvere le ambiguità e, più in generale, di fornire per le reti sociali una solida base di definizioni formali. In effetti, l impiego scientifico del termine ha diminuito il livello di astrazione ad esso associato, determinando il passaggio del concetto di rete dall immagine intuitiva di un fenomeno complesso alla sua rappresentazione sul piano formale ed analitico. Le reti sociali come rappresentazione organizzativa dei rapporti sociali ed il loro metodo di studio, l analisi delle reti sociali, sono stati adottati come strumenti teorici e metodologici per lo studio di numerosi fenomeni e processi. In ambito sociologico tali studi hanno mostrato che nelle reti si depositano valori materiali e non materiali che contribuiscono a determinare la ricchezza individuale e collettiva (diversa da individuo ad individuo, non solo a causa delle capacità relazionali, ma anche per effetto di specifici processi strutturali) espressa in beni relazionali e immediatamente spendibile qualora se ne presenti la necessità. Una rete sociale è costituita da un insieme di entità e relazioni tra di esse; le entità sono anche dette attori in quanto protagoniste attive della rete sociale e della sua evoluzione. Le reti sono, quindi, strutture relazionali tra attori ed in quanto tali costituiscono una forma sociale rilevante che definisce il contesto in cui si muovono tali attori. La rete sociale risulta essere allora la struttura di relazioni le cui caratteristiche possono essere usate per spiegare il comportamento delle entità che costituiscono la rete. Il nodo della rete sociale può essere una persona oppure un gruppo (ad esempio un ente o un istituzione). Le relazioni di una rete sociale possono essere tutte dello stesso tipo (si consideri, ad esempio, la generica amicizia su Facebook), oppure possono essere diversificate nella tipologia, prendendo in considerazione una caratterizzazione delle relazioni stesse (amicizia, parentela, rapporto di affari, etc.). Inoltre, le relazioni possono essere reciproche oppure asimmetriche. Appare, dunque evidente che una rete sociale è sempre esprimibile mediante un grafo in cui con i nodi si identificano gli individui e con gli archi i legami che tra di essi si instaurano. Definiamo la densità di una rete come il rapporto fra il numero dei suoi archi ed il numero di archi del grafo completo sugli stessi nodi. La densità di una rete può rendere un idea di quanto sia efficiente l interscambio relazionale tra i vari elementi della rete stessa: ad esempio, se tutti gli elementi della rete instaurassero tra loro dei legami allora le densità della rete sarebbe pari ad uno, diversamente, nel caso in cui gli elementi della rete non comunicassero tra loro, la densità della rete sarebbe pari a zero (assenza di comunicazione/relazione). L analisi delle reti sociali ha evidenziato come la struttura e la densità contribuiscano a determinarne la potenziale utilità per i singoli individui. Le reti piccole e molto dense di connessioni sono meno utili ai loro membri rispetto a quelle in cui vi sono molte connessioni con elementi esterni alla rete principale. Le reti più aperte favoriscono l introduzione di nuove idee, informazioni ed opportunità per i loro membri rispetto alle reti chiuse, piccole e con connessioni ridondanti: quindi, per un individuo è preferibile avere connessioni con una grande varietà di gruppi e sottoreti piuttosto che molte connessioni all interno dello stesso gruppo o sottorete. In base al contenuto e alla struttura delle relazioni, è possibile caratterizzare reti di tipologia differente. Una rete può essere descritta in due modi a seconda che essa venga considerata da un punto di vista a-centrato oppure egocentrato. Una rete a-centrata è priva di un centro, non gerarchica, ed ogni suo nodo è equivalente a tutti gli altri; il grafo che rappresenta la rete potrebbe essere sparso. Una rete egocentrata, invece, viene costruita e descritta ponendo al suo centro un individuo dal quale si dipanano le relazioni: in un social network, dato un individuo (l ego), una sottorete egocentrata è quella che comprende gli individui che sono in relazione con l ego (gli alter). Le tipologie di analisi di reti egocentrate focalizzano l analisi su una prospettiva individuale: secondo questo approccio, ogni individuo ha una propria rete di relazioni che passa attraverso molti gruppi che contribuiscono alla caratterizzazione dell individuo stesso. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 2

3 Quando tutti i membri della rete da esaminare sono definiti (conosciuti) a priori da tutti gli altri membri, la rete è detta sociocentrica o completa. In una rete sociocentrica, tutti gli individui sono contemporaneamente ego ed alter. A differenza delle tipologie di analisi di reti egocentrate, quelle di reti complete le studiano da un punto di vista collettivo (per esempio, analizzando le dinamiche dei gruppi e la struttura della rete stessa). Come già accennato ad inizio paragrafo, una rete sociale può contemplare più di un tipo di relazione: ad esempio, le relazioni possono essere classificate in buone (amicizia, alleanza, etc.) e cattive (odio, rancore, etc.). Per poter modellare queste distinzioni, sono stati introdotti i concetti di archo positivo e di arco negativo: un arco positivo tra due nodi indica una relazione positiva tra di essi, mentre un arco negativo indica una relazione negativa. Un signed graph è un grafo i cui archi hanno un segno positivo o negativo; formalmente, un signed graph G Σ è definito come segue: G Σ := G,σ dove G = (V,E) e σ : E W{+, }. 6.2 Il Role Assignment Uno degli obiettivi principali dell analisi delle reti sociali è quello di determinare dei modelli (pattern) di relazioni tra gli attori (nodi) della rete in modo da identificare la struttura sociale della rete. I metodi di analisi delle reti sociali possono essere suddivisi in due macrocategorie: metodi di analisi relazionale: pongono l accento sulle relazioni tra gli individui, e generalmente hanno l obiettivo di identificare i membri centrali (hub) della rete oppure di partizionare il grafo in cluster; metodi di analisi posizionale: esaminano la similarità tra le connessioni di due membri della rete con gli altri membri. Il role assignment è uno dei principali metodi di analisi posizionale. Affinché un assegnazione dei ruoli sia possibile, è necessario che l insieme dei ruoli sia conosciuto a priori (o, quantomeno, sia nota una specifica formale degli stessi nel caso in cui si vogliano calcolare dinamicamente anche i ruoli stessi, oltre che la loro assegnazione). In questa dispensa, assumeremo sempre che l insieme dei ruoli sia dato a priori. Un algoritmo di role assignment assegna i ruoli ai nodi della rete tenendo conto delle specifiche dei ruoli e delle proprietà dei nodi; alcune proprietà dei nodi sono statiche, mentre altre potrebbero mutare nel corso del tempo. Le specifiche dei ruoli sono fortemente dipendenti dal contesto applicativo: ad esempio, le specifiche dei ruoli potrebbero consistere in un insieme di coppie ruolo,regola in cui, per ogni ruolo la rispettiva regola indica le condizioni che devono essere soddisfatte per l assegnazione di quel ruolo. Ad esempio, alla luce di quanto visto nella dispensa del Clustering, in una rete wireless di sensori i ruoli assegnabili potrebbero essere i seguenti: disattivato (nodo che non ha necessità di trasmettere perché altri sensori coprono interamente l area ad esso assegnata), cluster leader (come abbiamo visto, è un sensore più potente degli altri, e tale ruolo dovrebbe essere assegnato ad un nodo che non ha nessun altro cluster leader come vicino), gateway (il ruolo potrebbe essere assegnato ai nodi che hanno per vicini almeno 2 cluster leader non collegati attraverso nessun altro gateway), slave (ruolo assegnato a tutti gli altri nodi). Formalizzando il concetto, dato un grafo G = (V,E) e un insieme di ruoli W, un role assignment per G è una funzione suriettiva r : V W. Due ruoli si dicono adiacenti se esistono nel grafo due nodi adiacenti che giocano, rispettivamente, quei ruoli; più formalmente, AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 3

4 Definizione 6.1(Grafo dei ruoli): Dato un grafo G = (V,E) ed un role assignment r : V W, il grafo dei ruoli indotto da r in G è il grafo R G (r) = (W,E G (r)) tale che E G (r) = {(r 1,r 2 ) : u,v V tali che (u,v) E r(u) = r 1 r(v) = r 2 }. Segue direttamente dalla definizione di grafo dei ruoli che, per ogni role assignment r per un grafo G, se (u,v) è un arco di G, allora (r(u),r(v)) è un arco del grafo dei ruoli. Senza eccessiva perdita di generalità, da qui in avanti assumiamo che i grafi che consideriamo siano non diretti. Il grafo dei ruoli modella i ruoli e le loro relazioni; esso può essere visto come una versione compressa del modello rappresentato da G. Ovviamente, in tale compressione vi sarà una perdita di informazioni: l obiettivo dell analisi dei ruoli è quello di trovare un role assignment tale che il grafo dei ruoli risultante mostri le proprietà strutturali essenziali della rete, senza, però, che vi sia una perdita eccessiva di informazioni. Abbiamo quindi due diverse ragioni per trovare un buon role assignment. Da un lato, quella di sapere quali individui sono simili, dall altro, quella di ridurre la complessità della rete. Se una rete è molto grande oppure ha una struttura fortemente irregolare, è impensabile cercare di catturare la sua struttura a livello di nodi, ma è possibile farlo a livello di ruoli. La speranza è che il grafo dei ruoli metta in evidenza le caratteristiche essenziali e più stabili della rete: mentre gli individui possono avere un comportamento irregolare (in una social network le persone si iscrivono, si cancellano e mutano le relazioni in maniera molto veloce e spesso poco prevedibile), ci si aspetta invece che i ruoli abbiano un comportamento stabile (per lo meno per un lungo periodo di tempo). Come già accennato, esistono varie tipologie di role assignment, nella maggior parte delle quali esiste una relazione tra il ruolo di un nodo e i ruoli dei nodi ad esso vicini. Per questa ragione, è necessaria una definizione che specifichi l insieme dei ruoli ricoperti dai vicini di un dato nodo. Definizione 6.2(Rolehood): Sia r un role assignment per il grafo G = (V, E) che utilizza l insieme dei ruoli W; il rolehood C r (u) di un nodo u V rispetto ad r è l insieme dei ruoli dei vicini di u, ossia, indicato con N(u) l insieme dei vicini di un nodo u, C r (u) = {w W : v N(u) tale che r(v) = w}. Nei successivi sotto-paragrafi descriveremo le seguenti tipologie principali di role assignment: 1. strong structural role assignment; 2. regular role assignment; 3. exact role assignment; 4. perfect role assignment; 5. ecological role assignment. Per ciascuna tipologia τ di role assignment, è possibile definire la seguente coppia di problemi decisionali: Definizione 6.3(Problemi k-τ-ra e H-τ-RA): Siano k ed H, rispettivamente, un numero naturale positivo ed un grafo. ll problema k-τ-ra (k-τ ROLE ASSIGNMENT) consiste nel determinare se, dato un grafo G = (V,E), esiste un τ role assignment r : V W per G tale che W = k. Il problema H-RA (H-τ ROLE ASSIGNMENT) consiste nel determinare se, dato un grafo G = (V,E), esiste un τ role assignment r per G tale che il corrispondente grafo dei ruoli R G (r) è isomorfo ad H. Prima di procedere, osserviamo che un possibile role assignment per un grafo è quello che assegna lo stesso ruolo a tutti i nodi del grafo. Un tale role assignment è detto banale. Un altro possibile role assignment per un grafo è quello che assegna un ruolo differente ad ogni nodo del grafo. Chiameremo un tale role assignment ridondante. Come vedremo, l esistenza di role assignment banali o ridondanti per un grafo G non è sempre ovvia per tutte le tipologie di role assignment sopra elencate. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 4

5 6.2.1 Strong structural role assignment Secondo questa tipologia di role assignment, se due individui ricoprono lo stesso ruolo allora devono avere gli stessi vicini. Più formalmente, Definizione 6.4(Strong Structural Role Assignment): dato un grafo G = (V, E), un role assignment r su di esso è detto strong structural se u,v V : r(u) = r(v) N(u) = N(v). È immediato verificare che i seguenti sono esempi di strong structural role assignment: dato un grafo bipartito completo B = (V 1 V 2,V 1 V 2 ), il role assignment r : V 1 V 2 {r 1,r 2 } tale che, per ogni u V 1 V 2 : r 1 se u V 1 r(u) = r 2 se u V 2 ; dato un grafo a stella S = ({c} V 1,{c} V 1 ), il role assignment r : {c} V 1 {r 1,r 2 } tale che, per ogni u {c} V 1 : r 1 se u = c r(u) = r 2 se u V 1. È anche semplice verificare che le seguenti proprietà elementari sono verificate in ogni role assignment di tipo strong structural per grafi privi di loop 1 : 1. i nodi che hanno lo stesso ruolo costituiscono un insieme indipendente; 2. la distanza tra due nodi non isolati u e v che hanno lo stesso ruolo è 2: infatti se u ha come vicino z, anche v deve avere come vicino z in quanto per definizione di strong structural role assignment due nodi che hanno lo stesso ruolo devono avere gli stessi vicini. Osserviamo, ora, che il role assignment ridondante è strong structural per ogni grafo. D altra parte, solo per le clique con loop ad ogni nodo e per i grafi costituiti da soli nodi isolati il role assignment banale è strong structural. Il problema della computazione di uno strong structural role assignment di un grafo G = (V,E) che utilizza il minimo numero di ruoli possibile è in P, come mostra il semplice algoritmo in Tabella 6.1: esso partiziona l insieme dei nodi in classi di equivalenza tali che due nodi sono nella stessa classe se e solo se hanno lo stesso vicinato, restituendo in output la partizione calcolata. Poiché tutti i nodi appartenenti alla stessa classe di equivalenza hanno lo stesso vicinato, allora possono ricevere lo stesso ruolo. D altra parte, nodi appartenenti a classi di equivalenza diverse devono ricevere ruoli diversi, dal che si deduce che il minimo numero di ruoli di uno strong structural role assignment per G è proprio pari al numero di classi di equivalenza della partizione calcolata. Come già osservato, per ogni role assignment r per un grafo G, se (u,v) è un arco di G, allora (r(u),r(v)) è un arco del grafo dei ruoli. Se r è strong structural, deve essere vero anche il viceversa, il che ci fornisce una definizione equivalente di strong structural role assignment, formalmente enunciata nel seguente teorema: Teorema 6.1: Un role assignment r : V W per un grafo G = (V,E) è strong structural se e solo se u,v V : (r(u),r(v)) E G (r) (u,v) E. dove E G (r) è l insieme degli archi del grafo dei ruoli indotto da r in G. 1 Un loop è un arco che collega un nodo a sé stesso. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 5

6 Input: grafo G = (V, E) 1 P /0 P è la partizione di V in classi di equivalenza, inizialmente vuota 2 V 1 V ; crea una copia di V che sarà modificata nel corso dell algoritmo 3 for each v V 1 do begin 4 C {v} crea una nuova classe C 5 V 1 V 1 {v} v ha trovato la sua classe di equivalenza 6 for each u V 1 do 7 if N(u) = N(v) then begin 8 C C {u} 9 V 1 V 1 {u} 10 end 11 P P {C} 12 end 13 Output: P Tabella 6.1: Algoritmo che calcola uno strong structural role assignment di cardinalità minima. Poiché nei grafi più irregolari è pressoché impossibile partizionare i nodi in classi di equivalenza non banali che inducano uno strong structural role assignment, sono state proposte versioni rilassate di tale tipologia di role assignment. Fra tali tipologie, ricordiamo qui lo structural role assignment, basato sul concetto di relazione di equivalenza strutturale: un equivalenza sui nodi di un grafo è detta strutturale se, per ogni coppia di nodi u e v, u v se e solo se la trasposizione di u e v è un automorfismo del grafo 2 Possiamo allora definire uno structural role assignment: Definizione 6.5(Structural Role Assignment): dato un grafo G = (V,E) ed una relazione di equivalenza strutturale in esso, un role assignment r per G è detto structural se u,v V : r(u) = r(v) N(u) N(v) Regular role assignment Questa tipologia di role assignment si basa sull idea di una relazione strutturale dei nodi; secondo essa, se due nodi hanno lo stesso ruolo allora i rispettivi vicini devono avere gli stessi ruoli. Più formalmente, Definizione 6.6(Regular Role Assignment): che r è regolare se u,v V : r(u) = r(v) C r (u) = C r (v). dato un grafo G = (V, E) ed un role assignment r su di esso, diremo Segue dalla definizione che, in qualunque grafo, il role assignment ridondante è regolare, mentre il role assignment banale è regolare solo per grafi connessi oppure costituiti da soli nodi isolati. Un grafo con almeno 3 nodi i cui unici possibili role assignment regolari sono quello banale e quello ridondante viene detto role primitive. Un grafo in cui tutti i possibili role assignment sono regolari viene detto arbitrarily role assignable. È semplice dimostrare che ogni grafo completo è arbitrarily role assignable (e tale dimostrazione è lasciata per esercizio). Jirì Fiala e Daniel Paulusma [] hanno dimostrato il seguente teorema: Teorema 6.2: Il problema k-regular-ra è decidibile in tempo polinomiale per k = 1 ed è NP-completo per k > 1. Il problema H-REGULAR-RA è decidibile in tempo polinomiale se ogni componente di H consiste di un singolo vertice o consiste di due vertici senza loop, ed è NP-completo altrimenti. 2 Un automorfismo di un grafo è una permutazione dei nodi che preserva gli archi e i non archi: quindi due nodi sono collegati da un arco se e solo se lo sono le loro immagini mediante la permutazione data. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 6

7 6.2.3 Exact role assignment La proprietà che definisce un exact role assignment è ottenuta aggiungendo vincoli alla proprietà che definisce un regular role assignment. Dunque, ogni exact role assignment è un regular role assignment. In particolare, mentre affinché due nodi ricoprano lo stesso ruolo in un regular role assignment è sufficiente che i rispettivi vicini ricoprano lo stesso insieme di ruoli, nel caso dell exact role assignment conta anche il numero di vicini che occupano quel ruolo. Definizione 6.7(Exact Role Assignment): Sia r un role assignment per il grafo G = (V,E) che utilizza l insieme dei ruoli W, e siano u V e w W; definiamo OCC r (u,w) come il numero di occorrenze in cui un vicino di u ha come ruolo w. Più formalmente, OCC r (u,w) = {v : v N(u) r(v) = w}. Diremo che r è esatto se, per ogni u,v V, r(u) = r(v) C r (u) = C r (v) [ w C r (u) : OCC r (u,w) = OCC r (v,w)]. Analogamente al caso del regular role assignment, il role assignment ridondante è esatto per ogni grafo. Invece, il role assignment banale è esatto solo per grafi regolari, ossia, grafi i cui nodi hanno tutti lo stesso numero di vicini. Una partizione P = {C 1,...,C k } dell insieme dei nodi V di un grafo G viene chiamata equitable se esistono k 2 interi b i j, con i, j = 1,...,k tali che ogni nodo in C i ha esattamente b i j vicini nella classe C j. Segue immediatamente dalle definizioni che una partizione è equitable se e solo se il role assignment ad essa associato (che assegna ai nodi nella stess classe di equivalenza lo stesso ruolo) è esatto. L exact role assignment e le partizioni equitable sono stati ampiamente studiati nella teoria dei grafi algebrica. Lerner [] ha mostrato che esistono algoritmi efficienti che calcolano la massima partizione equitable di un grafo e, quindi un exatct role assignment che usa il massimo numero di ruoli possibile. Comunque, per grafi che presentano grandi irregolarità, il numero massimo di ruoli individuato è spesso uguale al numero di nodi nel grafo (ossia, il role assignment calcolato è quello ridondante). In altre parole, tali algoritmi tendono a partizionare i nodi in troppe classi e sono, quindi, pressoché inutilizzabili come strumenti per catturare la struttura generale della rete Ecological Role Assignment Questa tipologia di role assignment richiede che sia verificata la proprietà inversa di quella che definisce un regular role assignment. In un ecological role assignment il ruolo di ogni nodo è completamente deterninato dal ruolo dei nodi vicini: se due nodi hanno lo stesso rolehood allora devono ricoprire lo stesso ruolo. Definizione 6.8( Ecological Role Assignment): dato un grafo G = (V,E) e un role assignment r su di esso, diremo che r è ecologico se u,v V : C r (u) = C r (v) r(u) = r(v). L ecological role assignment modella la caratteristica delle reti sociali secondo la quale ogni individuo è influenzato dai suoi vicini (ossia le persone con cui è in relazione), basandosi sul fatto che due individui che subiscono le stesse influenze (ossia che hanno lo stesso rolehood) tendono a comportarsi allo stesso modo (ossia ad avere lo stesso ruolo). Tale concetto è mutuato dalla teoria dell organizzazione degli ecosistemi, ove si ipotizza che le forme di organizzazione, attraverso la selezione naturale e l adattamento, vengono determinate dai loro ambienti, che consistono, fondamentalmente, in altre forme di organizzazione. Mentre il role assignment banale è ecologico per ogni grafo, la questione del role assignment ridondante è più delicata e sarà trattata diffusamente nel prossimo paragrafo Perfect role assignment Un perfect role assignment è sia un regular role assignment che un ecological role assignment: AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 7

8 Definizione 6.9(Perfect Role Assignment): Sia r : V W un role assignment per il grafo G = (V,E); r è un perfect role assignment se u,v V : r(u) = r(v) C r (u) = C r (v). Lerner ha dimostrato che un equivalenza regolare è perfetta se e solo se sul grafo dei ruoli non è possibile definire uno strong structural role assignment non banale. 6.3 Grafi Neighborhood Distinct Ne resto di questa dispensa, considereremo sempre grafi semplici (ciascuna coppia di nodi è collegata da al più un arco) e senza loop. Come abbiamo annunciato quando abbiamo definito l ecological role assignment, non è detto che un grafo ammetta un ecological role assignment ridondante. Pensiamo, ad esempio, ad una catena di tre nodi (Figura 6.1): non è possibile assegnare ruoli diversi ai tre nodi del grafo in quanto i due estremi della catena hanno come unico vicino il nodo centrale e, quindi, necessariamente avranno sempre lo stesso rolehood. a b c Figura 6.1: In ogni ecological role assignment, a e c devono avere lo stesso ruolo. In effetti, la definizione di ecological role assignment implica che due nodi con gli stessi vicini devono avere lo stesso ruolo: pertanto, il numero di vicinati distinti in un grafo è una limitazione superiore sul numero dei ruoli che possono essere utilizzati per ogni ecological role assignment. Definizione 6.10(Grafi ND): Un grafo si dice neighborhood distinct (in breve, ND) se non contiene coppie di nodi che hanno esattamente gli stessi vicini; più formalmente, un grafo G = (V,E) è ND se, per ogni u,v V, N(u) N(v). Il seguente risultato segue dalle definizione e da quanto osservato sopra. Teorema 6.3: Un grafo è ND se e soltanto se ammette un role assignment ecologico ridondante. Dato un grafo G = (V,E), definiamo la relazione di equivalenza ρ N in V tale che, per ogni u,v V, uρ N v se e solo se N(u) = N(v). Definizione 6.11(Neighborhood Graph): Dato un grafo G = (V, E), il neighborhood graph corrispondente a G è il grafo ND G N = (V N,E N ) tale che V N è l insieme delle classi di equivalenza in V rispetto alla relazione ρ N e E N = {(X,Y ) : X,Y V N ( u X, v Y : u N(v))}. Denotiamo, inoltre, con n G il numero di nodi del neighborhood graph, ossia, n G = V N. Dalle definizioni di neighborhood graph e di ecological role assignment segue immediatamente che Teorema 6.4: Un grafo può ammette un ecological role assignment con k ruoli se e soltanto se il suo neighborhood graph ammette un ecological role assignment con k ruoli. Una importante conseguenza del precedente teorema è che, per ogni grafo G, il massimo numero di ruoli ecologici per G è al più n G. Dunque, poiché il neighborhood graph di un grafo dato può essere calcolato mediante un semplice algoritmo polinomiale (la cui definizione è lasciata per esercizio), è possibile calcolare in tempo polinomiale il massimo numero di ruoli che possono essere assegnati ai nodi di un qualsiasi grafo in modo tale che il role assignment risultante sia ecologico. D altra parte, anche calcolare il minimo numero di ruoli ecologici è un problema polinomiale, in quantoè sempre vero che il role assignment banale di un qualsiasi grafo è ecologico. Dato un grafo G ed un intero k tale che 1 < k < N G, non sappiamo, però, se esiste per G un role assignment ecologico che usa esattamente k ruoli. Nel Paragrafo 6.5 risponderemo affermativamente a questa domanda. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 8

9 Il resto di questo paragrafo è dedicato a rispondere parzialmente a tale questione, ossia a dimostrare che, dato un grafo G, esiste per G un role assignment ecologico che usa n G 1 ruoli. Prima di procedere, osserviamo che, alla luce del Teorema 6.4, possiamo limitare la nostra attenzione ai soli grafi ND. Pertanto, d ora in poi, salvo ove diversamente specificato, i grafi cui faremo riferimento saranno tutti ND. Il lemma che segue è funzionale ai nostri scopi. Lemma 6.1: Sia F = {N 1,...,N n } una famiglia di n sottoinsiemi distinti di [n] 3. Allora, esiste un elemento i [n] tale che, per ogni coppia di sottoinsiemi N j,n k F, si ha che N j N k {i}. Dimostrazione: La dimostrazione è per assurdo. Supponiamo, allora, che, per ogni i [n], esista almeno una coppia di sottoinsiemi distinti in F che differiscono per il solo elemento i. Per ogni i [n], scegliamo allora una (sola) coppia L i,s i F di sottoinsiemi tali che L i = S i {i}. Osserviamo che, se i j (i, j [n]), allora L i L j oppure S i S j poiché altrimenti si avrebbe i = j. Definiamo ora un grafo diretto G F = (V F,A F ) come di seguito indicato: V F = {S i,l i : i [n]}; per ogni h,k [n], (N h,n k ) A F se e solo se esiste i [n] tale che S i = N h e L i = N k. Osserviamo subito che V F F = n e che, poiché per i j, i, j [n], L i L j o S i S j, allora A F = n. Osserviamo anche che G F è aciclico in quanto altrimenti esisterebbe una sequenza X 0,...,X h 1 di h sottoinsiemi distinti di [n] tali che X i X i+1 per 0 i < h 1 e X h 1 X 0 : cioè, X 0 X 0. Ci proponiamo ora di dimostrare che anche il grafo non diretto ottenuto da G F considerando i suoi archi come non orientati non contiene cicli. Se questo fosse vero, allora G F potrebbe contenere al più V F 1 n 1 archi e questo contraddirrebbe il fatto che invece dovrebbe contenerne n, dimostrando in tal modo che deve esistere i [n] tale che, per qualunque coppia N j,n k F, N j N k {i}. Dimostriamo allora che anche il grafo non diretto G F ottenuto da G F considerando i suoi archi come non orientati non contiene cicli. Di nuovo, supponiamo per assurdo che G F contenga un ciclo X 0,...,X h 1 con h 3. Allora, deve esistere r con 0 r h 1 tale che (X r,x r 1 ) A F (X r,x r+1 ) A F (in quanto segue, assumiamo che tutte le operazioni siano eseguite modulo h). Infatti, o r = 0 oppure esiste un arco entrante incidente su X 0 : in questo ultimo caso, possiamo seguire a ritroso la catena di archi entranti che inizia da X 0 e lungo di essa, poiché G F è aciclico, certamente incontreremo un nodo X r che non ha archi entranti (si veda, ad esempio, il ciclo in Figura 6.2 per il quale r = 4). Sia i [n] l elemento tale che i X r 1 i X r ; mostriamo ora che i X s per ogni s r, con 0 s h 1. Questo è vero in quanto, se i X t per qualche t con 0 t h 1, e (X t,x s ) A F o (X s,x t ) A F, allora i X s. Infatti, se (X t,x s ) A F, allora X t X s ; altrimenti, se (X s,x t ) A F, allora X t X s {i} poiché s r e, per ogni i [n], esistono solo due nodi adiacenti di G F la cui differenza è uguale a {i}. Perciò, in entrambi i casi abbiamo che i X s. Allora, i X r+1 (si veda, per esempio, il ciclo in Figura 6.2 dove i X 4 i X 5 ). D altra parte, deve esistere j i tale che j X r+1 j X r : perciò, X r+1 X r {i, j} e questo contraddice il fatto che (X r,x r+1 ) A F (nell esempio, abbiamo che X 5 X 4 {i, j}). Questo completa la prova che G F è aciclico e, quindi, la dimostrazione del lemma. Dal lemma appena dimostrato segue immediatamente il prossimo teorema. Teorema 6.5: Sia G = (V,E) un grafo ND con n nodi; allora esiste un nodo u V tale che il sottografo indotto da V {u} è un grafo ND con n 1 nodi. Dimostrazione: È sufficiente osservare che l insieme {N(v) : v V }, in cui, al solito, N(v) è l insieme dei vicini di v, soddisfa le ipotesi del Lemma 6.1. Allora, esiste u V tale che, per ogni coppia di nodi distinti v e w, N(v) {u} N(w), da cui la tesi. Il prossimo teorema dimostra ciò che ci eravamo prefissi in questa sezione. Esso sarà utilizzato come subroutine dall algoritmo polinomiale di ecological role assignment. 3 Ricordiamo che il simbolo [n] denota l insieme di interi {1,2,...,n} AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 9

10 X 1 = X 2 {k i} i X 1 X 1 X 0 X 0 X 1 i X 0 X 2 X 3 i X 2 X 2 X 6 X 6 X 0 i X 6 i X 3 X 3 X 5 X 5 X 6 i X 5 j X 5 i X 4 X 4 j X 4 Figura 6.2: Dimostrazione del Lemma 6.1 Teorema 6.6: Sia G = (V,E) un grafo ND con n nodi. Esiste un role assignment ecologico per G che usa n 1 ruoli. Dimostrazione: Dal Teorema 6.5 (applicato due volte) segue che esistono due nodi u e v tali che il grafo G u,v indotto da V {u,v} è un grafo ND con n 2 nodi. Sia r un role assignment per G che usa n 1 ruoli e che assegna lo stesso ruolo ai nodi u e v e ruoli differenti a tutti gli altri nodi. Per dimostrare che r è ecologico, supponiamo per assurdo che esistano due nodi p e q tali che C r (p) = C r (q) e r(p) r(q). Distinguiamo i seguenti casi. {p,q} = {u,v}: In questo caso ovviamente r(p) = r(q), da cui la contraddizione. {p,q} V {u,v}: in questo caso G u,v è ND e, poiché r assegna un ruolo diverso ad ogni nodo, C r (p) deve essere diverso da C r (q), da cui la contraddizione. p {u,v} q V {u,v} (senza perdita di generalità, sia p = u): in questo caso, poiché ad ogni nodo di G u,v viene associato un ruolo diverso e poiché C r (u) = C r (q), abbiamo che N(u) {u,v} = N(q) {u,v}. Ora abbiamo due sotto-casi: u e q sono adiacenti, oppure non lo sono. Supponiamo che u e q siano adiacenti: allora, r(q) C r (u) C r (q), contraddicendo il fatto che C r (u) = Cr(q). Allora, u e q non sono adiacenti; poiché G è ND, esattamente un nodo tra u e q deve essere adiacente a v, ma questo significa che r(u) C r (u) C r (q) o che r(u) C r (q) C r (u), contraddicendo anche in questo caso l ipotesi C r (p) = C r (q). q {u, v} p V {u, v}: questo caso è simmetrico rispetto al precedente. 6.4 Famiglie ecologiche Siano G = (V,E) un grafo ND tale che e V 1 V un insieme indipendente massimale per G. Il role assignment che assegna il ruolo r 1 a tutti i nodi in V 1 ed il ruolo r 2 r 1 ai nodi in V V 1 è ecologico. Infatti: 1. essendo V 1 un insieme indipendente allora, poiché G non contiene loop, per ogni u V 1, r 1 C r (u) e quindi C r (u) {r 2 } 4 ; 2. essendo V 1 un insieme indipendente massimale, ogni nodo v V V 1 è adiacente ad almeno un nodo in V 1 e, quindi, r 1 C r (v). Dunque, se r(u) r(v) allora C r (u) C r (v), ed r è ecologico. Ripetendo il ragionamento, se V 2 è un insieme indipendente massimale in G V 1, allora il role assignment che assegna 4 Osserviamo che, se un nodo u è isolato in G, allora il suo colorhood è l insieme vuoto. D altra parte, ogni nodo isolato di G appartiene ad ogni insieme indipendente massimale per G. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 10

11 il ruolo r 1 a tutti i nodi in V 1, il ruolo r 2 r 1 ai nodi in V 2 ed il ruolo r 3 r 1,r 2 ai nodi in V (V 1 V 2 ) è ecologico: Infatti, per ogni nodo u V 1 si ha che r 1 C r (u), per ogni nodo v V 2 si ha che r 1 C r (v) e r 2 C r (v), e, infine, per ogni nodo z V (V 1 V 2 ) si ha che {r 1,r 2 } C r (z) Iterando, se V 1,V 2,...,V h è una partizione di V in insiemi indipendente tali che V 1 è massimale in G, V 2 è massimale in G V 1,..., V h 1 è massimale in V 1 i h 2 V i (e, ovviamente, V h = V 1 i h 1 V i, allora il role assignment che assegna il ruolo r i a tutti i nodi in V i, per ogni 1 i h, è ecologico. Osserviamo esplicitamente che questo procedimento di role assignment funziona correttamente perché i grafi che stiamo considerando non contengono loop. In conclusione, se vogliamo assegnare k ruoli ai nodi di G e riusciamo a partizionare i nodi in h k insiemi indipendenti massimali, è sufficiente che assegniamo i primi k 1 ruoli ai primi k 1 insiemi indipendenti, ed il rimanente ruolo a tutti gli altri nodi. Osserviamo che, però, questo procedimento non può essere applicato se riusciamo a partizionare V in meno di k insiemi indipendenti massimali. Comunque, l algoritmo che calcola un ecological role assignment del numero di ruoli richiesto opera in modo simile a quello appena descritto, eseguendo un ulteriore passo di raffinamento della partizione in insiemi indipendenti massimali. Prima di poter descrivere tale algoritmo, dobbiamo allora ragionare sulle proprietà delle famiglie di insiemi indipendenti. Questo è l obiettivo di questo paragrafo. Teorema 6.7: Sia G = (V,E) un grafo ND di n nodi e sia I = {I 1,...,I h }, con 2 h < n una partizione di V in h insiemi indipendenti non vuoti. Allora, esistono due interi k ed m tali che 1 k,m h e che la coppia di insiemi I k e I m induce in G un grafo bipartito non completo con almeno un arco. Dimostrazione: Osserviamo innanzi tutto che, poiché h < n e quindi almeno un insieme indipendente deve essere costituito da più di un nodo, devono esistere almeno due nodi u e v nello stesso insieme indipendente. Supponiamo per assurdo che tutte le coppie di insiemi indipendenti in I inducano in G un grafo bipartito completo oppure un insieme indipendente. Questo implica che, per ogni i tale che 1 i h, u e v sono entrambi adiacenti a tutti i nodi in I i oppure sono entrambi non adiacenti ad alcun nodo di I i. Ma allora u e v dovrebbero avere gli stessi vicini, il che contraddice il fatto che G è ND. Introduciamo ora un partcolare partizionamento dei nodi di un grafo che, da un lato, corrisponde direttamente ad una colorazione ecologica, dall altro, come mostreremo nel successivo Teorema 6.9, permette di incrementare (ecologicamente) il numero di colori utilizzati. Definizione 6.12(Famiglie ecologiche): Sia G = (V,E) un grafo e I = {I 1,...,I h } una partizione di V in h 1 insiemi non vuoti tali che I 1,...,I h 1 sono insiemi indipendenti. I viene detta famiglia ecologica di G di dimensione h se h = 1 oppure se, per ogni i, j tali che 1 i, j h con i j, per ogni u I i e per ogni v I j esiste t, con 1 t h, tale che u è adiacente a qualche nodo in I t mentre v non è adiacente ad alcun nodo in I t. Il prossimo teorema è conseguenza diretta della definizione. Teorema 6.8: Se esiste per un grafo G = (V,E) una famiglia ecologica I = {I 1,...,I h } di dimensione h allora il role assignment r : V h per G tale che ruoli i = 1,...,h, u I i : r(u) = i è ecologico. Dimostrazione: Poiché I è una partizione di V, allora r è un role assignment di G. Resta da mostrare che r è ecologico. Se h = 1, r è il role assignment banale che è ecologico per ogni grafo. Assumiamo allora h > 1 e consideriamo due nodi u,v V tali che r(u) r(v) e mostriamo che C r (u) C r (v). Sia r(u) = i e r(v) = j con i j: allora, u I i e v I j. Per definizione di famiglia ecologica, esiste t, con 1 t h, tale che u è adiacente a qualche nodo in I t mentre v non è adiacente ad alcun nodo in I t. Quindi, t C r (u) e t C r (v), cioè, C r (u) C r (v). Nel seguito, chiameremo role assignment corrispondente ad I un role assignment costruito, come nell enunciato del Teorema 6.8, a partire da una famiglia ecologica I per un grafo G. Il seguente teorema dimostra costruttivamente che è sempre possibile incrementare di una o due unità la dimensione di una famiglia ecologica quando essa è inferiore al numero di nodi. Come vedremo, esso costituisce una vera e propria subroutine per l algoritmo polinomiale di ecological role assignment che sarà mostrato nel prossimo paragrafo. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 11

12 Teorema 6.9: Sia G = (V,E) un grafo ND di n nodi e sia I = {I 1,...,I h } una famiglia ecologica per G di dimensione h < n; allora esiste una famiglia ecologica I per G di dimensione h + 1 o h + 2. Inoltre I può essere calcolata in tempo polinomiale a partire da I. Dimostrazione: Se I h non è un insieme indipendente, allora sia I h1 un insieme indipendente massimale per il sottografo di G indotto da I h, e sia I h2 = I h I h1, e sia I = I {I h } {I h1,i h2 }. Per ogni i [h 1] e per ogni j [h 1] {h 1,h 2 } con i j, siano u I i e v I j. Poiché I è una famiglia ecologica, allora esiste I t I tale che u è adiacente a qualche nodo in I t e v non è adiacente a nessun nodo di I t : ovviamente, questo è ancora vero in I, con I t eventualmente rimpiazzato da I h1 o da I h2. Se invece i = h 1 e j = h 2, ossia, u I h1 e v I h2, poiché I h1 è un insieme indipendente massimale per il sottografo di G indotto da I h, allora v deve essere adiacente a qualche nodo in I h1 mentre u non è adiacente a nessun nodo in I h1. Assumiamo ora che I h sia un insieme indipendente; dal Teorema 6.7 segue che esistono p,q con 1 p,q h tali che il sottografo di G indotto da I p I q non è un insieme indipendente né un grafo bipartito completo. Partizioniamo I p in I p1 I p2 e I q in I q1 I q2 in modo che vengano rispettate le seguenti proprietà: I p1 /0, I q1 /0, I p2 I q2 /0, il sottografo indotto da I p1 I q1 è un insieme indipendente. Poiché il sottografo di G indotto da I p I q non è un insieme indipendente né un grafo bipartito completo, esso deve contenere due nodi adiacenti u 1 I p e v 1 I q e due nodi non adiacenti u 2 I p e v 2 I q ; tali nodi non sono necessariamente distinti: infatti, potrebbe accadere che u 1 coincida con u 2 o che v 1 coincida con v 2 (ma non entrambe le cose). Senza perdita di generalità, assumiamo che u 1 sia diverso da u 2. Definiamo i seguenti insiemi: I q1 = {x I q : (u 2,x) E}; I p1 = {x I p : y I q1 (x,y) E}; I q2 = I q I q1 ; I p2 = I p I p1. Osserviamo che almeno tre insiemi fra I p1,i p2,i q 1,I q2 sono non vuoti. Infatti I q1 e I p1 sono non vuoti in virtù dell esistenza di v 2 ( I q1 ) ed u 2 ( I p1 ); inoltre, se v 1 coincide con v 2 allora u 1 I p2 (cioè, I p2 è non vuoto), altrimenti v 1 I q2 (cioè, I q2 è non vuoto). Definiamo allora I nella maniera seguente: 1. I = I {I p,i q } {I p1,i p2,i q1,i q2 } se I q2 /0 e I p2 /0, 2. I = I {I p,i q } {I p1,i p2,i q1 } se I q2 = /0 e I p2 /0, 3. I = I {I p,i q } {I p1,i q1,i q2 } se I q2 /0 e I p2 = /0. Resta da dimostrare che I è una famiglia ecologica per G. A tale scopo, si considerino una coppia di nodi u I i e v I j con i j e l insieme I t tale che u sia adiacente a qualche nodo di I t e che v non sia adiacente ad alcun nodo di I t : ciò rimane ancora vero in I, con I t eventualmente rimpiazzato da un insieme tra I p1,i p2,i q1,i q2. Se, invece, i = j potrebbero verificarsi i seguenti due casi: u I p1 e v I p2 : in questo caso, per costruzione, u non è adiacente ad alcun nodo in I q1 mentre v è adiacente a qualche nodo in I q1 (altrimenti v dovrebbe essere contenuto in I p1 ); u I q1 e v I q2 : caso simile al precedente. Abbiamo quindi dimostrato che I è una famiglia ecologica per G e che la sua dimensione è h + 1 o h + 2. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 12

13 Input: grafo ND G = (V,E) e intero k tale che 1 k V = n 1 I Partitionamento(G, k); Fase 1. 2 if I < k then begin 3 I Incremento(G, k, I ); Fase 2: inizio. 4 if I < k then begin 5 if ( 1 p,q k 1 u,v I p : u è adiacente a qualche nodo in I q e v non è adiacente ad alcun nodo in I q ) then begin 6 I p1 {x I p : x è adiacente a qualche nodo in I q ; 7 I p2 I p I p1 ; 8 I I {I p } {I p1,i p2 }; 9 end Fase 2: fine. 10 else I Rifinitura(G, k, I ); Fase end 12 h 1 Role Assignment 13 while h I do begin 14 scegli I I ; 15 for each u I do r(u) h; 16 I I {I}; 17 h h + 1; 18 end r è un ecological role assignment per G con k ruoli 19 Output: r. Tabella 6.2: Algoritmo EcRA che calcola un ecological role assignment con k ruoli per l input G di tipo ND. 6.5 Algoritmo di ecological role assignment Sia G = (V,E) un grafo ND di n nodi e sia W l insieme dei ruoli che vogliamo assegnare (ecologicamente) a G, con W = k < n; senza perdità di generalità, assumiamo che W = {1,...,k} = [k]. Presentiamo in questo paragrafo un algoritmo che calcola un ecological role assignment per G che utilizza esattamente i k ruoli richiesti. Vedremo, in conclusione del paragrafo, come generalizzare l algoritmo in modo che funzioni correttamente anche per grafi non ND. L algoritmo è descritto dallo pseudocodice in Tabella 6.2. Esso lavora in tre fasi seguite dal role assignment vero e proprio. Inizialmente, nella prima fase, esso tenta di applicare il procedimento descritto all inizio del Paragrafo 6.4, ossia, invoca la funzione Partizionamento (descritta in Tabella 6.3) che partiziona l insieme dei nodi in insiemi indipendenti massimali. Se riesce ad ottenere una partizione in k insiemi, allora, in virtù di quanto allora osservato, la partizione induce un role assignment ecologico. Altrimenti, ha inizio la seconda fase. All inizio della Fase 2, viene invocata la funzione Incremento, descritta in Tabella 6.4: essa applica ripetutamente i Teoremi 6.7 e 6.9 per incrementare la dimensione della famiglia ecologica corrispondente alla partizione in insiemi indipendenti massimali, fino ad ottenere una famiglia ecologica di dimensione k o k 1. Ricordiamo, infatti, che ad ogni applicazione del Teorema 6.9 la dimensione della famiglia viene incrementata di 1 o 2 unità: se, dunque, una volta ottenuta una famiglia ecologica di dimensione k 1 si procedesse ad un ulteriore passo di incremento, sarebbe possibile che essa venisse incrementata di 2 unità risultando in una famiglia ecologica di dimensione k +1, che, in virtù del Teorema 6.8, indurrebbe un role assignment ecologico con k + 1 ruoli invece che con k ruoli. Pertanto, l ultimo incremento della dimensione della famiglia (ossia, l ultima applicazione del Teorema 6.9) avviene su una famiglia ecologica di dimensione k 2. Se la funzione Incremento restituisce una famiglia ecologica di dimensione k 1, la Fase 2 dell algoritmo prova a partizionare un insieme della famiglia ecologica sin qui calcolata in due sottoinsiemi (linee 5-9): cerca, cioè, un elemento I p I che contenga due nodi, u e v, che non siano adiacenti ad esattamente gli stessi elementi della famiglia AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 13

14 Input: grafo ND G = (V,E) e intero k tale che 1 k V = n 1 I /0; 2 V V ; 3 h 0; 4 while (V /0 h < k 1) do begin 5 h h + 1; 6 I h insieme indipendente massimale del grafo indotto da V in G; 7 I I {I h }; 8 V V I h ; 9 end 10 if (V /0) then I I {V }; 11 Output: I Tabella 6.3: Algoritmo Partizionamento che calcola una partizione di V in al più k sottoinsiemi indipendenti massimali. ecologica. Se un tale I p esiste, allora esistono due nodi u,v I p ed un secondo insieme I q I tali che u è adiacente a qualche nodo in I q e v non è adiacente ad alcun nodo in I q. Allora, è possibile partizionare gli elementi di I p in due sottoinsiemi tali che agli elementi di sottoinsiemi diversi è possibile assegnare ruolo diverso: un sottoinsieme contiene i nodi di I p adiacenti a qualche nodo di I q, l altro sottoinsieme contiene i nodi di I p non adiacenti ad alcun nodo di I q. Osserviamo esplicitamente che, in virtù di quanto discusso sino ad ora, se la famiglia I utilizzata alle linee è quella calcolata alla linea 1, oppure alla linea 3, oppure alla linea 8, allora il role assignment calcolato è ecologico. Se, invece, la funzione Incremento restituisce una famiglia ecologica di dimensione k 1 ma non viene individuato alcun insieme I p I partizionabile in due sottoinsiemi, allora ha inizio la terza fase mediante l invocazione della funzione Rifinitura, che ha il compito di calcolare, a partire da I una nuova famiglia di k sottoinsiemi di V che inducano una colorazione ecologica. Sottolineiamo che la Fase 3 ha inizio solo se la famiglia ecologica I (di dimensione k 1) calcolata alla linea 3 ha la seguente proprietà: I,J I, u,v I : [ x J : (u,x) E y J : (v,y) E] (6.1) ossia, ciascuna coppia di nodi appartenenti a ciascun elemento di I è adiacente a nodi appartenenti ad esattamente gli stessi sottoinsiemi di I. Questa proprietà ha due importanti conseguenze espresse nei seguenti lemmi. Lemma 6.2: Sia G = (V,E) un grafo ND di n nodi e sia I una famiglia ecologica per G tale che I,J I, u,v I : [ x J : (u,x) E y J : (v,y) E]. Allora, per ogni coppia di insiemi I p,i q I che non sono indipendenti in G e non inducono in G un grafo bipartito completo, è possibile partizionare I p in due sottoinsiemi I p1,i p2 ed I q in due sottoinsiemi I q1,i q2 tali che I p1,i p2,i q1,i q2 sono non vuoti e I {I p,i q } {I p1,i p2,i q1,i q2 } è una famiglia ecologica per G. Dimostrazione: Sia I p,i q I una coppia di sottoinsiemi di V che non sono indipendenti in G e non inducono in G un grafo bipartito completo. Allora, poiché I p e I q non sono indipendenti e non inducono un grafo bipartito completo, esistono u 1,u 2 I p e v 1 I q tali che (u 1,v 1 ) E e (u 2,v 1 ) E. Ma allora, per ipotesi, esiste v 2 I q tale che (u 2,v 2 ) E. Analogamente a quanto fatto nel Teorema 6.9, definiamo i quattro insiemi seguenti: I q1 = {y I q : (u 2,y) E}; I p1 = {x I p : y I q1 (x,y) E}; I p2 = I p I p1 ; I q2 = I q I q1. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 14

15 Input: grafo ND G = (V,E), intero k tale che 1 k V = n, partizione I di V in insiemi indipendenti massimali 1 while ( I k 2) do begin 2 I p,i q coppia di insiemi di I che non sono un insieme indipendente né un grafo bipartito completo; I p,i q esistono in virtù del Teorema I I {I p,i q } {I p1,i p2,i q1,i q2 }; I p1,i p2,i q1,i q2 sono ottenuti applicando il Teorema 6.9 a I p,i q (eventuamente, I p = /0 I q = /0 ma Ip s Iq s /0) 4 end 5 Output: I in virtù del Teorema 6.9, I = k o I = k 1 Tabella 6.4: Algoritmo Incremento che calcola una famiglia ecologica di dimensione k o k 1 per G. Nessuno dei quattro insiemi appena definiti è vuoto. Infatti: v 1 I q1, u 2 I p1, u 1 I p2 e v 2 I q2. La dimostrazione che I {I p,i q } {I p1,i p2,i q1,i q2 } è una famiglia ecologica per G è analoga a quella presentata nella prova del Teorema 6.9 ed è, quindi, omessa. Lemma 6.3: Sia G = (V,E) un grafo ND di n nodi e sia I una famiglia ecologica per G tale che Allora, il grafo è un grafo ND. I,J I, u,v I : [ x J : (u,x) E y J : (v,y) E]. G I = (I,E(I ) : (I,J) E(I ) u I,v J : (u,v) E] Dimostrazione: Se I = 1 l asserto è banalmente verificato. Se I > 1, supponiamo che G I non sia un grafo ND. Allora, esistono F,H I che hanno gli stessi vicini: quindi, per ogni I I, (I,F) E(I ) se e soltanto se (I,H) E(I ). Questo significa che, per ogni I I adiacente a F e H esistono u F, v H e x,y I tali che (u,x) E e (v,y) E. Ma, per ipotesi, questo significa che ogni nodo di F è adiacente a qualche nodo di I e che ogni nodo di H è adiacente a qualche nodo di I. In conclusione: ogni nodo di F è adiacente a qualche nodo appartenente ad un elemento I I se e soltanto se ogni nodo di H è adiacente a qualche nodo appartenente ad I. Questo contraddice l ipotesi che I è una famiglia ecologica. La Fase 3 consiste nell invocazione della funzione Rifinitura, descritta in Tabella 6.5. La funzione Rifinitura inizia calcolando il grafo G(I ) definito nel Lemma 6.3; poiché, in virtù di tale lemma, G(I ) è un grafo ND di k 1 nodi, viene calcolato per esso un role assignment ecologico che utilizza k 2 ruoli (linea 3) e vengono individuati i due elementi J e F di I che hanno ricevuto lo stesso ruolo (linea 4). Successivamente, vengono di nuovo applicati a I i due Teoremi 6.7 e 6.9 al fine di incrementarne la dimensione (linee 6-7): il Lemma 6.2 assicura che i quattro insiemi così individuati, I p1,i p2,i q1,i q2, sono tutti non vuoti. Ora, la famiglia calcolata alla linea 8, ottenuta sostituendo in I i due insiemi I p e I q con i quattro insiemi I p1,i p2,i q1,i q2, è una famiglia ecologica di dimensione k + 1. Per ridurne la dimensione, ricorriamo agli insiemi J, F: modifichiamo, dunque, I sostituendo i due insiemi J e F, oppure una loro parte se coincidono con I p o I q, con la loro unione (linee 8-19). Rimane da dimostrare che le linee dell algoritmo EcRA assegna corretamente i ruoli quando la famigliai è l output della funzione Rifinitura. È questo lo scopo del prossimo teorema. Teorema 6.10: Il role assigment che assegna lo stesso ruolo a tutti i nodi apparenenti ad uno stesso sottoinsieme della famiglia I calcolata dalla funzione Rifinitura in Tabella 6.5 è ecologico. Dimostrazione: Per dimostrare questo fatto, consideriamo una qualunque coppia P,Q I. La dimostrazione è per casi. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 15

16 Input: un grafo ND G = (V,E) di n nodi e una famiglia ecologica I di dimensione k 1 < n tale che I,J I, u,v I : [ x J : (u,x) E y J : (v,y) E] Ipotesi (*) 1 E(I ) {(I,J) : I I J I [ u I,v J : (u,v) E]}; 2 G(I ) (I, E(I )); in virtù del Lemma 6.3, G(I ) è un grafo ND di k 1 nodi 3 r I colorazione ecologica di G(I ) con k 2 colori r I esiste in virtù del Teorema J,F coppia di elementi di I tali che r I (J) = r I (F) 5 I p,i q coppia di insiemi di I che non sono un insieme indipendente né un grafo bipartito completo; I p,i q esistono in virtù del Teorema I p1,i p2,i q1,i q2 sottoinsiemi di I p,i q ottenuti applicando il Teorema 6.9 a I p,i q ; 7 I I {I p,i q } {I p1,i p2,i q1,i q2 }; 8 if (I p {J,F} I q {J,F}) then 9 I I {J,F} {J F}; 10 else if (I p = J I q {J,F}) then 11 I I {I p2,f} {I p2 F,I p1,i q1,i q2 }; 12 else if (I p = F I q {J,F}) then 13 I I {I p2,j} {I p2 J,I p1,i q1,i q2 }; 14 else if (I q = J I p {J,F}) then 15 I I {I q1,f} {I q1 F,I p1,i p2,i q2 }; 16 else if (I q = F I p {J,F}) then 17 I I {I q1,j} {I q1 J,I p1,i p2,i q2 }; 18 else if (I p {J,F} I q {J,F}) then 19 I I {J,F} {I p2 I q1,i p1,i q2 }; 20 Output: I in virtù del Lemma 6.2, I p1,i p2,i q1,i q2 sono tutti non vuoti Tabella 6.5: Algoritmo Rifinitura che calcola una partizione in k sottoinsiemi dell insieme dei nodi di un grafo ND G tale che assegnando lo stesso ruolo a nodi dello stesso sottoinsieme e ruoli differenti a nodi in sottoinsiemi differenti si ottiene un role assignment ecologico per G. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 16

17 Se P J F e Q J F, allora ad essi (o al loro soprainsieme I p o I q, se sono contenuti in I p o in I q ) sono assegnati ruoli diversi da r I : allora, poiché r I (J) = r I (F), per ogni nodo u P e per ogni nodo v Q, la differenza simmetrica [N(u) N(v)] [N(v) N(u)] fra N(u) ed N(v) non è contenuta in J F. Questo significa che esiste T I {J,F}, e quindi T I, tale che T N(u) N(v) oppure T N(v) N(u). Se P J F e Q J F, allora, anche in questo caso, ad essi sono assegnati ruoli diversi da r I. La prova è analoga a quella del caso precedente. Il caso P J F e Q J F è simmetrico. Se P J F e Q J F, sono possibili i casi di seguito elencati. - J,F {I p,i q }. Allora, P = J e Q = F o viceversa e, dunque, poiché J F I, non possono esistere tali insiemi P e Q distinti. - J = I p e F {I p,i q }. Allora, deve essere P = I p2 F e Q = I p1 (il caso P = I p1 e Q = I p2 F,Iè simmetrico). Ricordiamo che J = I p e F sono due elementi distinti della famiglia ecologica I e questo implica che esiste T I tale che tutti gli elementi di J = I p (ivi compresi gli elementi in I p1 ) sono adiacenti a qualche elemento di T e nessun elemento di F è adiacente ad alcun elemento di T. Siano u P = I p2 F e v Q = I p1. Se u I p2 allora (si veda la prova del Lemma 6.2) v è adiacente a qualche nodo in I q1 mentre u non è adiacente ad alcun nodo in I q1. Se, invece, u F allora v è adiacente a qualche elemento in T mentre u non è adiacente ad alcun elemento in T. In entrambi i casi u e v possono ricevere ruoli differenti. I casi J = I q e F {I p,i q }, F = I p e J {I p,i q }, F = I q e J {I p,i q }, sono simmetrici. - J = I p e F = I q. Allora, sono possibili i casi seguenti: P = I p2 I q1 e Q {I p1,i q2 } (o viceversa) oppure P = I p1 e Q = I q2 (o viceversa). La dimostrazione di questo caso è simile a quella del caso precedente ed è lasciata per esercizio. La dimostrazione del teorema precedente conclude quindi la prova che l algoritmo in Tabella 6.2 calcola un role assignment ecologico per G che usa esattamente k ruoli. Concludiamo il paragrafo mostrando come rimuovere l ipotesi che G sia un grafo ND. Osserviamo, innanzi tutto, che, dato un grafo G = (V, E), è possibile calcolare in tempo polinomiale il neighborhood graph G N = (V N,E N ) corrispondente a G: in effetti, l algoritmo in Tabella 6.1 calcola una partizione dei nodi di G tale che due nodi se e soltanto se hanno lo stesso vicinato e, quindi, calcola l insieme V N. È poi immediato calcolare, a partire da V N l insieme E N : per ogni P 1,P 2 V N, (P 1,P 2 ) E N se e solo se i nodi di G appartenenti a P 1 sono adiacenti ai nodi di G in P 2. A questo punto, poiché un role assignment ecologico di dimensione k per G esiste se e soltanto se esiste un role assignment ecologico di dimensione k per G N (in virtù del Teorema 6.4), calcoliamo il role assignment ecologico R di dimensione k per G N (se V N k) e lo trasformiamo in un role assignment ecologico r di dimensione k per G. È sufficiente, a questo scopo, per ogni v N, assegnare r(v) = R(P) se v P V N. AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 17

18 Riferimenti bibliografici [1] R. Albert, A. Barabasi, Statistical mechanics of complex networks, Rev. of Mod. Phys., Vol. 74, 47-97, [2] P. Borgatti, G. Everett, Ecological and perfect colorings, Social Networks, 16:4355, [3] U. Brandes and T. Erlebach, Eds. Network Analysis: Methodological Foundations. Lecture Notes in Computer Science, Vol. 3418, Springer, Berlin, [4] P. Crescenzi, F. Greco, M. Di Ianni, G. Rossi, and P. Vocca, Making Role Assignment Feasible: A Polynomialtime Algorithm for Computing Ecological Colorings, Graph-Theoretic Concepts in Computer Science, 34th International Workshop, WG 2008, Durham, UK, June 30 - July 2, Revised Papers [5] C. Frank, K. Romer, Algorithms for Generic Role Assignment in Wireless Sensor Networks, Proceedings of the 3rd international conference on Embedded networked sensor systems, San Diego, California, USA, , [6] J. Lerner, Role assignments, Network Analysis, , [7] [8] [9] network [10] network AR, 2010/2011,Assegnazioni di ruoli Autori: M. Di Ianni, A. Panepuccia 18

ALGEBRA I: CARDINALITÀ DI INSIEMI

ALGEBRA I: CARDINALITÀ DI INSIEMI ALGEBRA I: CARDINALITÀ DI INSIEMI 1. CONFRONTO DI CARDINALITÀ E chiaro a tutti che esistono insiemi finiti cioè con un numero finito di elementi) ed insiemi infiniti. E anche chiaro che ogni insieme infinito

Dettagli

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione.

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione. Grafi ed Alberi Pag. /26 Grafi ed Alberi In questo capitolo richiameremo i principali concetti di due ADT che ricorreranno puntualmente nel corso della nostra trattazione: i grafi e gli alberi. Naturale

Dettagli

Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante

Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante Introduzione Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante Il problema del massimo flusso è uno dei fondamentali problemi nell ottimizzazione su rete. Esso è presente

Dettagli

A i è un aperto in E. i=1

A i è un aperto in E. i=1 Proposizione 1. A è aperto se e solo se A c è chiuso. Dimostrazione. = : se x o A c, allora x o A = A o e quindi esiste r > 0 tale che B(x o, r) A; allora x o non può essere di accumulazione per A c. Dunque

Dettagli

Esistenza di funzioni continue non differenziabili in alcun punto

Esistenza di funzioni continue non differenziabili in alcun punto UNIVERSITÀ DEGLI STUDI DI CAGLIARI FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN MATEMATICA Esistenza di funzioni continue non differenziabili in alcun punto Relatore Prof. Andrea

Dettagli

10. Insiemi non misurabili secondo Lebesgue.

10. Insiemi non misurabili secondo Lebesgue. 10. Insiemi non misurabili secondo Lebesgue. Lo scopo principale di questo capitolo è quello di far vedere che esistono sottoinsiemi di R h che non sono misurabili secondo Lebesgue. La costruzione di insiemi

Dettagli

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Se a e b sono numeri interi, si dice che a divide b, in simboli: a b, se e solo se esiste c Z tale che b = ac. Si può subito notare che:

Dettagli

Esercizi su lineare indipendenza e generatori

Esercizi su lineare indipendenza e generatori Esercizi su lineare indipendenza e generatori Per tutto il seguito, se non specificato esplicitamente K indicherà un campo e V uno spazio vettoriale su K Cose da ricordare Definizione Dei vettori v,,v

Dettagli

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE 1 DIPENDENZA E INDIPENDENZA LINEARE Se ho alcuni vettori v 1, v 2,, v n in uno spazio vettoriale V, il sottospazio 1 W = v 1,, v n di V da loro generato è

Dettagli

Flusso a costo minimo e simplesso su reti

Flusso a costo minimo e simplesso su reti Flusso a costo minimo e simplesso su reti La particolare struttura di alcuni problemi di PL può essere talvolta utilizzata per la progettazione di tecniche risolutive molto più efficienti dell algoritmo

Dettagli

1. Intorni di un punto. Punti di accumulazione.

1. Intorni di un punto. Punti di accumulazione. 1. Intorni di un punto. Punti di accumulazione. 1.1. Intorni circolari. Assumiamo come distanza di due numeri reali x e y il numero non negativo x y (che, come sappiamo, esprime la distanza tra i punti

Dettagli

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2)

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Definiamo innanzitutto una relazione d ordine tra le funzioni. Siano φ e ψ funzioni

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

Esercizi Capitolo 5 - Alberi

Esercizi Capitolo 5 - Alberi Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

19. Inclusioni tra spazi L p.

19. Inclusioni tra spazi L p. 19. Inclusioni tra spazi L p. Nel n. 15.1 abbiamo provato (Teorema 15.1.1) che, se la misura µ è finita, allora tra i corispondenti spazi L p (µ) si hanno le seguenti inclusioni: ( ) p, r ]0, + [ : p

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA

ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA 1. RICHIAMI SULLE PROPRIETÀ DEI NUMERI NATURALI Ho mostrato in un altra dispensa come ricavare a partire dagli assiomi di

Dettagli

Esercizi sull Association Analysis

Esercizi sull Association Analysis Data Mining: Esercizi sull Association Analysis 1 Esercizi sull Association Analysis 1. Si consideri il mining di association rule da un dataset T di transazioni, rispetto a delle soglie minsup e minconf.

Dettagli

METODO DELLE FORZE 1. METODO DELLE FORZE PER LA SOLUZIONE DI STRUTTURE IPERSTATICHE. 1.1 Introduzione

METODO DELLE FORZE 1. METODO DELLE FORZE PER LA SOLUZIONE DI STRUTTURE IPERSTATICHE. 1.1 Introduzione METODO DELLE FORZE CORSO DI PROGETTZIONE STRUTTURLE a.a. 010/011 Prof. G. Salerno ppunti elaborati da rch. C. Provenzano 1. METODO DELLE FORZE PER L SOLUZIONE DI STRUTTURE IPERSTTICHE 1.1 Introduzione

Dettagli

4. Operazioni elementari per righe e colonne

4. Operazioni elementari per righe e colonne 4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:

Dettagli

DESMATRON TEORIA DEI GRAFI

DESMATRON TEORIA DEI GRAFI DESMATRON TEORIA DEI GRAFI 0 Teoria dei Grafi Author: Desmatron Release 1.0.0 Date of Release: October 28, 2004 Author website: http://desmatron.altervista.org Book website: http://desmatron.altervista.org/teoria_dei_grafi/index.php

Dettagli

Lezioni di Matematica 1 - I modulo

Lezioni di Matematica 1 - I modulo Lezioni di Matematica 1 - I modulo Luciano Battaia 16 ottobre 2008 Luciano Battaia - http://www.batmath.it Matematica 1 - I modulo. Lezione del 16/10/2008 1 / 13 L introduzione dei numeri reali si può

Dettagli

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero

Dettagli

γ (t), e lim γ (t) cioè esistono la tangente destra e sinistra negli estremi t j e t j+1.

γ (t), e lim γ (t) cioè esistono la tangente destra e sinistra negli estremi t j e t j+1. Capitolo 6 Integrali curvilinei In questo capitolo definiamo i concetti di integrali di campi scalari o vettoriali lungo curve. Abbiamo bisogno di precisare le curve e gli insiemi che verranno presi in

Dettagli

4 Quarta lezione: Spazi di Banach e funzionali lineari. Spazio duale

4 Quarta lezione: Spazi di Banach e funzionali lineari. Spazio duale 4 Quarta lezione: Spazi di Banach e funzionali lineari. Spazio duale Spazi Metrici Ricordiamo che uno spazio metrico è una coppia (X, d) dove X è un insieme e d : X X [0, + [ è una funzione, detta metrica,

Dettagli

Minimo sottografo ricoprente. Minimo sottografo ricoprente. Minimo albero ricoprente. Minimo albero ricoprente

Minimo sottografo ricoprente. Minimo sottografo ricoprente. Minimo albero ricoprente. Minimo albero ricoprente Minimo sottografo ricoprente Minimo sottografo ricoprente Dato un grafo connesso G = (V, E) con costi positivi sugli archi c e, un minimo sottografo ricoprente è un insieme di archi E E tale che: G = (V,

Dettagli

IL PROBLEMA DELLO SHORTEST SPANNING TREE

IL PROBLEMA DELLO SHORTEST SPANNING TREE IL PROBLEMA DELLO SHORTEST SPANNING TREE n. 1 - Formulazione del problema Consideriamo il seguente problema: Abbiamo un certo numero di città a cui deve essere fornito un servizio, quale può essere l energia

Dettagli

I numeri reali. Note per il corso di Analisi Matematica 1. G. Mauceri. a.a. 2003-04

I numeri reali. Note per il corso di Analisi Matematica 1. G. Mauceri. a.a. 2003-04 I numeri reali Note per il corso di Analisi Matematica 1 G. Mauceri a.a. 2003-04 2 I numeri reali Contents 1 Introduzione 3 2 Gli assiomi di campo 3 3 Gli assiomi dell ordine 4 4 Valore assoluto 5 5 I

Dettagli

Minimizzazione di Reti Logiche Combinatorie Multi-livello

Minimizzazione di Reti Logiche Combinatorie Multi-livello Minimizzazione di Reti Logiche Combinatorie Multi-livello Maurizio Palesi Maurizio Palesi 1 Introduzione Obiettivo della sintesi logica: ottimizzazione delle cifre di merito area e prestazioni Prestazioni:

Dettagli

1 LA CORRENTE ELETTRICA CONTINUA

1 LA CORRENTE ELETTRICA CONTINUA 1 LA CORRENTE ELETTRICA CONTINUA Un conduttore ideale all equilibrio elettrostatico ha un campo elettrico nullo al suo interno. Cosa succede se viene generato un campo elettrico diverso da zero al suo

Dettagli

Lo Spettro primo di un anello. Carmelo Antonio Finocchiaro

Lo Spettro primo di un anello. Carmelo Antonio Finocchiaro Lo Spettro primo di un anello Carmelo Antonio Finocchiaro 2 Indice 1 Lo spettro primo di un anello: introduzione 5 1.1 Le regole del gioco................................ 5 1.2 Prime definizioni e risultati

Dettagli

Teoria degli insiemi

Teoria degli insiemi Teoria degli insiemi pag 1 Easy Matematica di dolfo Scimone Teoria degli insiemi Il concetto di insieme si assume come primitivo, cioè non riconducibile a concetti precedentemente definiti. Sinonimi di

Dettagli

5 Radici primitive dell unità e congruenze del tipo

5 Radici primitive dell unità e congruenze del tipo 5 Radici primitive dell unità e congruenze del tipo X m a (mod n ) Oggetto di questo paragrafo è lo studio della risolubilità di congruenze del tipo: X m a (mod n) con m, n, a Z ed m, n > 0. Per l effettiva

Dettagli

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme 1. L insieme R. Per lo svolgimento del corso risulta particolarmente utile considerare l insieme R = R {, + }, detto anche retta reale estesa, che si ottiene aggiungendo all insieme dei numeri reali R

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi per il corso di Algoritmi e Strutture Dati 1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi

Dettagli

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1 LEZIONE 14 141 Dimensione di uno spazio vettoriale Abbiamo visto come l esistenza di una base in uno spazio vettoriale V su k = R, C, permetta di sostituire a V, che può essere complicato da trattare,

Dettagli

MATEMATICA. { 2 x =12 y 3 y +8 x =0, si pone il problema di trovare, se esistono, un numero x ed un numero y che risolvano entrambe le equazioni.

MATEMATICA. { 2 x =12 y 3 y +8 x =0, si pone il problema di trovare, se esistono, un numero x ed un numero y che risolvano entrambe le equazioni. MATEMATICA. Sistemi lineari in due equazioni due incognite. Date due equazioni lineari nelle due incognite x, y come ad esempio { 2 x =12 y 3 y +8 x =0, si pone il problema di trovare, se esistono, un

Dettagli

Rango: Rouchè-Capelli, dimensione e basi di spazi vettoriali.

Rango: Rouchè-Capelli, dimensione e basi di spazi vettoriali. CAPITOLO 7 Rango: Rouchè-Capelli, dimensione e basi di spazi vettoriali. Esercizio 7.1. Determinare il rango delle seguenti matrici al variare del parametro t R. 1 4 2 1 4 2 A 1 = 0 t+1 1 A 2 = 0 t+1 1

Dettagli

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti Dai sistemi concorrenti ai sistemi distribuiti Problemi nei sistemi concorrenti e distribuiti I sistemi concorrenti e distribuiti hanno in comune l ovvio problema di coordinare le varie attività dei differenti

Dettagli

Matematica B - a.a 2006/07 p. 1

Matematica B - a.a 2006/07 p. 1 Matematica B - a.a 2006/07 p. 1 Definizione 1. Un sistema lineare di m equazioni in n incognite, in forma normale, è del tipo a 11 x 1 + + a 1n x n = b 1 a 21 x 1 + + a 2n x n = b 2 (1) = a m1 x 1 + +

Dettagli

Dipendenza dai dati iniziali

Dipendenza dai dati iniziali Dipendenza dai dati iniziali Dopo aver studiato il problema dell esistenza e unicità delle soluzioni dei problemi di Cauchy, il passo successivo è vedere come le traiettorie di queste ultime dipendono

Dettagli

OGNI SPAZIO VETTORIALE HA BASE

OGNI SPAZIO VETTORIALE HA BASE 1 Mimmo Arezzo OGNI SPAZIO VETTORIALE HA BASE CONVERSAZIONE CON ALCUNI STUDENTI DI FISICA 19 DICEMBRE 2006 2 1 Preliminari Definizione 1.0.1 Un ordinamento parziale (o una relazione d ordine parziale)

Dettagli

AA 2006-07 LA RICORSIONE

AA 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

Dettagli

VC-dimension: Esempio

VC-dimension: Esempio VC-dimension: Esempio Quale è la VC-dimension di. y b = 0 f() = 1 f() = 1 iperpiano 20? VC-dimension: Esempio Quale è la VC-dimension di? banale. Vediamo cosa succede con 2 punti: 21 VC-dimension: Esempio

Dettagli

Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera

Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera L. De Giovanni AVVERTENZA: le note presentate di seguito non hanno alcuna pretesa di completezza, né hanno lo scopo di sostituirsi

Dettagli

Anello commutativo. Un anello è commutativo se il prodotto è commutativo.

Anello commutativo. Un anello è commutativo se il prodotto è commutativo. Anello. Un anello (A, +, ) è un insieme A con due operazioni + e, dette somma e prodotto, tali che (A, +) è un gruppo abeliano, (A, ) è un monoide, e valgono le proprietà di distributività (a destra e

Dettagli

Linguaggi. Claudio Sacerdoti Coen 11/04/2011. 18: Semantica della logica del prim ordine. Universitá di Bologna

Linguaggi. Claudio Sacerdoti Coen 11/04/2011. 18: Semantica della logica del prim ordine. <sacerdot@cs.unibo.it> Universitá di Bologna Linguaggi 18: Semantica della logica del prim ordine Universitá di Bologna 11/04/2011 Outline Semantica della logica del prim ordine 1 Semantica della logica del prim ordine Semantica

Dettagli

Appunti di Logica Matematica

Appunti di Logica Matematica Appunti di Logica Matematica Francesco Bottacin 1 Logica Proposizionale Una proposizione è un affermazione che esprime un valore di verità, cioè una affermazione che è VERA oppure FALSA. Ad esempio: 5

Dettagli

IL GIOCO DEL 15. OVVERO: 1000$ PER SPOSTARE DUE BLOCCHETTI

IL GIOCO DEL 15. OVVERO: 1000$ PER SPOSTARE DUE BLOCCHETTI IL GIOCO DEL. OVVERO: 000$ PER SPOSTARE DUE BLOCCHETTI EMANUELE DELUCCHI, GIOVANNI GAIFFI, LUDOVICO PERNAZZA Molti fra i lettori si saranno divertiti a giocare al gioco del, uno dei più celebri fra i giochi

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

Convessità e derivabilità

Convessità e derivabilità Convessità e derivabilità Definizione 1 (convessità per funzioni derivabili) Sia f : (a, b) R derivabile su (a, b). Diremo che f è convessa o concava su (a, b) se per ogni 0 (a,b) il grafico di f sta tutto

Dettagli

Tipologie di pianificatori. Pianificazione. Partial Order Planning. E compiti diversi. Pianificazione gerarchica. Approcci integrati

Tipologie di pianificatori. Pianificazione. Partial Order Planning. E compiti diversi. Pianificazione gerarchica. Approcci integrati Tipologie di pianificatori Pianificazione Intelligenza Artificiale e Agenti II modulo Pianificazione a ordinamento parziale (POP) (HTN) pianificazione logica (SatPlan) Pianificazione come ricerca su grafi

Dettagli

+ P a n n=1 + X. a n = a m 3. n=1. m=4. Per poter dare un significato alla somma (formale) di infiniti termini, ricorriamo al seguente procedimento:

+ P a n n=1 + X. a n = a m 3. n=1. m=4. Per poter dare un significato alla somma (formale) di infiniti termini, ricorriamo al seguente procedimento: Capitolo 3 Serie 3. Definizione Sia { } una successione di numeri reali. Ci proponiamo di dare significato, quando possibile, alla somma a + a 2 +... + +... di tutti i termini della successione. Questa

Dettagli

EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE

EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE 1. EQUAZIONI Definizione: un equazione è un uguaglianza tra due espressioni letterali (cioè in cui compaiono numeri, lettere

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

2 Formulazione dello shortest path come problema di flusso

2 Formulazione dello shortest path come problema di flusso Strumenti della Teoria dei Giochi per l Informatica A.A. 2009/10 Lecture 20: 28 Maggio 2010 Cycle Monotonicity Docente: Vincenzo Auletta Note redatte da: Annibale Panichella Abstract In questa lezione

Dettagli

1 Alcuni criteri di convergenza per serie a termini non negativi

1 Alcuni criteri di convergenza per serie a termini non negativi Alcuni criteri di convergenza per serie a termini non negativi (Criterio del rapporto.) Consideriamo la serie a (.) a termini positivi (ossia a > 0, =, 2,...). Supponiamo che esista il seguente ite a +

Dettagli

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Il procedimento (chiamato algoritmo) è composto da passi elementari

Dettagli

Sulla monotonia delle funzioni reali di una variabile reale

Sulla monotonia delle funzioni reali di una variabile reale Liceo G. B. Vico - Napoli Sulla monotonia delle funzioni reali di una variabile reale Prof. Giuseppe Caputo Premetto due teoremi come prerequisiti necessari per la comprensione di quanto verrà esposto

Dettagli

LA FUNZIONE ESPONENZIALE E IL LOGARITMO

LA FUNZIONE ESPONENZIALE E IL LOGARITMO LA FUNZIONE ESPONENZIALE E IL LOGARITMO APPUNTI PER IL CORSO DI ANALISI MATEMATICA I G. MAUCERI Indice 1. Introduzione 1 2. La funzione esponenziale 2 3. Il numero e di Nepero 9 4. L irrazionalità di e

Dettagli

Dall italiano alla logica proposizionale

Dall italiano alla logica proposizionale Rappresentare l italiano in LP Dall italiano alla logica proposizionale Sandro Zucchi 2009-10 In questa lezione, vediamo come fare uso del linguaggio LP per rappresentare frasi dell italiano. Questo ci

Dettagli

Elementi di semantica denotazionale ed operazionale

Elementi di semantica denotazionale ed operazionale Elementi di semantica denotazionale ed operazionale 1 Contenuti! sintassi astratta e domini sintattici " un frammento di linguaggio imperativo! semantica denotazionale " domini semantici: valori e stato

Dettagli

ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE

ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE Sia I un intervallo di R e siano a = inf(i) R { } e b = sup(i) R {+ }; i punti di I diversi dagli estremi a e b, ( e quindi appartenenti all intervallo aperto

Dettagli

Alberi binari. Ilaria Castelli castelli@dii.unisi.it A.A. 2009/2010. Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione

Alberi binari. Ilaria Castelli castelli@dii.unisi.it A.A. 2009/2010. Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione Alberi binari Ilaria Castelli castelli@dii.unisi.it Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione A.A. 2009/2010 I. Castelli Alberi binari, A.A. 2009/2010 1/20 Alberi binari

Dettagli

Il principio di induzione e i numeri naturali.

Il principio di induzione e i numeri naturali. Il principio di induzione e i numeri naturali. Il principio di induzione è un potente strumento di dimostrazione, al quale si ricorre ogni volta che si debba dimostrare una proprietà in un numero infinito

Dettagli

Decomposizioni di uno schema, Decomposizioni che preservano i dati (loss-less joins) Prof.ssa Rosalba Giugno

Decomposizioni di uno schema, Decomposizioni che preservano i dati (loss-less joins) Prof.ssa Rosalba Giugno Decomposizioni di uno schema, Decomposizioni che preservano i dati (loss-less joins) Prof.ssa Rosalba Giugno Decomposizione di uno schema Dato uno schema relazionale R={A1,A2, An} una sua decomposizione

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

Determinare la grandezza della sottorete

Determinare la grandezza della sottorete Determinare la grandezza della sottorete Ogni rete IP possiede due indirizzi non assegnabili direttamente agli host l indirizzo della rete a cui appartiene e l'indirizzo di broadcast. Quando si creano

Dettagli

(V) (FX) Z 6 è un campo rispetto alle usuali operazioni di somma e prodotto.

(V) (FX) Z 6 è un campo rispetto alle usuali operazioni di somma e prodotto. 29 giugno 2009 - PROVA D ESAME - Geometria e Algebra T NOME: MATRICOLA: a=, b=, c= Sostituire ai parametri a, b, c rispettivamente la terzultima, penultima e ultima cifra del proprio numero di matricola

Dettagli

Analisi statistica di dati biomedici Analysis of biologicalsignals

Analisi statistica di dati biomedici Analysis of biologicalsignals Analisi statistica di dati biomedici Analysis of biologicalsignals II Parte Verifica delle ipotesi (a) Agostino Accardo (accardo@units.it) Master in Ingegneria Clinica LM in Neuroscienze 2013-2014 e segg.

Dettagli

Numeri complessi e polinomi

Numeri complessi e polinomi Numeri complessi e polinomi 1 Numeri complessi L insieme dei numeri reali si identifica con la retta della geometria: in altri termini la retta si può dotare delle operazioni + e e divenire un insieme

Dettagli

Funzioni in più variabili

Funzioni in più variabili Funzioni in più variabili Corso di Analisi 1 di Andrea Centomo 27 gennaio 2011 Indichiamo con R n, n 1, l insieme delle n-uple ordinate di numeri reali R n4{(x 1, x 2,,x n ), x i R, i =1,,n}. Dato X R

Dettagli

STRUTTURE (O COSTRUTTI) DI CONTROLLO

STRUTTURE (O COSTRUTTI) DI CONTROLLO Le strutture di controllo Le strutture di controllo STRUTTURE (O COSTRUTTI) DI CONTROLLO determinano l ordine con cui devono essere eseguite le istruzioni sono indipendenti dalla natura delle istruzioni

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

Approssimazione polinomiale di funzioni e dati

Approssimazione polinomiale di funzioni e dati Approssimazione polinomiale di funzioni e dati Approssimare una funzione f significa trovare una funzione f di forma più semplice che possa essere usata al posto di f. Questa strategia è utilizzata nell

Dettagli

Appunti di Algebra Lineare

Appunti di Algebra Lineare Appunti di Algebra Lineare Indice 1 I vettori geometrici. 1 1.1 Introduzione................................... 1 1. Somma e prodotto per uno scalare....................... 1 1.3 Combinazioni lineari e

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

SISTEMI LINEARI QUADRATI: METODI ITERATIVI

SISTEMI LINEARI QUADRATI: METODI ITERATIVI SISTEMI LINEARI QUADRATI: METODI ITERATIVI CALCOLO NUMERICO e PROGRAMMAZIONE SISTEMI LINEARI QUADRATI:METODI ITERATIVI p./54 RICHIAMI di ALGEBRA LINEARE DEFINIZIONI A R n n simmetrica se A = A T ; A C

Dettagli

Funzione reale di variabile reale

Funzione reale di variabile reale Funzione reale di variabile reale Siano A e B due sottoinsiemi non vuoti di. Si chiama funzione reale di variabile reale, di A in B, una qualsiasi legge che faccia corrispondere, a ogni elemento A x A

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Condizione di sincronizzazione Qualora si voglia realizzare una determinata politica di gestione delle risorse,la decisione se ad

Dettagli

Gli algoritmi. Gli algoritmi. Analisi e programmazione

Gli algoritmi. Gli algoritmi. Analisi e programmazione Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti 4. Insiemi numerici 4.1 Insiemi numerici Insieme dei numeri naturali = {0,1,,3,,} Insieme dei numeri interi relativi = {..., 3,, 1,0, + 1, +, + 3, } Insieme dei numeri razionali n 1 1 1 1 = : n, m \{0}

Dettagli

Teoria quantistica della conduzione nei solidi e modello a bande

Teoria quantistica della conduzione nei solidi e modello a bande Teoria quantistica della conduzione nei solidi e modello a bande Obiettivi - Descrivere il comportamento quantistico di un elettrone in un cristallo unidimensionale - Spiegare l origine delle bande di

Dettagli

GEOMETRIA I Corso di Geometria I (seconda parte)

GEOMETRIA I Corso di Geometria I (seconda parte) Corso di Geometria I (seconda parte) anno acc. 2009/2010 Cambiamento del sistema di riferimento in E 3 Consideriamo in E 3 due sistemi di riferimento ortonormali R e R, ed un punto P (x, y, z) in R. Lo

Dettagli

La funzione è continua nel suo dominio perchè y = f(x) è composizione di funzioni continue. Il punto x = 0 è un punto isolato per D f.

La funzione è continua nel suo dominio perchè y = f(x) è composizione di funzioni continue. Il punto x = 0 è un punto isolato per D f. FUNZIONI CONTINUE - ALCUNI ESERCIZI SVOLTI SIMONE ALGHISI 1. Continuità di una funzione Dati un insieme D R, una funzione f : D R e x 0 R, si è detto che f è continua in x 0 se sono soddisfatte le seguenti

Dettagli

Lab. 1 - Introduzione a Matlab

Lab. 1 - Introduzione a Matlab Lab. 1 - Introduzione a Matlab Alcune informazioni su Matlab Matlab è uno strumento per il calcolo scientifico utilizzabile a più livelli, dalla calcolatrice tascabile, alla simulazione ed analisi di sistemi

Dettagli

4. Strutture algebriche. Relazioni

4. Strutture algebriche. Relazioni Relazioni Sia R una relazione definita su un insieme A (cioè R A A). R si dice riflessiva se a A : ara R si dice simmetrica se a, b A : arb = bra R si dice antisimmetrica se a, b A : arb bra = a = b R

Dettagli

Lezioni del corso AL430 - Anelli Commutativi e Ideali

Lezioni del corso AL430 - Anelli Commutativi e Ideali Lezioni del corso AL430 - Anelli Commutativi e Ideali a.a. 2011-2012 Introduzione alla Teoria delle Valutazioni Stefania Gabelli Testi di Riferimento M. F. Atiyah and I. G. Macdonald, Introduction to Commutative

Dettagli

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA in termini generali: Dati in input un insieme S di elementi (numeri, caratteri, stringhe, ) e un elemento

Dettagli

I Numeri Complessi. Si verifica facilmente che, per l operazione di somma in definita dalla (1), valgono le seguenti

I Numeri Complessi. Si verifica facilmente che, per l operazione di somma in definita dalla (1), valgono le seguenti Y T T I Numeri Complessi Operazioni di somma e prodotto su Consideriamo, insieme delle coppie ordinate di numeri reali, per cui si ha!"# $&% '( e )("+* Introduciamo in tale insieme una operazione di somma,/0"#123045"#

Dettagli

Applicazioni dell'analisi in più variabili a problemi di economia

Applicazioni dell'analisi in più variabili a problemi di economia Applicazioni dell'analisi in più variabili a problemi di economia La diversità tra gli agenti economici è alla base della nascita dell attività economica e, in generale, lo scambio di beni e servizi ha

Dettagli

ESAME DI STATO 2010 SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO

ESAME DI STATO 2010 SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO Archimede ESAME DI STATO SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO ARTICOLO Il candidato risolva uno dei due problemi e risponda a 5 quesiti del questionario. Sia ABCD un quadrato di

Dettagli

Logica del primo ordine

Logica del primo ordine Logica del primo ordine Sistema formale sviluppato in ambito matematico formalizzazione delle leggi del pensiero strette relazioni con studi filosofici In ambito Intelligenza Artificiale logica come linguaggio

Dettagli

Analisi Matematica I

Analisi Matematica I Analisi Matematica I Fabio Fagnani, Gabriele Grillo Dipartimento di Matematica Politecnico di Torino Queste dispense contengono il materiale delle lezioni del corso di Analisi Matematica I rivolto agli

Dettagli

x 1 + x 2 3x 4 = 0 x1 + x 2 + x 3 = 0 x 1 + x 2 3x 4 = 0.

x 1 + x 2 3x 4 = 0 x1 + x 2 + x 3 = 0 x 1 + x 2 3x 4 = 0. Problema. Sia W il sottospazio dello spazio vettoriale R 4 dato da tutte le soluzioni dell equazione x + x 2 + x = 0. (a. Sia U R 4 il sottospazio dato da tutte le soluzioni dell equazione Si determini

Dettagli

Compito di SISTEMI E MODELLI. 19 Febbraio 2015

Compito di SISTEMI E MODELLI. 19 Febbraio 2015 Compito di SISTEMI E MODELLI 9 Febbraio 5 Non é ammessa la consultazione di libri o quaderni. Le risposte vanno giustificate. Saranno rilevanti per la valutazione anche l ordine e la chiarezza di esposizione.

Dettagli

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997 1 RAPPRESENTAZIONE BINARIA DEI NUMERI Andrea Bobbio Anno Accademico 1996-1997 Numeri Binari 2 Sistemi di Numerazione Il valore di un numero può essere espresso con diverse rappresentazioni. non posizionali:

Dettagli