• Nem Talált Eredményt

Duális matroid

In document Diszkrét optimalizálás (Pldal 104-108)

2.6. Matroid műveletek

2.6.2. Duális matroid

Gráfoknál találkoztunk azzal a jelenséggel, hogy a gráf körmatroidja és vágás-matroidja között igen szoros kapcsolat mutatkozik. Nevezetesen a körmatro-idban a feszítő fák a bázisok, míg a vágásmatroid bázisai éppen a feszítő fák komplementerei. Valójában minden matroidhoz elkészíthető a duális matro-idja.

Legyen M = (S,B) matroid a bázisaival adva. Az M duálisán azt az M = (S,B) matroidot értjük, ahol B := {X : S−X ∈ B}. Tehát M bázisai éppen azM bázisainak komplementerei. A definícióból világos, hogy a matroid duális matroidjának duálisa önmaga. Természetesen be kell látnunk, hogyM tényleg matroidot alkot.

2.6.1. Tétel. B kielégíti a bázisaxiómákat. A duális matroidr rangfüggvé-nye :

r(X) =|X|+r(S−X)−r(S). (2.15) Bizonyítás. Az első bázisaxióma triviálisan teljesül. (B2) igazolásához legyen B1 =S−B1 ésB2 =S−B2 a B két tagja, azazB1 ésB2 azM bázisai.

Bármelyx∈B1−B2 elemre meg kell mutatnunk, hogy létezik egyy∈B2

−B1elem, amelyreB1−x+y∈ B. Ez azzal ekvivalens, hogy azx∈B2−B1

elemhez létezik olyany∈B1−B2 elem, amelyre B1+x−y bázisaM-nek, ami éppen a 2.4.1 állítás.

(2.15) igazolásához figyeljük meg, hogy egy X halmaz rangja azt méri, maximum mennyire tud egy bázis X-be belemetszeni. Mármost |B ∩X| maximumát, aholB duális bázis, úgy határozhatjuk meg, hogy veszünkM -nek egy olyanB bázisát, amelyre |B∩X|minimális, azaz amelyre |B−X| maximális. Ez a maximum nyilvánr(S−X). Így a minimális|B∩X|értéke r(S)−r(S−X), amiből a keresett|B∩X|maximuma, azazr(X) =|X| −

−r(S) +r(S−X).

A definícióból rögtön látszik, hogy egyX ⊆S halmaz akkor és csak akkor függetlenjeM-nek, ha a komplementere generátora a duálisnak.

Megjegyezzük, hogy most már világos, miért is kellett a 64. feladat szerint az óvatos algoritmusnak maximális súlyú bázis meghatározására helyesen mű-ködnie. Ugyanis ez az algoritmus pontosan azt teszi, amit a mohó algoritmus

2.6. Matroid műveletek 97 tesz a duális matroid minimális súlyú bázisának megkeresésekor. Márpedig a maximális súlyú eredeti bázisok és a minimális súlyú duális bázisok nyilván egymás komplementerei.

19. Gyakorlat. Igazoljuk, hogy r(X) +t(X) =|X|, aholr a duális rang-függvénye.

20. Gyakorlat. Mutassuk meg, hogy egy matroid egyBbázisának bázisgráfja ugyanaz, mint a duális matroidB:=S−B bázisának bázisgráfja.

21. Gyakorlat. Igazoljuk, hogy egy matroid akkor és csak akkor összefüggő, ha a duálisa is az.

22. Gyakorlat. Igazoljuk, hogy az első szakaszban leírt csonkolás és nyújtás műveletek egymás duálisai abban az értelemben, hogy egy matroid csonkolt-jának a duálisa nem más, mint a duális matroid nyújtottja. Hasonlóképp, a nyújtott duálisa ugyanaz, mint a duális csonkoltja.

23. Gyakorlat. Igazoljuk, hogy egy matroid köre a duális matroid vágása, egy vágása pedig a duális matroid köre.

Mátrixmatroid duálisa

2.6.2. Tétel. Ha egyM = (S,F)matroid valamelyF test feletti mátrixmat-roid, akkor duálisa isF feletti mátrixmatroid.

Bizonyítás. LegyenS ={s1, . . . , sn}. Legyen A olyan mátrix, melynek ele-mei F-ből valók, oszlopai megfelelnek az S elemeinek, és az oszlopok egy részhalmaza pontosan akkor lineárisan független, ha a megfelelő részhalmaza S-nek F-hez tartozik. Azt mondjuk, hogy az A mátrix reprezentálja az M matroidot.

Világos, hogy ha azAsorát megszorozzuk egy nemnulla elemmel, akkor az oszlopok lineáris függősége, illetve függetlensége változatlan marad. Ugyanez érvényes, ha egy sort hozzáadunk egy másikhoz, vagy ha két sort felcserélünk.

Hasonlóképp, ha az A egy sora lineárisan függ a többi sortól, akkor a sor kihagyásával keletkező mátrix is reprezentáljaM-et.

LegyenB :={s1, s2, . . . , sr}a matroid egy bázisa. A fenti műveletek egy-más utáni alkalmazásával (magyarul Gauss-eliminációval) elérhetjük, hogy az Amátrixrsorból álljon, és az elsőroszlopa egységmátrixot alkosson. Jelölje CazAmátrix maradékr×(n−r)-es részét. Tekintsük azA0:= (CT, En−r) mátrixot, aholCT a C transzponáltja, En−r pedig az (n−r)×(n−r)-es egységmátrix.

Az A0 mátrix rangja nyilván n−r. Azt állítjuk, hogy A0 mátrix M0 mátrix-matroidja éppen az M duálisa. Legyen P egy r elemű részhalmaza

S-nek. Feltehetjük, hogyP={si, . . . , si+r−1}. AmennyibenP =B, úgyS−

−B-nek azEn−r egységmátrix felel megA0-ben, vagyis ebben az esetbenP bázisaM-nek ésS−P bázisaM0-nek.

HaP 6=B, akkor legyenka legkisebb index, amelyresk 6∈B. Ugyanazt a P betűt használhatjuk azAmátrixban aP részhalmaznak megfelelőr×r-es részmátrix jelölésére. JelöljePaPmátrixnak azt a részmátrixát, amely aP elsők−ioszlopának és utolsók−isorának elhagyásával keletkezik. MivelP konstruálásakor aP-ből törölt sorok és oszlopok metszete egységmátrix, ezért aP részhalmaz akkor és csak akkor bázisaM-nek, haP nemszinguláris.

Tekintsük most azS−P-nek megfelelő oszlopokatA0-ben, és legyenT az A0-nek az elsőr−(k−i)oszlopa és az elsőr−(k−i)sora által meghatározott részmátrixa. MivelT az S−P-nek megfelelő négyzetes mátrixból olyan so-rok és oszlopok törlésével keletkezik, amelyek metszete egységmátrix,S−P akkor és csak akkor független M0-ben, ha aT mátrix nemszinguláris. De a konstrukció miatt aT mátrix éppenPtranszponáltja, így megkaptuk, hogy P akkor és csak akkor bázisM-ben, haS−P bázisM0-ben.

A valós számok teste felett reprezentálható duális matroidpároknak szem-léletes geometriai tartalmuk van : egymásra ortogonális kiegészítő altereknek felelnek meg. LegyenA1 egyr×n-es valós mátrix, melynek sorai lineárisan függetlenek, és legyenM1az oszlophalmazon értelmezett mátrixmatroid. Lé-tezik egy(n−r)×nméretűA2mátrix, amelynek sorai lineárisan függetlenek, és minden sora ortogonális az A1 minden sorára. Vagyis az A1 ésA2 mát-rixok sorterei egymás ortogonális kiegészítő alterei. Jelölje M2 az oszlopok halmazán azA2 által definiált mátrixmatroidot.

Azt állítjuk, hogy M1 ésM2 egymásnak duálisai. A dolog szimmetriája miatt ehhez elég azt belátni, hogy haB1 azM1 bázisa, akkorB2:=S−B1

függetlenM2-ben. Tegyük fel indirekt, hogy nem az. Ekkor létezik egyx6= 0 vektor, amelyben aB1-nek megfelelő komponensek nullák, és amelyreA2x=

= 0. Ez azt jelenti, hogy x ortogonális az A2 minden sorára, és így benne van van azA1 sorterében, vagyis léteziky(rdimenziós) vektor, amelyrex=

= yA1. Mivel x 6= 0, így y 6= 0. De ez azt jelenti, hogy az y ortogonális a B1-nek megfelelőA1-beli oszlopokra, vagyis ezen oszlopok nem lineárisan függetlenek, ellentmondásban a feltevéssel, hogyB1 bázisaM1-nek.

Grafikus matroid duálisa, síkgráf síkduálisa

Látjuk tehát, hogy reprezentálható matroid duálisa is reprezentálható. Fel-vetődik a kérdés, hogy egy grafikus matroid duálisa mikor grafikus. Érdekes módon ez gráfok síkba rajzolhatóságával van kapcsolatban. LegyenG össze-függő, síkba rajzolható gráf, és tekintsük egy konkrét síkba rajzolását. Ehhez elkészíthető aG síkduális gráf oly módon, hogy minden tartományba elhe-lyezzük aG-nak egy csúcsát, és kettőtαpárhuzamos éllel összekötünk, ha a

2.6. Matroid műveletek 99 megfelelő tartományoknakαközös éle vanG-ben. A konstrukcióból adódik, hogyGsíkbarajzolt gráf, amelynek annyi csúcsa van, mint ahány tartomá-nya a síkba rajzoltG-nek, és az élei egy-egy értelmű megfeleltetésben vannak aGéleivel. Hangsúlyozzuk, hogy a sík-duális a gráf egy konkrét síkba rajzo-lásához rendel egy síkba rajzolt gráfot, és előfordulhat, hogyGkét különböző síkba rajzolásához tartozó síkduális gráfok nem izomorfak egymással. (Tétel : 3-összefüggő gráfoknál ez már nem fordulhat elő.)

Hurokélnek a duálisban elvágó él felel meg, és megfordítva. Általánosab-ban, nem nehéz bebizonyítani, hogy a síkgráf egy körének a síkduális gráf egy elemi vágása felel meg, míg egy elemi vágásának a síkduális gráf egy köre. (A dolog azon a megfigyelésen múlik, hogy egy síkba rajzolt gráf köre a síkot bel-ső és külbel-ső részre osztja.) Ebből rögtön következik, hogy haF aG= (V, E) síkgráf feszítő fája, akkor az E −F-nek megfelelő élhalmaz a duális gráf-nak feszítő fája. Ebből adódik, hogy síkba rajzolt gráf és síkduális gráfjágráf-nak körmatroidjai egymásnak (matroid-) duálisai. Továbbá, hogy aGkülönböző síkba rajzolásaihoz tartozó síkduális gráfok, bár nem biztosan izomorfak, de körmatroidjuk ugyanaz (nevezetesenGkörmatroidjának duálisa).

Megállapítottuk tehát, hogysíkgráf körmatroidjának duálisa mindig gra-fikus. Ezen kijelentés megfordítása is érvényes, vagyishogy nem síkba raj-zolható gráf körmatroidjának duálisa nem grafikus. (A bizonyítás vázlata a következő. Először kimutatja az ember, hogy ha egy gráf körmatroidjának duálisa grafikus, akkor ugyanez érvényes egy él elhagyásával vagy összehú-zásával keletkező gráfra. A Kuratowski-tétel szerint ha egy gráf nem síkbeli, akkor pontok elhagyásával, valamint élek egymás utáni elhagyásával, illetve összehúzásával megkaphatjuk a két Kuratowsgráf egyikét. Elég tehát ki-mutatni, hogy aK5és aK3,3körmatroidjainak duálisa nem grafikus. Nézzük például aK5 ötpontú teljes gráfot. A körmatroidM duálisának rangja10−

−4 = 6. HaM grafikus, azaz egyG0 (összefüggő) gráf körmatroidja, akkor G0-nek 7 pontja van. MivelK5-ben minden kör legalább három elemű, azM0 matroidban minden vágás legalább három elemű, és így G0 minden pontjá-nak a foka legalább 3. De akkorG0-nek legalábbd7∗3/2e= 11éle kell hogy legyen, holott csak 10 éle van. Hasonló meggondolással látható, hogy K3,3

körmatroidjának M0 duálisa sem grafikus. Valóban, ha M0 valamely össze-függőG0 gráf körmatroidja lenne, akkor G0-nek 5 pontja van (merthogyM0 rangja 9-5=4). Mivel K3,3-ban mindegyik kör legalább 4 elemű, azM0-ben mindegyik vágás legalább 4 elemű, és ezértG0-ben mindegyik pont foka leg-alább4.G0-ben tehát legalább5∗4/2 = 10élnek kell lennie, de csak 9 van.) Mivel egy feszítő fa élszáma eggyel kisebb, mint a pontszáma, azt kapjuk, hogyF eggyel kevesebb élből áll, mint aGcsúcsainak száma, ésE−Feggyel kevesebb élből áll, mintG csúcsainak száma, ami épp aGtartományainak száma. E kettő összeadásával nyerjük az Euler-formulát, amely szerint egy

síkba rajzolt gráf csúcsainak és tartományainak együttes száma kettővel na-gyobb, mint a gráf éleinek a száma.

In document Diszkrét optimalizálás (Pldal 104-108)