Dato un grafo non orientato G=(V,E) con V={1, … , 𝑛} nodi e |E|=m coppie di
archi non ordinati., un sottoinsieme V’⊆V (non necessariamente proprio di V) è
detto Vertex cover per G se per ogni arco di G almeno uno dei due vertici ad esso
incidente appartiene a V’:
FORMALENTE
V’⊆V è un vertex cover per il grafo G se ∀[𝑖, 𝑗] ∈ 𝐸, almeno una delle seguenti
condizioni è verificata i∈V’ oppure j∈V’. (non è un o esclusivo possono appartenere entrambi)
V=V’ ho un vertex cover banale perché entrambi appartengono a V
Tale problema consiste nel trovare un vertex cover per G con cardinalità minima,
cioè vogliamo selezionare il minimo di numero di nodi a copertura di tutti gli archi.
Per definire il problema matematico si introducono:
|V|=n variabili di decisione
∀j=1,..,n xj={ ′
Per una generica istanza del problema si fa vedere che vale il ≤ 2 mentre vale
l’uguaglianza per una famiglia di istanze del problema per cui l’errore commesso è
proprio pari a due ovvero un esempio sono i grafi a stella, mentre un
comportamento migliore viene esibito per tutti i grafi a catena.
DIM: Indichiamo con A l’insieme degli archi selezionati da E’. Per ogni arco [i,j]ЄA, i
vertici i e j sono aggiunti a V 'I =V 'I U{i,j} e quindi segue che ¿ V 'I |=2|A|. Inoltre
essendo che da E’ vengono rimossi tutti gli archi incidenti in almeno uno fra i nodi i e
j, risulta che gli archi in A sono a DUE a DUE NON ADIACENTI (adiacenti vuol dire che
condividono un estremo ), per cui per ogni arco [i,j]ЄA, un vertex cover (incluso
quello ottimo), per definizione di vertex cover, deve contenere almeno uno fra i nodi
¿
i e j. Dunque |A|≤|V I|, unendo le due relazioni si ottiene la tesi.