diskretna matematika - predavanje - jovanka...

31
DISKRETNA MATEMATIKA - PREDAVANJE - Jovanka Pantovi´ c Svako distribuiranje celog ili delova ovih slajdova ZABRANJENO je i predstavlja povredu autorskog prava. January 6, 2021 1 / 31

Upload: others

Post on 18-Feb-2021

109 views

Category:

Documents


2 download

TRANSCRIPT

  • DISKRETNA MATEMATIKA- PREDAVANJE -

    Jovanka Pantović

    Svako distribuiranje celog ili delova ovih slajdova

    ZABRANJENO je i predstavlja povredu autorskog prava.

    January 6, 2021 1 / 31

  • 1 Definicija stabla

    2 Karakterizacija stabla

    3 Grafovi i konture

    4 Pokrivajuća stabla

    5 Algoritmi za konstrukciju pokrivajućeg stabla

    6 Priferov niz

    January 6, 2021 2 / 31

  • Definicija stabla

    Tema 1

    Definicija stabla

    January 6, 2021 3 / 31

  • Definicija stabla

    Stablo

    DefinitionZa prost graf G = (V,E) kažemo da je stablo ako važi:

    (i) G je povezan graf i(ii) G je acikličan graf.

    January 6, 2021 4 / 31

  • Karakterizacija stabla

    Tema 2

    Karakterizacija stabla

    January 6, 2021 5 / 31

  • Karakterizacija stabla

    (i)⇔ (ii)

    TheoremNeka je G = (V,E) i |V | = n ≥ 2. Tada je G stablo ako i samo ako zasvaka dva čvora u, v ∈ V postoji jedinstven uv-put.Za n = 2 tvrd̄enje sledi direktno. Pretpostavićemo da je n ≥ 3.(⇒)Pretpostavimo suprotno,

    U1 =uu1 . . . uiui+1 . . . umv

    U2 =uv1 . . . vnv

    {ui, ui+1} ∈ U1 {ui, ui+1} 6∈ U2

    u

    v1 vn

    v

    um

    ui+1ui

    u1

    Ovde ćemo prikazati slučaj kada je u, v 6∈ {ui, ui+1}, ostali slučajevi se izvode slično. Sada je

    ui . . . u1uv1 . . . vnvum . . . ui+1

    uiui+1-šetnja u grafu G− {ui, ui+1}. Ako u grafu G− {ui, ui+1} postoji uiui+1-šetnja, ondapostoji i uiui+1-put. Dodavanjem grane uiui+1 dobijamo konturu u grafu G, što je u suprotnosti

    sa pretpostavkom da je G stablo.

    January 6, 2021 6 / 31

  • Karakterizacija stabla

    (i)⇔ (ii)

    TheoremNeka je G = (V,E) i |V | = n ≥ 2. Tada je G stablo ako i samo ako zasvaka dva čvora u, v ∈ V postoji jedinstven uv-put.

    (⇐) Ako za svaka dva čvora u, v ∈ V postoji uv-put, onda je G po definiciji povezan graf.Treba još pokazati da je G acikličan. Pretpostavimo suprotno, da u grafu G postoji kontura oblika

    w1w2w3 . . . wlw1.

    Tada postoje bar dva puta od w1 do wl:

    w1wl w1w2w3 . . . wl

    što je u kontradikciji sa pretpostavkom da za svaka dva čvora postoji jedinstven put od jednog dodrugog.To znači da je naša pretpostavka netačna i da je G acikličan graf.

    January 6, 2021 7 / 31

  • Karakterizacija stabla

    Pomoćna lema

    LemmaNeka je G = (V,E) stablo i neka je |V | = n ≥ 2. Tada postoje bar dvačvora stepena 1.

    Kako je G stablo, G je povezan graf. Pretpostavimo da je

    u1u2 . . . ul (1)

    najduži put u grafu G (može biti više takvih puteva iste dužine). Pokazaćemo da je tada

    dG(u1) = dG(ul) = 1.

    Pretpostavimo da je dG(u1) ≥ 2 (slično za dG(ul) ≥ 2).Tada postoji čvor w (6= u2)sa osobinom u1w ∈ E.

    (i)Ako w ∈ {u3, . . . , ul} onda G imakonturu, što je u kontradikciji sa pret-postavkom da je G stablo.

    u1

    u2

    wul−1

    ul

    (ii)Ako w 6∈ {u3, . . . , ul}, onda je putwu1u2 . . . ul duži od (1), što dovodi dokontradikcije. u1

    u2

    w

    ul−1

    ul

    January 6, 2021 8 / 31

  • Karakterizacija stabla

    Pomoćna lema

    Lemma

    Neka je G = (V,E), |V | = n ≥ 2, i neka je dG(u) = 1 za neki čvoru ∈ V. Tada je G stablo ako i samo ako je G− u stablo.

    (⇒) Pretpostavimo da je G stablo.Da bismo pokazali da je G− u stablo, treba pokazati sledeće: (i) G− u je povezan; (ii) G− u jeacikličan.

    (i) Posmatrajmo dva proizvoljna čvora v, w ∈ V (G− u). Kako je G povezan, postoji vw-put uG. Ovaj put ne sadrži čvor stepena 1 koji je različit od v i w, što znači da ne sadrži u.Znači, taj put je ujedno i put u G− u, što pokazuje da je G− u povezan.

    (ii) Kako je G acikličan, to je i G− u acikličan, zato što brisanjem grane iz acikličnog grafa nemožemo dobiti konturu.

    January 6, 2021 9 / 31

  • Karakterizacija stabla

    Pomoćna lema

    Lemma

    Neka je G = (V,E), |V | = n ≥ 2, i neka je dG(u) = 1 za neki čvoru ∈ V. Tada je G stablo ako i samo ako je G− u stablo.

    (⇐) Neka je G− u stablo.Od acikličnog grafa, dodavanjem nazad lista u ne možemo dobiti ciklus u tom grafu.Svaki čvor konture ima stepen bar dva, a čvor u je stepena 1.Svaka dva čvora koja su povezana u G− u ostaju povezana i u G.Ostaje još da pokažemo da postoji uw-put za svaki čvor w ∈ V (G− u).Kako je dG(u) = 1 postoji v ∈ V (G− u) sa osobinom {u, v} ∈ E(G).Iz pretpostavke da je G− u stablo, sledi da je G− u povezan graf, odakle za svakow ∈ V (G− u) postoji wv-put u G− u.Dodavanjem grane {u, v} tom putu, dobijamo put u G.

    January 6, 2021 10 / 31

  • Karakterizacija stabla

    (i)⇔ (iii)

    TheoremNeka je G = (V,E) i |V | = n ≥ 2. Tada je G stablo ako i samo ako je Gpovezan graf i |E| = n− 1.

    (⇒) (indukcijom po n)n = 2 : stablo sa 2 čvora ima jednu granuTn ⇒ Tn+1 :Neka je dato stablo

    G = (V,E) |V | = n+ 1

    Neka je u list u tom stablu i {u, v} (jedina) grana incidentna sa u :

    G′ = G− u = (V \ {u}, E \ {{u, v}})

    |E| = |E(G′)|+ 1 = n+ 1

    January 6, 2021 11 / 31

  • Karakterizacija stabla

    (i)⇔ (iii)

    TheoremNeka je G = (V,E) i |V | = n ≥ 2. Tada je G stablo ako i samo ako je Gpovezan graf i |E| = n− 1.

    (⇐) Indukcijom po n.Baza n = 2 : Povezan graf sa dva čvora i jednom granom je stablo.

    Induktivni korak Tn−1 ⇒ Tn : Ako je E(G) = V (G)− 1, onda postoji čvor u sa osobinomdG(u) ≤ 1. Kako je G povezan, mora važiti dG(u) = 1 i graf G′ − u je povezan graf sa osobinom|V (G′)| = |V (G)| − 1 = n i |E(G′)| = |E(G)| − 1 = n− 1. Prema induktivnoj pretpostavci jesada G′ − u stablo. Prema Lemi 6, G je stablo.

    January 6, 2021 12 / 31

  • Karakterizacija stabla

    (i)⇔ (iv)

    TheoremNeka je G = (V,E) i |V | = n ≥ 2. Tada,

    G stabloakko

    G je povezan i brisanjem proizvoljne grane dobija se nepovezan graf.

    (⇒) Ako je G stablo, onda je G po definiciji povezan graf i acikličan graf.

    Pretpostavimo suprotno, tj. da je G− {u, v} povezan, za neku granu {u, v} ∈ E.⇓ (po definiciji povezanog grafa)

    Postoji uv-put P u G− {u, v} (a samim tim i u G) .⇓ (po definiciji konture)

    P + {u, v} je kontura u G (kontradikcija sa pretpostavkom da je G acikličan).

    January 6, 2021 13 / 31

  • Karakterizacija stabla

    (i)⇔ (iv)

    TheoremNeka je G = (V,E) i |V | = n ≥ 2. Tada,

    G stabloakko

    G je povezan i brisanjem proizvoljne grane dobija se nepovezan graf.

    (⇐) Treba samo pokazati da je G acikličan.

    Pretpostavimo da je G povezan i sadrži konturu C.⇓ (prema tvrd̄enju sa prethodnog predavanja)

    G− {u, v} povezan, {u, v} ∈ C (kontradikcija sa pretpostavkom da je G povezan)

    January 6, 2021 14 / 31

  • Karakterizacija stabla

    (i)⇔ (v)

    TheoremNeka je G = (V,E) i |V | = n ≥ 2. Tada,

    G je stabloakko

    G je acikličan i dodavanjem grane se dobija graf koji sadrži konturu.

    (⇒)

    G je stablo⇓

    G je acikličan⇓

    Izaberimo {u, v} 6∈ E(G). Postoji uv-put P u G (zato što je G povezan).⇓

    P + {u, v} je kontura u G+ {u, v}.

    January 6, 2021 15 / 31

  • Karakterizacija stabla

    (i)⇔ (v)

    TheoremNeka je G = (V,E) i |V | = n ≥ 2. Tada,

    G je stabloakko

    G je acikličan i dodavanjem grane se dobija graf koji sadrži konturu.

    (⇐) Treba pokazati da je G povezan. Neka su u i v proizvoljni čvorovi iz V.Imamo dva slučaja:

    (i) Ako je {u, v} ∈ E, onda je ta grana ujedno i uv-put.

    (ii) Ako {u, v} 6∈ E, onda G+ {u, v} sadrži konturu koja sadrži uv. Oduzimanjem sa konturegrane uv dobijamo uv-put u G.

    January 6, 2021 16 / 31

  • Karakterizacija stabla

    Karakterizacija stabla

    Theorem (Karakterizacija stabla)

    Neka je G = (V,E) prost graf. Sledeća tvrd̄enja sa ekvivalentna:(i) G je stablo.(ii) Za svaka dva čvora u, v ∈ V (G) postoji jedinstven put od u do v.(iii) G je povezan i |E(G)| = |V (G)| − 1.(iv) G je minimalan povezan graf.(v) G je maksimalan acikličan graf.

    (i)⇔ (ii) (i)⇔ (iii) (i)⇔ (iv) (i)⇔ (v).

    January 6, 2021 17 / 31

  • Grafovi i konture

    Tema 3

    Grafovi i konture

    January 6, 2021 18 / 31

  • Grafovi i konture

    LemmaNeka je G = (V,E), |V | = n, |E| ≥ n, sa osobinom da su G1, . . . , Glnjegove komponente povezanosti sa k1, . . . , kl čvorova, respektivno.Tada postoji i ∈ {1, . . . , l} sa osobinom |E(Gi)| ≥ ki.

    Pp. suprotno,

    n ≤ |E(G)| = |E(G1)|+ . . .+ |E(Gl)|< k1 + . . . kl = n

    January 6, 2021 19 / 31

  • Grafovi i konture

    Theorem

    Neka je G = (V,E), gde je |V | = n ≥ 2 i |E| ≥ n.Tada G sadrži konturu.

    (i) G je povezan:ako G nema konturu, onda je stablo⇒ G ima n− 1 grana.

    (ii) G nije povezan: neka su G1, . . . , Gl komponente povezanosti grafa G sa osobinom

    |V (G1)| = k1, . . . , |V (Gl)| = kl k1 + . . .+ kl = n.

    Prema prethodnoj lemi, postoji komponenta povezanosit Gi za koju je |E(Gi)| ≥ ki.Ako Gi nema konturu, onda je Gi stablo, a samim tim ima ki−1 granu, što je kontradikcija.Znači, komponenta Gi ima konturu, a to je ujedno i kontura u grafu G.

    January 6, 2021 20 / 31

  • Pokrivajuća stabla

    Tema 4

    Pokrivajuća stabla

    January 6, 2021 21 / 31

  • Pokrivajuća stabla

    Pokrivajuća stabla

    Definicija

    G1 je pokrivajuće stablo grafa G ako je(i) G1 je pokrivajući podgraf od G (V (G1) = V (G) i E(G1) ⊆ E(G))(ii) G1 je stablo.

    ZadatakKoliko ima različitih pokrivajućih stabala (označenog) grafa K4?

    January 6, 2021 22 / 31

  • Pokrivajuća stabla

    Pokrivajuća stabla

    TeoremaGraf ima pokrivajuće stablo ako i samo ako je povezan.

    (⇒) Sledi direktno iz definicije stabla.(⇐)Neka je G povezan.

    |V (G)| = n ≥ 2⇒ |E(G)| ≥ n− 1 (u suprotnom graf ne bi bio povezan)Posmatraćemo dva slučaja:

    |E(G)| = n− 1 : povezan graf sa n− 1 čvorova je stablo|E(G)| = k ≥ n : sledeća lema.

    January 6, 2021 23 / 31

  • Pokrivajuća stabla

    Pokrivajuća stabla

    LemaAko je G povezan graf sa osobinom |V (G)| = n. Ako je k ≥ n i|E(G)| = k onda G ima pokrivajuće stablo.

    Dokaz: (indukcijom po k)Graf sa n čvorova i bar n grana ima konturu.

    Baza k = n : Oduzimanjem iz grafa jedne grane konture, graf ostaje povezan i pokriva i dalje svečvorove. Povezan graf sa n− 1 čvorova je stablo.

    Induktivni korak Tk−1 ⇒ Tk : Ako G sadrži konturu, onda možemo konstruisati povezan graf G′

    brisanjem proizvoljne grane konture. Primetimo da je V (G′) = V (G) i E(G′) ⊆ E(G). Kako jeG′ povezan, prema induktivnoj pretpostavci, G′ ima pokrivajuće stablo, a to je ujedno i

    pokrivajuće stablo grafa G.

    January 6, 2021 24 / 31

  • Algoritmi za konstrukciju pokrivajućeg stabla

    Tema 5

    Algoritmi za konstrukciju pokrivajućeg stabla

    January 6, 2021 25 / 31

  • Algoritmi za konstrukciju pokrivajućeg stabla

    Konstrukcija pokrivajućeg stabla

    Zadatak1 Konstruisati pokrivajuće stablo pretraživanjem u dubinu.2 Konstruisati pokrivajuće stablo pretraživanjem u širinu.3 Krenuti od proizvoljnog čvora i u svakom koraku dodati granu za

    koju je jedan čvor već izabran, a drugi još uvek nije.4 Urediti grane, a zatim tim redom dodavati grane koje ne prave

    konturu (inače preći na sledeću granu).

    January 6, 2021 26 / 31

  • Priferov niz

    Tema 6

    Priferov niz

    January 6, 2021 27 / 31

  • Priferov niz

    Priferov niz

    Neka je G = (V,E) stablo u kojem su čvorovi označeni prirodnimbrojevima 1, . . . , n. Za takvo stablo kažemo da je označeno. Priferovkod je niz

    p(G) = (p1, . . . , pn−2)

    koji na jedinstven način karakteriše stablo G.

    1 G0 = G i i = 1.2 Izaberimo list u sa najmanjom oznakom i posmatrajmo dalje

    Gi := Gi−1 − u3 pi je jednak oznaci čvora koji je susedan čvoru u4 Ako je i = n− 2 onda je algoritam završen,

    inače i povećamo za 1 i vratimo se na korak 2.

    January 6, 2021 28 / 31

  • Priferov niz

    Priferov niz - rekonstrukcija označenog stabla

    Neka je p(G) = (p1, . . . , pn−2) Priferov niz dobijen od označenog stablaG.

    Za l1 = min({1, . . . , n} \ {p1, . . . , pn−2}) kreiraj granu{l1, p1} ∈ T (G).Za i = 2..n− 2 i

    li = min({1, . . . , n} \ ({pi, . . . , pn−2} ∪ {l1, . . . , li−1})= min(({1, . . . , n} \ {l1, . . . , li−1}) \ {pi, . . . , pn−2})

    kreiraj granu {li, pi} ∈ T (G).Poslednja grana je uv, gde je u, v ∈ {1, . . . , n} \ {l1, . . . , ln−2}.

    January 6, 2021 29 / 31

  • Priferov niz

    ZadatakKonstruisati označeno stablo čiji je Priferov niz (1, 2, 1, 2, 1, 2).

    ZadatakKonstruisati označeno stablo čiji je Priferov niz (5, 1, 1, 4, 5, 1).

    January 6, 2021 30 / 31

  • Priferov niz

    Priferov kod

    Teorema

    Kompletan graf Kn ima nn−2 različitih pokrivajućih stabala.

    Dokaz sledi na osnovu principa bijekcije.Preslikavanje skupa svih stabala u skup Priferovih nizova jebijekcija.Broj nizov elemenata iz skupa {1, . . . , n} dužine n je nn−2.

    January 6, 2021 31 / 31

    Definicija stablaKarakterizacija stablaGrafovi i konturePokrivajuca stablaAlgoritmi za konstrukciju pokrivajuceg stablaPriferov niz