Bordo trasversale
Nella teoria dell'ipergrafo , una trasversa è una parte dei vertici che incontrano tutti i bordi di un ipergrafo . L'insieme delle trasversali è la [[Griglia (matematica) | griglia ]] . Questo è analogo al vertex cover ( vertex cover in inglese) nei grafici.
Definizioni
Si ricorda che un ipergrafo è una coppia dove è un insieme di vertici, e una famiglia di sottoinsiemi chiamati archi, o iper-archi.
H{\ displaystyle {\ mathcal {H}}}
(V,E){\ stile di visualizzazione (V, \, E)}
V{\ stile di visualizzazione V}
E{\ stile di visualizzazione E}
V{\ stile di visualizzazione V}![V](https://wikimedia.org/api/rest_v1/media/math/render/svg/af0f6064540e84211d0ffe4dac72098adfa52845)
Un trasversale to è un numero tale che per ogni arco appartenente a , .
H{\ displaystyle {\ mathcal {H}}}
T⊂V{\ displaystyle T \ sottoinsieme V}
e{\ stile di visualizzazione e}
E{\ stile di visualizzazione E}
T∩e≠∅{\ displaystyle T \ cap e \ neq \ emptyset}![{\ displaystyle T \ cap e \ neq \ emptyset}](https://wikimedia.org/api/rest_v1/media/math/render/svg/adb9a0c023dd084b99858d3b2b6ecffe6c08fcc7)
Il numero della trasversalità di un ipergrafo è la dimensione della più piccola trasversa di . È spesso notatoH{\ displaystyle {\ mathcal {H}}}
H{\ displaystyle {\ mathcal {H}}}
τ(H){\ displaystyle \ tau ({\ mathcal {H}})}
Esempio
Ad esempio, se l'ipergrafo è definito da e , allora ammette più trasversali di dimensione 2 (ad esempio o ) e nessuna di dimensione 1 (perché nessun vertice appartiene a tutti gli spigoli). Il suo numero di trasversalità vale quindi 2.
H{\ displaystyle {\ mathcal {H}}}
V={1,2,3,4,5,6}{\ stile di visualizzazione V \, = \, \ {1,2,3,4,5,6 \}}
E={{1,2,3},{1,4,5},{2,3,6},{4,5,6}}{\ displaystyle E \, = \, \ {\ {1,2,3 \}, \ {1,4,5 \}, \ {2,3,6 \}, \ {4,5,6 \} \}}
H{\ displaystyle {\ mathcal {H}}}
{1,6}{\ stile di visualizzazione \ {1,6 \}}
{2,4}{\ stile di visualizzazione \ {2,4 \}}![{\ stile di visualizzazione \ {2,4 \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/303ee7b3881b20e9b99f732866ee8b061e43aeff)
Vertici ridondanti di una trasversa
Un vertice di una trasversa si dice non ridondante se esiste un bordo dell'ipergrafo di partenza la cui intersezione con questa trasversa è ridotta al vertice considerato. In altre parole, un vertice di un traverso associato a un ipergrafo è non ridondante se soddisfa:io{\ stile di visualizzazione i}
X{\ stile di visualizzazione X}
H(V,E){\ displaystyle {\ mathcal {H}} (V, E)}
∃e∈E,e∩X={io}{\ displaystyle \ esiste e \ in E, e \ cap X = \ {i \}}
Intuitivamente, la ridondanza di un vertice equivale alla trasversalità dell'insieme dei vertici . Infatti, se è ridondante, allora per qualsiasi iper-edge : se allora , e se poi esiste un elemento tale che auto è ridondante. Abbiamo allora . Viceversa, se è una trasversa, allora è necessariamente ridondante perché se esistesse in modo tale che , allora avremmo e non saremmo una trasversa.
io{\ stile di visualizzazione i}
X∖{io}{\ displaystyle X \ setminus \ {i \}}
io{\ stile di visualizzazione i}
e{\ stile di visualizzazione e}
io∉e∩X{\ displaystyle i \ notin e \ cap X}
e∩(X∖{io})=e∩X≠∅{\ displaystyle e \ cap (X \ setminus \ {i \}) = e \ cap X \ neq \ emptyset}
io∈e∩X{\ displaystyle i \ in e \ cap X}
j≠io{\ displaystyle j \ neq i}
j∉e∩X{\ displaystyle j \ notin e \ cap X}
io{\ stile di visualizzazione i}
j∈e∩(X∖{io})≠∅{\ displaystyle j \ in e \ cap (X \ setminus \ {i \}) \ neq \ emptyset}
X∖{io}{\ displaystyle X \ setminus \ {i \}}
io{\ stile di visualizzazione i}
e{\ stile di visualizzazione e}
e∩X={io}{\ displaystyle e \ cap X = \ {i \}}
e∩(X∖{io})=∅{\ displaystyle e \ cap (X \ setminus \ {i \}) = \ emptyset}
X∖{io}{\ displaystyle X \ setminus \ {i \}}![{\ displaystyle X \ setminus \ {i \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/a6b324a467e1a5062b61fe6ac12419c486a77a23)
Una trasversa si dice minima (o non ridondante) se nessuno dei suoi sottoinsiemi è anche trasversa, il che equivale a dire che nessuno dei suoi vertici è ridondante. Infatti: abbiamo visto nel paragrafo precedente che se uno dei suoi vertici fosse ridondante avremmo un sottoinsieme trasversale, e se avessimo un sottoinsieme trasversale potremmo dimostrare che qualsiasi vertice di è ridondante (la dimostrazione è molto simile a quella del paragrafo precedente).
X{\ stile di visualizzazione X}
X'{\ stile di visualizzazione X '}
X∖X'{\ displaystyle X \ setmeno X '}![{\ displaystyle X \ setmeno X '}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8286cb07518d1233957ed1d2e389eaa03722e381)
Ipergrafo trasversale
L'insieme delle trasversali minime associate a un ipergrafo forma un ipergrafo chiamato ipergrafo trasversale .
Il calcolo di un ipergrafo trasversale è fattibile, ad oggi, nel tempo , essendo il cardinale dell'insieme dei vertici.
oh(NONo(logNON)){\ displaystyle O (N ^ {o (\ log N)})}
NON{\ stile di visualizzazione N}![NON](https://wikimedia.org/api/rest_v1/media/math/render/svg/f5e3890c981ae85503089652feb48b191b57aae3)
Algoritmo
Pseudo-codice
L'algoritmo MTMiner (per Minimal Transversals Miner ) permette di calcolare le minime trasversali di un dato ipergrafo.
Entrée Un hypergraphe
H=(V,E){\displaystyle {\mathcal {H}}=(V,E)}![{\displaystyle {\mathcal {H}}=(V,E)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/04285e60db0adeb0c382ddf8e53bbb5ee2a61591)
Sortie L'ensemble des transversales minimales de
H{\displaystyle {\mathcal {H}}}![{\mathcal {H}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/19ef4c7b923a5125ac91aa491838a95ee15b804f)
Fonction MTMiner(
H{\displaystyle {\mathcal {H}}}![{\mathcal {H}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/19ef4c7b923a5125ac91aa491838a95ee15b804f)
)
MT←{{v}∣v∈V, {v} est une arête transversale}{\displaystyle MT\leftarrow \{\{v\}\mid v\in V,\ \{v\}{\text{ est une arête transversale}}\}}
N1←{{v}∣v∈V∖MT, v est dans une arête de E}{\displaystyle N_{1}\leftarrow \{\{v\}\mid v\in V\setminus MT,\ v{\text{ est dans une arête de }}E\}}
j←1{\displaystyle j\leftarrow 1}![{\displaystyle j\leftarrow 1}](https://wikimedia.org/api/rest_v1/media/math/render/svg/a201d50e7afb971fd2b4bbcca67ec7e84238a446)
tant que
Nj≠∅{\displaystyle N_{j}\neq \emptyset }![{\displaystyle N_{j}\neq \emptyset }](https://wikimedia.org/api/rest_v1/media/math/render/svg/82e83c48784d7549f2254c3c9b60517e3b436758)
faire :
pour tous
P⊂V{\displaystyle P\subset V}![{\displaystyle P\subset V}](https://wikimedia.org/api/rest_v1/media/math/render/svg/2ac56b4033cb76a97ff76d0ff6062f5e25bb6afc)
et
v1≠v2∈V{\displaystyle v_{1}\neq v_{2}\in V}![{\displaystyle v_{1}\neq v_{2}\in V}](https://wikimedia.org/api/rest_v1/media/math/render/svg/b2e6c9b9a378f61c93ecd863e9a9a286aa9b9c5d)
tels que
P∪{v1},P∪{v2}∈Nj{\displaystyle P\cup \{v_{1}\},P\cup \{v_{2}\}\in N_{j}}![{\displaystyle P\cup \{v_{1}\},P\cup \{v_{2}\}\in N_{j}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/759fd67e247713fd3a028f1f2c527edfeb2ae742)
:
W←P∪{v1}∪{v2}{\displaystyle W\leftarrow P\cup \{v_{1}\}\cup \{v_{2}\}}![{\displaystyle W\leftarrow P\cup \{v_{1}\}\cup \{v_{2}\}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/976769cfb367bf478e85359bb75b225251a2d438)
si
W{\displaystyle W}![W](https://wikimedia.org/api/rest_v1/media/math/render/svg/54a9c4c547f4d6111f81946cad242b18298d70b7)
est non-redondant :
si
W{\displaystyle W}![W](https://wikimedia.org/api/rest_v1/media/math/render/svg/54a9c4c547f4d6111f81946cad242b18298d70b7)
est transversal :
Ajouter
W{\displaystyle W}![W](https://wikimedia.org/api/rest_v1/media/math/render/svg/54a9c4c547f4d6111f81946cad242b18298d70b7)
à
MT{\displaystyle MT}![MT](https://wikimedia.org/api/rest_v1/media/math/render/svg/98a909994972c27e3d072742881c62dcfb3aeeae)
sinon :
Ajouter
W{\displaystyle W}![W](https://wikimedia.org/api/rest_v1/media/math/render/svg/54a9c4c547f4d6111f81946cad242b18298d70b7)
à
Nj+1{\displaystyle N_{j+1}}
j←j+1{\displaystyle j\leftarrow j+1}![{\displaystyle j\leftarrow j+1}](https://wikimedia.org/api/rest_v1/media/math/render/svg/e5a5e3291b445ad105c3e4d7c5c58057196074c7)
renvoyer
MT{\displaystyle MT}
Esempio di esecuzione
Lascia che l'ipergrafo sia formato da vertici , con spigoli . L'esecuzione procede come segue:
H{\ displaystyle {\ mathcal {H}}}
V={1,2,3,4,5}{\ stile di visualizzazione V = \ {1,2,3,4,5 \}}
E={{1,2,3},{1,4},{3,5},{4,5}}{\ displaystyle E = \ {\ {1,2,3 \}, \ {1,4 \}, \ {3,5 \}, \ {4,5 \} \}}![{\ displaystyle E = \ {\ {1,2,3 \}, \ {1,4 \}, \ {3,5 \}, \ {4,5 \} \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/bafdc34276314796d1f955c86512ab37069ff567)
-
MT{\ stile di visualizzazione MT}
è inizializzato a ;∅{\ displaystyle \ set vuoto}![\ set vuoto](https://wikimedia.org/api/rest_v1/media/math/render/svg/6af50205f42bb2ec3c666b7b847d2c7f96e464c7)
-
NON1{\ stile di visualizzazione N_ {1}}
è inizializzato a ;{{1},{2},{3},{4},{5}}{\ displaystyle \ {\ {1 \}, \ {2 \}, \ {3 \}, \ {4 \}, \ {5 \} \}}![{\ displaystyle \ {\ {1 \}, \ {2 \}, \ {3 \}, \ {4 \}, \ {5 \} \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f1f077fe88640011e9a4150aceea968286f72acf)
-
W{\ stile di visualizzazione W}
assumerà successivamente come valori e :
{1,2},{1,3},{1,4},{1,5},{2,3},{2,4},{2,5},{3,4},{3,5}{\ displaystyle \ {1,2 \}, \ {1,3 \}, \ {1,4 \}, \ {1,5 \}, \ {2,3 \}, \ {2,4 \} , \ {2,5 \}, \ {3,4 \}, \ {3,5 \}}
{4,5}{\ stile di visualizzazione \ {4,5 \}}![{\ stile di visualizzazione \ {4,5 \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/62e69048793e26a2f9ba42849abf3214d0c21594)
-
{1,5}{\ stile di visualizzazione \ {1.5 \}}
e si aggiungono a ,{3,4}{\ stile di visualizzazione \ {3,4 \}}
MT{\ stile di visualizzazione MT}![MT](https://wikimedia.org/api/rest_v1/media/math/render/svg/98a909994972c27e3d072742881c62dcfb3aeeae)
-
{1,3},{1,4},{2,4},{2,5},{3,5}{\ displaystyle \ {1.3 \}, \ {1.4 \}, \ {2.4 \}, \ {2.5 \}, \ {3.5 \}}
e si aggiungono a ,{4,5}{\ stile di visualizzazione \ {4,5 \}}
NON2{\ stile di visualizzazione N_ {2}}![N_ {2}](https://wikimedia.org/api/rest_v1/media/math/render/svg/597ea9dac049261fdda77c5176b050e6588d6bb9)
- Gli altri hyper-edge sono ridondanti;
-
NON2{\ stile di visualizzazione N_ {2}}
vale ;{{1,3},{1,4},{2,4},{2,5},{3,5},{4,5}}{\ displaystyle \ {\ {1.3 \}, \ {1.4 \}, \ {2.4 \}, \ {2.5 \}, \ {3.5 \}, \ {4.5 \} \}}![{\ displaystyle \ {\ {1.3 \}, \ {1.4 \}, \ {2.4 \}, \ {2.5 \}, \ {3.5 \}, \ {4.5 \} \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/d63810a1871f03400b273c57340a05e3350c3755)
-
W{\ stile di visualizzazione W}
assumerà successivamente come valori e :
{1,3,4},{2,4,5},{1,3,5},{1,2,4},{1,4,5}{\ displaystyle \ {1,3,4 \}, \ {2,4,5 \}, \ {1,3,5 \}, \ {1,2,4 \}, \ {1,4,5 \}}
{3,4,5}{\ stile di visualizzazione \ {3,4,5 \}}![{\ stile di visualizzazione \ {3,4,5 \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/085dd7bab450e45707ee9a6130ea503e84df87f1)
-
{2,4,5}{\ stile di visualizzazione \ {2,4,5 \}}
si aggiunge a ,MT{\ stile di visualizzazione MT}![MT](https://wikimedia.org/api/rest_v1/media/math/render/svg/98a909994972c27e3d072742881c62dcfb3aeeae)
- Gli altri hyper-edge sono ridondanti;
-
NON3=∅{\ displaystyle N_ {3} = \ set vuoto}
;
- L'algoritmo restituisce .MT={{1,5},{3,4},{2,4,5}}{\ displaystyle MT = \ {\ {1,5 \}, \ {3,4 \}, \ {2,4,5 \} \}}
![{\ displaystyle MT = \ {\ {1,5 \}, \ {3,4 \}, \ {2,4,5 \} \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/4d956b4235292007a3b6ce6b9090494164a24932)
Le minime trasversali di sono bene e .
H{\ displaystyle {\ mathcal {H}}}
{1,5},{3,4}{\ stile di visualizzazione \ {1.5 \}, \ {3.4 \}}
{2,4,5}{\ stile di visualizzazione \ {2,4,5 \}}![{\ stile di visualizzazione \ {2,4,5 \}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/4600842f19f3bded1497123b2294d2a039a53d2a)
Note e riferimenti
-
Loïck. Lhote , Esempi di analisi algoritmica in aritmetica, teoria dell'informazione e data mining ,19 gennaio 2017, 75 pag. ( leggi in linea )
-
(in) Michael L. Fredman e Leonid Khachiyan , " Sulla complessità della dualizzazione monotona delle forme normali disgiuntive " , Journal of Algorithms , vol. 21, n . 3,1 ° novembre 1996, pag. 618-628 ( ISSN 0196-6774 , DOI 10.1006 / jagm.1996.0062 , lettura online , accesso 25 agosto 2020 )
-
(in) Céline Hébert Alain Bretto e Bruno Crémilleux , " Una formalizzazione del data mining per migliorare il calcolo minimo dell'ipergrafo trasversale " , Fundamenta Informaticae ,dicembre 2007, pag. 415-433
-
(in) Julien David , Loïck Lhote , Arnaud Mary e Francois Rioult , " Uno studio medio di ipergrafi e minimali loro trasversali " , Informatica teorica ,2015( DOI 10.1016 / j.tcs.2015.06.052 )
<img src="https://fr.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title="" width="1" height="1" style="border: none; position: absolute;">