Forelesning 26. MAT1030 Diskret Matematikk. Trær med rot. Litt repetisjon. Definisjon. Forelesning 26: Trær. Roger Antonsen

Like dokumenter
MAT1030 Forelesning 26

Beskjeder. MAT1030 Diskret matematikk. Oppsummering. Oppsummering

Forelesning 25. Trær. Dag Normann april Beskjeder. Oppsummering. Oppsummering

MAT1030 Diskret Matematikk

MAT1030 Diskret matematikk

Sist forelesning snakket vi i hovedsak om trær med rot, og om praktisk bruk av slike. rot. barn

Oppsummering. MAT1030 Diskret matematikk. Oppsummering. Oppsummering. Eksempel

av Erik Bédos, Matematisk Institutt, UiO, 25. mai 2007.

Ved opp -og utladning av kondensatorer varierer strøm og spenning. Det er vanlig å bruke små bokstaver for å angi øyeblikksverdier av størrelser.

Forelesning nr.9 INF 1410

MAT1030 Diskret Matematikk

Forelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Dag Normann

MAT1030 Forelesning 25

t [0, t ]. Den er i bevegelse langs en bane. Med origo menes her nullpunktet

Matematikk 1P-Y. Teknikk og industriell produksjon

MAT1030 Diskret Matematikk

1. Betrakt følgende modell: Y = C + I + G C = c 0 + c(y T ), c 0 > 0, 0 < c < 1 T = t 0 + ty, 0 < t < 1

Forelesning 28. Grafer og trær, eksempler. Dag Normann - 5. mai Grafer og trær. Grafer og trær. Grafer og trær

Løsningsforslag til regneøving 5. Oppgave 1: a) Tegn tegningen for en eksklusiv eller port ved hjelp av NOG «NAND» porter.

MAT1030 Diskret matematikk

Innledning. MAT1030 Diskret matematikk. Kapittel 11. Kapittel 11. Forelesning 33: Repetisjon

Løsningsforslag for regneøving 3

MAT1030 Diskret matematikk

Harald Bjørnestad: Variasjonsregning en enkel innføring.

Levetid og restverdi i samfunnsøkonomisk analyse

Forelesning 33. Repetisjon. Dag Normann mai Innledning. Kapittel 11

YF kapittel 3 Formler Løsninger til oppgavene i læreboka

Forelesning 4 og 5 MET3592 Økonometri ved David Kreiberg Vår c) Hva er kritisk verdi for testen dersom vi hadde valgt et signifikansnivå på 10%?

Forelesning 31: Repetisjon

Forelesning 27. MAT1030 Diskret Matematikk. Bevistrær. Bevistrær. Forelesning 27: Trær. Roger Antonsen. 6. mai 2009 (Sist oppdatert: :28)

Øving 1: Bevegelse. Vektorer. Enheter.

System 2000 HLK-Relais-Einsatz Bruksanvisning

(x 0,y 0,0) α. Oppgave 3. Ved tiden t har vi følgende situasjon: α = ω1t β = ω2t

Løsning: V = Ed og C = Q/V. Spenningen ved maksimalt elektrisk felt er

Et samarbeid mellom kollektivtrafikkforeningen og NHO Transport. Indeksveileder Indeksregulering av busskontrakter. Indeksgruppe

UNIVERSITETET I OSLO. Det matematisk-naturvitenskapelige fakultet. Oppgave 1 OpenGL (vekt 1 5 )

FYS3220 Oppgaver om Fourieranalyse

Virkninger av ubalansert produktivitetsvekst («Baumols sykdom»)

UNIVERSITETET I OSLO

Hovedtema: Virkninger av offentlige inngrep (S & W kapittel 5 og 10 i 3. utgave og kapittel 4 og 10 i 4. utgave)

Internasjonale prisimpulser til importerte konsumvarer

Løsningsforslag til øving 9 OPPGAVE 1 a)

Bruksanvisning for NTNUs telefonsvar-tjeneste på web

Enkle kretser med kapasitans og spole- bruk av datalogging.

Dato: 15.september Seksjonssjef studier og etter utdanning Arkivnr 375/2008

Oppgaveverksted 3, ECON 1310, h14

Sensorveiledning UNIVERSITETET I OSLO ØKONOMISK INSTITUTT. ECON 1310 Obligatorisk øvelsesoppgave våren 2012

~/stat230/teori/bonus08.tex TN. V2008 Introduksjon til bonus og overskudd

Løsningsforslag til obligatorisk øvelsesoppgave i ECON 1210 høsten 06

Forelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Roger Antonsen

Eksamen R2, Hausten 2009

Skjulte Markov Modeller

Løysingsforslag for oppgåvene veke 17.

Definisjon: Et sortert tre

Eksempel på beregning av satser for tilskudd til driftskostnader etter 4

Eksamen i STK4060/STK9060 Tidsrekker, våren 2006

Binære søketrær. En ordnet datastruktur med raske oppslag. Sigmund Hansen

og ledelse av forsyningskjeder Kapittel 4 Del A - Prognoser SCM200 Innføring i Supply Chain Management

MAT1030 Diskret matematikk

Oppsummering. MAT1030 Diskret matematikk. Oppsummering. Oppsummering. Forelesning 23: Grafteori

Betydning av feilspesifisert underliggende hasard for estimering av regresjonskoeffisienter og avhengighet i frailty-modeller

Funksjonslære Derivasjon Matematikk 2

Bevegelse i én dimensjon

Eksamensoppgave i FIN3006 Anvendt tidsserieøkonometri

Bevegelse i én dimensjon (2)

Obligatorisk oppgave ECON 1310 høsten 2014

Sensorveiledning ECON2200 Våren 2014

, og dropper benevninger for enkelhets skyld: ( ) ( ) L = 432L L = L = 1750 m. = 0m/s, og a = 4.00 m/s.

MAT1030 Forelesning 25

Ådne Cappelen, Arvid Raknerud og Marina Rybalka

INF3400 Del 1 Teori og oppgaver Grunnleggende Digital CMOS

Go to and use the code Hva var viktig i siste forelesning? FYS-MEK

3. Beregning av Fourier-rekker.

Eksamensoppgave i TFY4190 Instrumentering

Løsningsforslag øving 6, ST1301

Kort om ny reguleringskurvelogikk. Trond Reitan 19/8-2013

Eksamensoppgave i TFY4190 Instrumentering

Generell rekursjon og induksjon. at(n) + bt(n 1) + ct(n 2) = 0

Vedlegg 1. Utledning av utbyttebrøken Eksempler på egenkapitaltransaksjoner med utbyttebrøk Tilbakeholdelse av overskudd

Forelesning 23. Grafteori. Dag Normann april Oppsummering. Oppsummering. Oppsummering. Digresjon: Firefarveproblemet

Spesiell relativitetsteori

H Ø G S K O L E N I B E R G E N Avdeling for lærerutdanning

Sensorveiledning UNIVERSITETET I OSLO ØKONOMISK INSTITUTT. ECON 1310 Eksamensoppgave høsten 2011

Aliasing: Aliasfrekvensene. Forelesning 19.februar Nyquist-Shannons samplingsteorem

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

Jernbaneverket. OVERBYGNING Kap.: 8 t Regler for prosjektering Utgitt:

INF2810: Funksjonell Programmering

1. Vis hvordan vi finner likevektsløsningen for Y. Hint: Se forelesningsnotat 4 (Økonomisk aktivitet på kort sikt), side 23-24

Elgbeiteregistrering i Trysil og omegn 2005

FYSIKK-OLYMPIADEN

1 Trigonometriske Funksjoner Vekt: 1. 2 Trigonometriske Funksjoner Vekt: 1

Binære trær: Noen algoritmer og anvendelser

Faktor - en eksamensavis utgitt av ECONnect

Working Paper 1996:3. Kortere arbeidstid og miljøproblemer - noen regneeksempler for å illustrere mulige kortsiktige og langsiktige sammenhenger

INF2810: Funksjonell Programmering

Pengemengdevekst og inflasjon

INF november Stein Krogdahl (Litt mye tekst, med tanke på lettere repetisjon) Dagens tema: Kapittel 14:

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk

Transkript:

MAT1030 Diskre Maemaikk Forelesning 26: Trær Roger Anonsen Insiu for informaikk, Universiee i Oslo Forelesning 26 5. mai 2009 (Sis oppdaer: 2009-05-06 22:27) MAT1030 Diskre Maemaikk 5. mai 2009 2 Li repeisjon Trær med ro Prims algorime finne de minse uspennende ree i en veke graf en grådig algorime i den forsand a den vurderer lokal hva som er de bese nese skrie Dijksras algorime en av nodene er senrum finne de ree som gir kores mulig vei fra hver av de andre nodene il senrum Mariserepresenasjoner Trær med ro en av nodene har saus som ro Definisjon La T være e re med ro (ana a vi egner T med roen øvers). Med nivåe il en node mener vi anall kaner mellom noden og roen. Hvis de fins en kan mellom node a og b, og a har laves nivå (ligger øvers i egningen) sier vi a b er barne il a. Hvis de fins en si mellom o noder slik a en kan k i sien ligger innil nodene a og b (de vil si a sekvensen akb er en del av sien) nøyakig når b er barne il a, så vil den som har de høyese nivåe (ligger neders i egningen) være eerkommer il den andre, som omvend er forgjenger il den førse. MAT1030 Diskre Maemaikk 5. mai 2009 3 MAT1030 Diskre Maemaikk 5. mai 2009 4

Trær med ro Definisjon (Forsa) En node som ikke har noen barn er e blad eller en løvnode. En gren er en si fra roen il e blad. (Noen vil kalle dee en maksimal gren og la en gren være en si fra roen il en node.) Oppgave Vis a de finnes en bijeksjon mellom mengden av blader og mengden av grener i e re med ro. Binære rær Veldig mange rør har den egenskapen a hvis en node ikke er en bladnode, så har den nøyakig o barn. Vi skiller u disse ved en egen beegnelse. Definisjon E binær re er e re med ro slik a følgende holder. 1. Enhver node er enen en bladnode eller har nøyakig o barn. 2. Hvis en node har o barn, vil de ene barne beegnes som barne il vensre og de andre som barne il høyre De vensre delree får vi ved å fjerne roen og barne il høyre og alle des eerkommerne. Tilsvarende for de høyre delree. (I e delre blir de ene barne den nye roen.) I e re med kun én node kan vi ikke snakke om delrær. MAT1030 Diskre Maemaikk 5. mai 2009 5 MAT1030 Diskre Maemaikk 5. mai 2009 6 Traverseringer In-order-raversering En raversering av e re innebærer a vi leser nodene i ree i en besem rekkefølge og ufører operasjoner (som å skrive symboler) i en besem rekkefølge. 3 4 Vi skal se på re vanlige måer å raversere e re på. in-order raversering svarer il infiks noasjon: 3 4 pre-order raversering svarer il prefiks noasjon: 34 pos-order raversering svarer il posfiks noasjon: 34 Her er algorimen for den raverseringen som gir infiks noasjon hvis inpu er e synaksre. Algorime in-order raverse(t): 1. If T ikke er e blad hen 1.1. in-order raverse(vensre delre av T) 2. Oupu roen il T 3. If T ikke er e blad hen 3.1. in-order raverse(høyre delre av T) MAT1030 Diskre Maemaikk 5. mai 2009 7 MAT1030 Diskre Maemaikk 5. mai 2009 8

Pre-order-raversering 1 2 3 4 5 6 7 8 9 in-order-raversering gir 4 2 5 1 8 6 9 3 7 Her er algorimen for den raverseringen som gir polsk prefiks noasjon hvis inpu er e synaksre. Algorime pre-order raverse(t): 1. Oupu roen il T 2. If T ikke er e blad hen 2.1. pre-order raverse(vensre delre av T) 3. If T ikke er e blad hen 3.1. pre-order raverse(høyre delre av T) MAT1030 Diskre Maemaikk 5. mai 2009 9 MAT1030 Diskre Maemaikk 5. mai 2009 10 Pre-order-raversering Pos-order-raversering 1 2 3 4 5 6 7 8 9 Her er algorimen for den raverseringen som gir baklengs polsk noasjon, eller posfiks noasjon, hvis inpu er e synaksre. Algorime pos-order raverse(t): 1. If T ikke er e blad hen 1.1. pos-order raverse(vensre delre av T) 2. If T ikke er e blad hen 2.1. pos-order raverse(høyre delre av T) 3. Oupu roen il T pre-order-raversering gir 1 2 4 5 3 6 8 9 7 MAT1030 Diskre Maemaikk 5. mai 2009 11 MAT1030 Diskre Maemaikk 5. mai 2009 12

Pos-order-raversering Noasjon: infiks, prefiks, posfiks 1 2 3 4 5 6 7 8 9 pos-order-raversering gir 4 5 2 8 9 6 7 3 1 Når vi skriver usagnslogiske eller algebraiske urykk, er vi van il å skrive symbolene,,,, ec. mellom delurykkene. Denne skrivemåen er hisorisk beinge og kalles for infiks. Fordelen med forlengs og baklengs polsk noasjon, eller prefiks og posfiks, er a man slipper pareneser. Disse kan være bedre egne for innmaing i algorimer. Programmeringsspråke LISP er baser på bruk av polsk noasjon, og i gamle dager måe lommeregnere programmeres med baklengs polsk noasjon. Brukere av edioren Emacs vil oppdage a den innebygde kalkulaoren bruker baklengs polsk noasjon (RPN). MAT1030 Diskre Maemaikk 5. mai 2009 13 MAT1030 Diskre Maemaikk 5. mai 2009 14 Vi skal gi en grammaikk som definerer alle ermer i symbolene 0, 1, og i forlengs polsk, eller prefiks, noasjon. En erm er e urykk som beskriver e all. Vi skal se på alle måer å beskrive all på hvor vi bruker symbolene nevn over. Poenge med polsk noasjon er a funksjonssymbol, logiske bindeord og andre symboler vi bruker il å binde sammen enkle urykk il mer komplekse sees førs, og så kommer delurykkene eer, uen pareneser. En grammaikk er e se regler som foreller oss hvilke ord som ilhører de formelle språke vi vil beskrive. I informaikk-lieraur har man uvikle en rask skrivemåe for slike grammaikker. Term ::= 0 1 Denne definisjonen skal leses som følger: Mengden av ermer er den minse mengden som oppfyller 0 og 1 er ermer. Hvis og s er ermer, er s og s også ermer. Vi har se på ilsvarende konsruksjoner da vi så på formelle språk definer ved generell induksjon. En indukiv definisjon foreller oss a de ligger en resrukur bak hver ord i språke. Hvordan kan vi bruke rær il å besemme om e ord i alfabee {0, 1,, } er en erm eller ikke, og hvordan kan vi bruke rær il å finne en mer lesbar form av ermen? MAT1030 Diskre Maemaikk 5. mai 2009 15 MAT1030 Diskre Maemaikk 5. mai 2009 16

Er 00 100 en erm slik de ble definer på forrige side? Vi kan prøve å uvikle e synaksre for dee orde, hvor vi bruker boksaven for å markere a her må de så en enklere erm. Førse ilnærming il synaksree må være Den førse ukjene ermen må begynne med, så synaksree må se u som hvor = 00 100 hvor = 00 100. Her kan vi se direke hva de re -ene må så for, så vi får ree MAT1030 Diskre Maemaikk 5. mai 2009 17 MAT1030 Diskre Maemaikk 5. mai 2009 18 hvor = 100. 0 0 Vi kan forsee å avsløre hvordan synaksree må se u ved å lese problemorde vår fra vensre mo høyre. Vi ser a nese erm er e produk hvor førse fakor er summen av 1 og 0 og andre fakor er 0 (Vi er ikke ineresser i verdien av denne ermen, bare om de er en erm). De gir oss følgende fullsendige synaksre. MAT1030 Diskre Maemaikk 5. mai 2009 19 MAT1030 Diskre Maemaikk 5. mai 2009 20

Mer om noasjon 0 0 0 Når man bruker baklengs polsk noasjon på en lommeregner, aser man inn all og funksjonsurykk som, exp, sin i rekkefølge. Hver gang man aser inn e funksjonsurykk, vil lommeregneren oppfae sise all, eller de o sise allene, som inpu, og ersae disse med funksjonsverdien. De er alså funksjonsverdien som oppfaes som de sise alle du ase inn i forseelsen. 1 0 Skreve på vanlig infiks-form får vi De er ikke vanskelig å se a lommeregneren kan behandle en sekvens av all og funksjoner på bare en måe. De beyr a e urykk i baklengs polsk noasjon bare kan olkes på en måe. De samme gjelder da selvfølgelig for forlengs polsk noasjon. (0 0) ((1 0) 0). MAT1030 Diskre Maemaikk 5. mai 2009 21 MAT1030 Diskre Maemaikk 5. mai 2009 22 Mer om noasjon Induksjon og rekursjon for binære rær Synaksree for en erm eller e usagnslogisk urykk er uavhengig av om vi har bruk vanlig infiks noasjon, forlengs polsk eller baklengs polsk noasjon. Når synaksree er gi, så kan disse urykkene gjenskapes ved hjelp av de ulike raverseringsalgorimene. De er enkel å lage en algorime som ar e urykk, sjekker om de er korrek og som evenuel gir synaksree som oupu. Mengden av binære rær kan også defineres indukiv. Ugangspunke, eller induksjonsaren, blir nullree, ree som besår av en node og ingen kaner. Denne noden er da både ro og blad. Induksjonskrie besår i a vi ar o binære rær T v og T h, en ny ronode og o nye kaner, mo vensre il roen i T v og il høyre mo roen i T h. T v T h Sammensening av o binære rær il e. MAT1030 Diskre Maemaikk 5. mai 2009 23 MAT1030 Diskre Maemaikk 5. mai 2009 24

Induksjon og rekursjon for binære rær Induksjon og rekursjon for binære rær Definisjon Vi kan oppfae denne sammenseningen som en form for sum av o binære rær: vi legger sammen o rær og får e ny re. Vi kan god skrive T v T h for denne sammenseningen av rær. Merk a den kommuaive loven (x y = y x) ikke gjelder; de er essensiel hvilke av rærne som sees il vensre og hvilke som sees il høyre. Som grafer beyr de ikke så mye, men for rerekursjon er de vikig, siden vi der kan referere il vensre og høyre delre. Vi skal nå se på en form for produk av rær. Vi skriver for nullree. Vi definerer reproduke ved S = S (T v T h ) S = (T v S) (T h S) Poenge med å gi denne definisjonen er å gi e eksempel på hvordan man kan definere ing ved rekursjon på oppbyggingen av e re. Vi illusrerer hva som skjer ved e par eksempler på avla. Vi ser a effeken er å ersae alle bladnodene i T med kopier av S. Generel kan vi definere en funksjon f ved rekursjon over oppbyggingen av binære rær ved følgende. 1. Besemme hva f( ) er, når er nullree. 2. Besemme hvordan f(t) avhenger av de o delrærne f(t v ) og f(t h ), når T er e sammensa re. MAT1030 Diskre Maemaikk 5. mai 2009 25 MAT1030 Diskre Maemaikk 5. mai 2009 26 Induksjon og rekursjon for binære rær Hvis vi går ilbake il synaksrær, så kan vi se hvordan de re ulike noasjonsformene kan defineres via rerekursjon. De re algorimene svarer il hver sin rekursive funksjon. Vi definerer funksjonen infiks ved rerekursjon på følgende måe. Hvis roen i T er en bladnode med merke a, så lar vi infiks(t) = a. Hvis T er på formen T 1 T 2 lar vi infiks(t) = (infiks(t 1 ) infiks(t 2 )). De o andre funksjonene er definer på samme måe for bladnoder, og på følgende måe for sammensae rær. prefiks(t) = prefiks(t 1 )prefiks(t 2 ) posfiks(t) = posfiks(t 1 )posfiks(t 2 ) Bisekvenser og binære rær De er en inim sammenheng mellom bisekvenser og binære rær. For hver node i e binær re kan vi lage oss en ilsvarende bisekvens ved rekursjon på nivåe (avsanden il roen) il noden. La bi( ) være den omme sekvensen hvis er ronoden. Hvis a er en node med o barn, b il vensre og c il høyre, og bi(a) = x 1 x k, lar vi bi(b) = x 1 x k 0. bi(c) = x 1 x k 1. Denne definisjonen illusreres på avla. MAT1030 Diskre Maemaikk 5. mai 2009 27 MAT1030 Diskre Maemaikk 5. mai 2009 28

Bisekvenser og binære rær Bisekvenser og binære rær Omvend vil en endelig mengde X av bisekvenser, eller 0-1-sekvenser, besemme e binær re hvor vi førs ser på alle delsekvenser av sekvensene i X, så lar bladnodene være de minimale bisekvensene som ikke er delsekvens av noen sekvens i X og il slu organiserer dee il e re ved å la den omme sekvensen bli roen, og så gå il vensre eller høyre avhengig av om nese bi er 0 eller 1. Vi illusrerer denne konsruksjonen på avla. Hvis vi markere nodene i e binær re med bisekvensene, så får vi følgende bilde. 00 0 01 e 10 1 11 000 001 010 011 100 101 110 111 MAT1030 Diskre Maemaikk 5. mai 2009 29 MAT1030 Diskre Maemaikk 5. mai 2009 30 Li om srømmer Li om srømmer En digial srøm er en uendelig følge {x n } n N hvor hver x i er en bi, marker som 0 eller 1. En digial srøm kan oppfaes som en srøm av daa på digial form. Ana a vi har en prosedyre hvor inpu kan være en digial srøm og hvor oupu er en eller annen melding på digial form. De vil finnes siuasjoner hvor vi aldri får noe oupu hvis inpu er spesiel ekle digiale srømmer, men normal vil vi a prosedyren skal avsløre om den digiale srømmen vi moar er uen ineresse, og skal avslue med en melding om de. Vi enker oss alså en siuasjon hvor prosedyren avsluer med e svar uanse hvilken srøm den fores med. For enhver srøm finnes de da en endelig del som er sor nok il a prosedyren vår kan gi e oupu på grunnlag av denne. De er fordi prosedyren vår bare kan unye endelig mye informasjon om ver enkel srøm. La T være ree av endelige bisekvenser som er så små a prosedyren vår ikke har nok grunnlag i disse il å gi e oupu. Er T e endelig re? MAT1030 Diskre Maemaikk 5. mai 2009 31 MAT1030 Diskre Maemaikk 5. mai 2009 32

Li om srømmer Li om srømmer Vi skal vise a de er ilfelle. Bevise er e eksempel på e konraposiiv bevis, alså på e bevis hvor vi anar a konklusjonen er feil, og resonnerer oss frem il a da er premissene feil. Ana derfor a ree er uendelig. Da må vensre delre være uendelig eller høyre delre være uendelig. Sar en digial srøm med 0 om vensre delre er uendelig og med 1 om de er endelig. La T 1 være de ilsvarende uendelige delree. Forse srømmen med 0 om vensre delre i T 1 er uendelig og med 1 om de er endelig (da er høyre delre i T 1 uendelig). Slik forseer vi ved å gå il vensre når delree i den reningen er uendelig, og il høyre når de er nødvendig for forsa å ha e uendelig delre. På den måen bygger vi opp en digial srøm som prosedyren vår ikke kan gi noe oupu fra, for da ville den gjøre de fra en endelig del av srømmen. Vi har imidlerid sørge for a enhver endelig del av den srømmen vi konsruerer, ligger i T, og derfor er uilsrekkelig for dee. MAT1030 Diskre Maemaikk 5. mai 2009 33 MAT1030 Diskre Maemaikk 5. mai 2009 34 Li om srømmer Påsanden vi nå har vis, har den prakiske konsekvensen a hvis vi førs har greid å lage en prosedyre som gir e svar uanse hvilken digial srøm vi forer den med, så finnes de en øvre grense for hvor lenge vi må vene på e svar, uavhengig av hva inpu er. Dee er e eksempel på en påsand hvor vi må gi e indireke bevis, eller i de minse gå uenom den konsrukive delen av maemaikken. Dee er ikke noe ema i MAT1030, og vi skal ikke forfølge dee aspeke videre. MAT1030 Diskre Maemaikk 5. mai 2009 35