In matematica , e più precisamente nella teoria dei grafi , un grafo è una struttura composta da oggetti in cui sono correlate determinate coppie di oggetti. Gli oggetti corrispondono ad astrazioni matematiche e sono chiamati vertici (o nodi o punti ) e le relazioni tra i vertici sono bordi (o collegamenti o linee ). Distinguiamo tra grafi non orientati , dove i bordi collegano due vertici simmetricamente, e grafi diretti , dove i bordi, chiamati poi frecce , collegano due vertici in modo asimmetrico.
Un grafo è spesso rappresentato da un diagramma sotto forma di un insieme di punti per i vertici, uniti tra loro da linee rette o curve per i bordi, eventualmente provvisto di frecce nel caso di grafi orientati. I grafici sono uno degli oggetti di studio nel campo della matematica discreta .
I grafici sono l'oggetto di base della teoria dei grafi . La parola " grafico " fu usata per la prima volta in questo senso da James Joseph Sylvester nel 1878.
Esistono diverse variazioni nella definizione dei grafici nella teoria dei grafi. Le definizioni più comuni sono le seguenti.
In un senso ristretto ma molto diffuso del termine, un grafo è una coppia che comprende G = ( V , E )
A scanso di equivoci, questo tipo di oggetto può essere definito appunto un semplice grafo non orientato .
In bordo { x , y } , i vertici x e y sono chiamati le estremità o vertici estremi del bordo. Diciamo che il bordo unisce x ed y ed è incidente su x e y . Un vertice può esistere in un grafico senza un bordo incidente. Un loop è un bordo che unisce un vertice a se stesso. I bordi multipli sono due o più bordi che uniscono gli stessi due picchi.
In un senso più generale del termine che consente più archi, un grafo è una terzina G = ( V , E , ϕ ) che comprende
A scanso di equivoci, questo tipo di oggetto può essere definito appunto un multigrafo non orientato .
I grafici come definiti nelle due definizioni precedenti non possono avere loop, perché un loop che unisce un vertice x è il bordo (per un grafo semplice non orientato) o è incidente su (per un multigrafo non orientato) { x , x } = { x } che è non in {{ x , y } | ( x , y ) ∈ V 2 ∧ x ≠ y} . Quindi, per consentire i loop, le definizioni devono essere estese. Per grafici semplici non orientati, E ⊆ {{ x , y } | ( x , y ) ∈ V 2 ∧ x ≠ y} deve diventare E ⊆ {{ x , y } | ( x , y ) ∈ V 2 } . Per i multigrafi non orientati, ϕ : E → {{ x , y } | ( x , y ) ∈ V 2 ∧ x ≠ y} deve diventare ϕ : E → {{ x , y } | ( x , y ) ∈ V 2 } . A scanso di equivoci, questi tipi di oggetti possono essere chiamati precisamente un grafo semplice non orientato con loop e un multigrafo non orientato con loop rispettivamente.
V ed E sono generalmente considerati finiti e molti risultati cessano di essere veri (o hanno affermazioni diverse) per grafi infiniti perché alcuni argomenti di prova non si traducono nel caso infinito. Inoltre, si presume spesso che V sia non vuoto, ma E può essere l'insieme vuoto.
L' ordine di un grafico | V | è il suo numero di vertici. La dimensione di un grafico è | E |, il suo numero di spigoli. Il grado o valenza di un vertice è il numero di bordi incidenti a quel vertice, dove un ciclo conta doppio.
In un grafo semplice non orientato di ordine n , il grado massimo di un vertice è n - 1 e la dimensione massima del grafo è n ( n - 1) / 2 .
I bordi E di un grafo non orientato G inducono una relazione binaria simmetrica ~ V chiamato il rapporto di adiacenza di G . In particolare, per ogni arco { x , y } , si dice che i suoi vertici estremi x e y sono adiacenti l' uno all'altro, che è indicato con x ~ y .
Un grafico orientato è un grafico in cui i bordi hanno un orientamento.
In un senso ristretto ma molto diffuso del termine, un grafo orientato è una coppia G = ( V , A ) (a volte G = ( V , E ) ) comprendente
A scanso di equivoci, questo tipo di oggetto può essere definito appunto un grafo semplice orientato .
Nella freccia ( x , y ) orientata da x a y , x è chiamata la coda della freccia e y la testa della freccia. La freccia ( y , x ) è chiamata freccia inversa di ( x , y ) .
In un senso più generale del termine che consente più frecce, un grafo orientato è una terzina G = ( V , A , ϕ ) (a volte G = ( V , E , ϕ ) ) che include
A scanso di equivoci, questo tipo di oggetto può essere definito appunto un multigrafo orientato .
I grafi orientati come definiti nelle due definizioni precedenti non possono avere loop, perché un loop che unisce un vertice x è la freccia (per un grafo diretto semplice) o è incidente su (per un multigrafo diretto) ( x , x ) che non è in { ( x , y ) | ( x , y ) ∈ V 2 ∧ x ≠ y} . Quindi, per consentire i loop, le definizioni devono essere estese. Per grafici orientati semplici, A ⊆ {( x , y ) | ( x , y ) ∈ V 2 ∧ x ≠ y} deve diventare A ⊆ V 2 . Per i multigrafi orientati, ϕ : A → {( x , y ) | ( x , y ) ∈ V 2 ∧ x ≠ y} deve diventare ϕ : A → V 2 . A scanso di equivoci, questi tipi di oggetti possono essere chiamati appunto un semplice grafo orientato con loop e un multigrafo diretto con loop (o una faretra ) rispettivamente.
Un semplice grafo orientato con cicli è una relazione omogenea (una relazione binaria tra un insieme e se stesso). Un semplice grafo orientato con passanti G = ( V , A ) è detta simmetrica se per ogni freccia A , corrispondente inversa freccia anche in A .
Un grafico misto è un grafico composto da bordi non orientati e bordi diretti. È una tripletta G = ( V , E , A ) per un grafo misto semplice e G = ( V , E , A , ϕ E , ϕ A ) per un multigrafo misto con V , E , A , ϕ E e ϕ A definito come sopra. I grafici orientati e non orientati sono casi speciali.
Un grafico ponderato o una rete è un grafico in cui ogni bordo porta un numero (il suo peso). Questi pesi possono rappresentare, ad esempio, costi, lunghezze o portate, a seconda del problema trattato. Questi grafici sono comuni in vari contesti, come il problema del percorso più breve o il problema del venditore ambulante .
Un grafico asimmetrico (in inglese " oriented graph " ) è un grafico orientato dove al massimo una delle coppie ( x , y ) e ( y , x ) è una freccia del grafico. Un tale grafico è senza loop. Possiamo vederlo come il risultato della scelta di un orientamento per ogni bordo di un grafo non orientato senza loop.
Un grafo regolare è un grafo (non orientato) in cui tutti i vertici hanno lo stesso grado. Se questo grado è k , parliamo anche di un grafo regolare k .
Un grafo completo è un grafo semplice i cui vertici sono tutti adiacenti l'uno all'altro, vale a dire in modo tale che qualsiasi coppia di vertici distinti sia collegata da un bordo. Se il grafo è orientato , diciamo che è completo se ogni coppia di vertici è collegata esattamente da due frecce (una in ogni direzione).
Un grafo finito è un grafo il cui insieme di vertici è finito (e quindi anche l'insieme di archi). Altrimenti, è un grafico infinito . Molto spesso, i grafici considerati sono tacitamente considerati finiti; se sono infinite, viene specificato esplicitamente.
Un grafo connesso è un grafo non orientato in cui qualsiasi coppia di vertici è collegata da una catena. Un grafo orientato, è connesso se è connesso il grafo non orientato ottenuto dimenticando gli orientamenti dei bordi. È fortemente connesso se una qualsiasi coppia di vertici è collegata da un percorso, quindi se per qualsiasi coppia ( x , y ) di vertici, c'è un percorso da x a y e un percorso da y a x . Un grafo connesso a k vertici è un grafo che ha almeno k +1 vertici e che rimane ancora connesso dopo aver rimosso k –1; allo stesso modo, un grafo connesso con k-edge è un grafico che rimane connesso quando rimuoviamo k - 1 archi da esso.
Un grafo bipartito è un grafico il cui insieme di nodi può essere suddiviso in due gruppi X e Y in modo che il bordo non è tra due vertici di X o tra due vertici di Y . Equivalentemente, un grafo bipartito è un grafo il cui numero cromatico è 2.
Un grafo bipartito completo è un grafo bipartito in cui tutti i vertici di X sono collegati a tutti i vertici di Y e viceversa.
Un grafo è una catena di ordine n ≥ 2 se è composto da vertici n che possono essere numerati in modo tale che gli archi siano { v i , v i +1 } per i = 1, 2,…, n - 1. Una catena è, in modo equivalente, un grafo connesso i cui vertici sono di grado 2 tranne due che sono di grado 1. Una catena in un grafo è un sottografo parziale di questo grafo.
Un grafico planare è un grafico che può essere disegnato nel piano (o su una sfera) senza che due bordi si intersechino.
Un ciclo di ordini o un grafo a n cicli è un grafo i cui vertici possono essere numerati in modo che i bordi siano le coppie per più il bordo . Un grafo a ciclo può essere caratterizzato come un grafo connesso tutti i cui vertici hanno grado 2.
Un albero è un grafo connesso aciclico.
Una foresta è un grafo aciclico, vale a dire un'unione disgiunta di uno o più alberi.
Altre classi di grafici includono:
Due bordi di un grafico sono adiacenti se hanno un vertice in comune. Due archi di un grafo orientato sono consecutivi se la fine del primo arco è l'inizio del secondo. Allo stesso modo, due vertici sono adiacenti se sono estremità dello stesso bordo (dello stesso arco). Si dice che un bordo e un vertice adiacente siano incidenti l'uno con l'altro.
Il grafo formato da un unico vertice e senza spigoli è spesso chiamato banale ; il grafico senza vertice e bordo è talvolta chiamato anche grafo nullo .
Un grafo è etichettato ai vertici se ogni vertice ha un'etichetta. Un grafico è etichettato ai bordi se ogni bordo ha un'etichetta. Nei problemi di enumerazione o biiezione, possiamo considerare grafici etichettati o senza etichetta. Un grafico i cui vertici (o bordi) sono etichettati con colori è un grafico colorato.
Nell'analisi dei grafici, la centralità misura la rilevanza e l'importanza di un vertice. Distinguiamo:
Altre misure sono l' eccentricità di un vertice che è la distanza massima da qualsiasi altro vertice, il diametro di un grafico o il raggio .
Le varie operazioni che producono nuovi grafici da dati grafici possono essere raggruppate in:
I grafici si generalizzano in diverse direzioni:
Tutti i libri di testo di matematica discreta contengono un trattamento di grafici:
Molti libri si concentrano sulla teoria dei grafi: