Övningsmästarprov 2 + några NP-reduktioner. Algoritmer, datastrukturer och komplexitet

Storlek: px
Starta visningen från sidan:

Download "Övningsmästarprov 2 + några NP-reduktioner. Algoritmer, datastrukturer och komplexitet"

Transkript

1 Övningsmästarprov 2 + några NP-reduktioner Algoritmer, datastrukturer och komplexitet

2 Idag Första timmen: övningsmästarprov 2 Andra timmen: NP-reduktioner

3 Uppgiftsbeskrivning Låt oss ta bort kravet på att orden i den packade texten i övningsmästarprov 1 ska vara i samma ordning som i indata. Då kan det vara möjligt att packa texten på färre rader än den giriga algoritmen kan. Textpackningsproblemet har som indata ordlängderna w1,..., wn och radlängden len. Alla tal i indata är positiva heltal. Problemet är att ta reda på det minimala antalet rader av längd len som de n orden kan rymmas på om det är tillåtet att blanda om orden. Orden ska ha mellanslag mellan sig när dom placeras ut på raderna, precis som i övningsmästarprov 1. Formulera detta minimeringsproblem som ett beslutsproblem (genom att införa ett mål) och visa att beslutsproblemet är NP-fullständigt. När du ska visa att problemet är NP-svårt är det lämpligt att reducera problemet Mängdpartitionering (givet en multimängd positiva heltal, går det att partitionera talen i två delar som har samma summa?).

4 Vi inför ett mål K i indata i formuleringen av minimeringsproblemet som beslutsproblem: Indata: ordlängder w1,..., wn, radlängd len, mål K. Alla tal är positiva heltal och alla ordlängder är högst len. Fråga: Går det att pussla in alla n ord på K rader av längd len så att det finns ett mellanslag mellan varje par av närliggande ord på samma rad?

5 Först visar vi att textpackningsproblemet ligger i NP. För varje ja-instans ska en lösning kunna verifieras i polynomisk tid. Låt lösningen vara utplaceringen av orden på K rader, alltså vilka ord som ska placeras på vilken rad, till exempel representerad som en funktion f från [1..n] till [1..K]. När lösningen är formulerad som en funktion på detta sätt behöver verifieringsalgoritmen bara kolla att längden, inklusive mellanslag, inte blir större än len på någon rad. Om K n är det trivialt att det finns en lösning (med ett ord på varje rad).

6 Först visar vi att textpackningsproblemet ligger i NP. För varje jainstans ska en lösning kunna verifieras i polynomisk tid. Låt lösningen vara utplaceringen av orden på K rader, alltså vilka ord som ska placeras på vilken rad, till exempel representerad som en funktion f från [1..n] till [1..K]. När lösningen är formulerad som en funktion på detta sätt behöver verifieringsalgoritmen bara kolla att längden, inklusive mellanslag, inte blir större än len på någon rad. Om K n är det trivialt att det finns en lösning (med ett ord på varje rad). Tidskomplexiteten för verifieringsalgoritmen är O(n) med enhetskostnad. Om antalet bitar i talen i indata är högst m så tar en addition bitkostnaden O(m) och bitkomplexiteten för algoritmen blir O(nm) som är polynomiskt.

7 Vi visar nu att problemet är NP-svårt med en reduktion av mängdpartitionering. Idén är att varje tal i indata till mängdpartitioneringsproblemet ska motsvaras av ett ord med en viss längd i textpackningsproblemet, så att vi kan få in alla ord på två rader om och endast om det går att partitionera talen i två delar med samma summa. Mellan varje ord finns det ett mellanslag. För att ta hänsyn till det borde vi låta ordlängden vara ett mindre än talets storlek, men då kommer talet ett att motsvara ordlängden noll, och det är en otillåten ordlängd. För att undvika ordlängden noll tar vi och multiplicerar varje tal med samma heltalskonstant (till exempel 2, men större tal fungerar också) innan vi drar bort ett för att få ordlängden. Då motsvaras talet 1 av ordlängden = 1. Radlängden ska sättas till ett mindre än summan av alla tal, eftersom det inte är något mellanslag efter sista ordet på raden.

8 MÄNGDPARTITIONERING({s1, s2,..., sn}) = σ 0 for i 1 to n do wi 2si 1 σ σ + si len σ 1 K 2 return TEXTPACKING({w1, w2,..., wn}, len, K)

9 Indata: {s1, s2, s3, sn} = {1, 2, 3, 4} {w1, w2, w3, w4} = {1, 3, 5, 7} len: = 9 1 (1) 7 (4) 3 (2) 5 (3)

10 För att bevisa att detta är en Karpreduktion ska vi visa att varje ja-instans för mängdpartitioneringsproblemet transformeras till en ja-instans för textpackningsproblemet och att varje nej-instans för mängdpartitioneringsproblemet transformeras till en nej-instans för textpacknings- problemet. Den andra delen är ekvivalent med att visa att för varje jainstans för textpacknings- problemet som kan skapas av transformationen så är motsvarande mängdpartitioneringsinstans en ja-instans. I en uppgift på E-nivå krävs inte att dessa två bevis genomförs i detalj

11 Om det finns en partitionering av {s1, s2,..., sn} i A och B där summan av talen i A är lika med summan av talen i B så ska vi visa att det finns en textpackning på 2 rader av längd σ 1 där σ är summan av alla talen {s1, s2,..., sn}. Eftersom A och B har samma summa så måste σ/2 vara precis denna summa. Om vi placerar ut orden som motsvarar talen i A på första raden och orden som motsvarar talen i B på andra raden så blir båda radlängderna 2σ/2 1 = σ 1 eftersom varje ord, inräknat det efterföljande mellanslaget (dvs ordlängden plus 1), är dubbelt så långt som motsvarande tals värde och det sista ordet på raden inte har något mellanslag efter sig. Därför uppfyller textpackningen villkoret.

12 Anta nu istället att vi har en textpackning på två rader av längd σ 1 och visa att det finns en mängdpartitionering. Lägg till ett mellanslag efter sista ordet på varje rad. Summan av alla ordlängder på varje rad inklusive efterföljande mellanslag är nu högst σ och motsva- rande tal har då summan högst σ/2. Eftersom summan av alla tal är σ så blir det en jämn partitionering om vi låter A vara talen som motsvarar orden på första raden och B övriga.

13 Det är också nödvändigt att visa att Karpreduktionen tar polynomisk tid. Reduktionen ovan tar med bitkostnad tid O(nm), där m är antalet bitar i största talet i indata, vilket är polynomiskt. Alltså är textpackningsproblemet NPfullständigt.

14 Bedömningskriterier Kamraträttarens namn: Den bedömda elevens namn: Rättningsprotokoll för övningsmästarprov 2 i adk18 Bedömningskriterium NP-fullständighet och NP-tillhörighet Förklarar vilka steg som behöver ingå i NPfullständighetsbevis, och vad varje steg är bra till Formulerar problemet som ett beslutsproblem Förklarar vad en lösning består av Beskriver hur man verifierar en ja-lösning eller visar NP-tillhörighet på ett annat acceptabelt sätt Motiverar att verifikationsalgoritmen (motsv.) är polynomisk Reduktionsalgoritm Beskriver reduktionen övergripande i ord och eventuellt i bild Beskriver reduktionen tillräckligt tydligt (pseudokod inte nödvändigt) Reduktionen är korrekt Tidskomplexitet för reduktionen Anger komplexitet(-sklass) för reduktionen, eller vilken som krävs för NP-reduktioner i allmänhet Motiverar tidskomplexitet (överensstämmer med algoritmen och den angivna komplexiteten) Korrekthetsresonemang Förklarar vad man behöver visa i ett korrekthetsbevis för en NP-reduktion Genomför ett korrekt resonemang som omfattar alla nödvändiga delar Helt rätt Litet fel Fel/saknas M M M M M M Kan ej bedöma Förklaring till bedömningen

15 Bara den som har med sig en lösning på övningsmästarprovet kan delta i resten av övningen Om ni inte har en lösning med er kan ni gå nu (ni får ta med er bedömningsinstruktionsbladet). Ni är välkomna tillbaka andra timmen on ni vill :)

16 Dela in er i par! Om ni jobbat ihop med lösningen får ni inte vara i samma par. Om ni är ojämnt antal blir en grupp tre. Byt lösningar inom paren Genomför kamratbedömning enskilt enligt instruktionerna (prata inte med den ni rättar när ni gör detta, även om något i lösningen är oklart) Därefter: diskutera era bedömningar med varandra (inom varje par alltså). Jag kommer dela ut närvarolistor jag vill att ni skriver på. När ni är klara: lämna in era lösningar. Behåll bedömningsprotokollen. Ta rast/gå hem.

17 Reduktion 3-SAT till största oberoende mängd 3-SAT: (x y z) && (!x u!v) && (!y!z u)... Oberoende mängd: finns en delmängd av hörn i en graf sådan att delmängden har storlek k och inte ett enda par av hörn i delmängden har en kant mellan sig

18 Reduktion 3-SAT till oberoende mängd Skapa en komponent av varje klausul (k st) Tre hörn som sitter ihop i en triangel ett hörn per literal (x, y, z) Har nu lika många komponenter som klausuler (k st) För varje hörn som motsvarar x, dra en kant till alla hörn som motsvarar!x Om det finns en oberoende mängd av storlek k så är SATinstansen satistfierbar

19 Reduktion 3-SAT till oberoende mängd

20 Reduktion Partyproblemet Vi ska ha fest och vill bjuda så många personer som möjligt Tyvärr är vi karaktärer i tv-serien Gossip Girl, och på grund av detta är det mycket drama i våra liv Vissa av våra vänner skyr varandra som pest, och vägrar gå på samma fest Andra älskar varandra mer än allt, och kommer under inga omständigheter komma om inte hela deras grupp är bjuden Kommer vi lyckas ordna en stor fest eller borde vi ge upp?

21 Reduktion Partyproblemet Det går inte att lösa på polynomisk tid Dvs det är NP-fullständigt Kan reducera största oberoende mängd OM vi har en algoritm A som löser beslutsproblemet (kan vi ha en fest med k personer), hur kan vi avgöra vilka som ska bjudas?

22 Reduktion Partyproblemet OM vi har en algoritm A som löser beslutsproblemet (kan vi ha en fest med k personer), hur kan vi avgöra vilka som ska bjudas? En gadget: Gud, djävulen och Judas. Gud och djävulen har svårt för varandra Men båda älskar Judas Kan inte bjuda någon av dem Koppla denna gadget på en gäst i taget Judas kompis med gästen Går det fortfarande att bjuda k gäster? Ta bort Judas nya kompis, och alla hennes vänner från listan. Går det inte? Då måste nya kompisen komma. Gör henne till kompis med alla som är kvar på listan. G d J

23 Reduktion 3-SAT till delmängdsumma

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övningsmästarprovsövning 2 Anton Grensjö grensjo@csc.kth.se 20 november 2017 1 Dagordning 1. Genomgång av uppgiftens lösning 2. Genomgång av bedömningskriterier

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 8 Anton Grensjö grensjo@csc.kth.se 12 november 2015 Anton Grensjö ADK Övning 8 12 november 2015 1 / 21 Översikt Kursplanering Ö8: Mästarprov 1, oavgörbarhet

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 9 Anton Grensjö grensjo@csc.kth.se 9 november 2017 1 Idag Bevis av NP-fullständighet Labbteoriredovisning inför labb 4 2 Teori Teori När vi talar om NP-fullständighet

Läs mer

Föreläsning 9: NP-fullständighet

Föreläsning 9: NP-fullständighet Föreläsning 9: NP-fullständighet Olika typer av problem: 1. Beslutsproblem: A(x) =Ja. 2. Optimeringsproblem: A(x) =m Vanligen max/min. 3. Konstruktionsproblem: A(x) =En struktur. Vanligen lösningen till

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 10 Anton Grensjö grensjo@csc.kth.se 18 november 2015 Anton Grensjö ADK Övning 10 18 november 2015 1 / 20 Översikt Kursplanering Ö9: NP-fullständighetsbevis

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 12 Anton Grensjö grensjo@csc.kth.se 10 december 2015 Anton Grensjö ADK Övning 12 10 december 2015 1 / 19 Idag Idag Komplexitetsklasser Blandade uppgifter

Läs mer

Föreläsning 12+13: Approximationsalgoritmer

Föreläsning 12+13: Approximationsalgoritmer Föreläsning 12+13: Approximationsalgoritmer Många av de NP-fullständiga problemen är från början optimeringsproblem: TSP, Graph Coloring, Vertex Cover etc. Man tror att P NP och att det alltså inte går

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 10 Anton Grensjö grensjo@csc.kth.se 9 november 2017 1 Idag En konstruktionsreduktion Fler bevis av NP-fullständighet 2 Teori Repetition Ett problem tillhör

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 7 Anton Grensjö grensjo@csc.kth.se 14 oktober 2015 Anton Grensjö ADK Övning 7 14 oktober 2015 1 / 28 Översikt Kursplanering Ö6: Algoritmkonstruktion F19:

Läs mer

Komplexitetsklasser och repetition

Komplexitetsklasser och repetition Algoritmer, datastrukturer och komplexitet, hösten 2016 Uppgifter till övning 12 Komplexitetsklasser och repetition Uppgifter på komplexitetsklasser co-np-fullständighet Ett diskret tekniskt diagnosproblem

Läs mer

Föreläsning 7+8: NP-problem. Begreppet effektiv algoritm är alltså synonymt med går i polynomisk tid i den här kursen. Är detta en rimlig uppdelning?

Föreläsning 7+8: NP-problem. Begreppet effektiv algoritm är alltså synonymt med går i polynomisk tid i den här kursen. Är detta en rimlig uppdelning? Formalisering av rimlig tid Föreläsning 7+8: NP-problem En algoritm som har körtid O(n k ) för någon konstant k är rimligt snabb. En algoritm som har körtid Ω(c n ) för någon konstant c>1 är för långsam.

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 6 Anton Grensjö grensjo@csc.kth.se 9 oktober 2015 Anton Grensjö ADK Övning 6 9 oktober 2015 1 / 23 Översikt Kursplanering Ö5: Grafalgoritmer och undre

Läs mer

Föreläsning 8+9: NP-problem. Begreppet effektiv algoritm är alltså synonymt med går i polynomisk tid i den här kursen. Är detta en rimlig uppdelning?

Föreläsning 8+9: NP-problem. Begreppet effektiv algoritm är alltså synonymt med går i polynomisk tid i den här kursen. Är detta en rimlig uppdelning? Formalisering av rimlig tid Föreläsning 8+9: NP-problem En algoritm som har körtid O(n k ) för någon konstant k är rimligt snabb. En algoritm som har körtid Ω(c n ) för någon konstant c>1 är för långsam.

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 6 Anton Grensjö grensjo@csc.kth.se 4 oktober 2017 1 Idag Algoritmkonstruktion (lite blandat) Redovisning och inlämning av labbteori 3 2 Uppgifter Uppgift

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 1 Anton Grensjö grensjo@csc.kth.se 14 september 2015 Anton Grensjö ADK Övning 1 14 september 2015 1 / 22 Översikt Kursplanering F1: Introduktion, algoritmanalys

Läs mer

Föreläsning 8: Intro till Komplexitetsteori

Föreläsning 8: Intro till Komplexitetsteori Föreläsning 8: Intro till Komplexitetsteori Formalisering av rimlig tid En algoritm som har körtid O(n k ) för någon konstant k är rimligt snabb. En algoritm som har körtid Ω(c n ) för någon konstant c>1

Läs mer

n (log n) Division Analysera skolboksalgoritmen för division (trappdivision). Använd bitkostnad.

n (log n) Division Analysera skolboksalgoritmen för division (trappdivision). Använd bitkostnad. Algoritmer och Komplexitet ht 08. Övning 1 Algoritmanalys Ordo Jämför följande par av funktioner med avseende på hur dom växer då n växer. Tala i varje fall om ifall f(n) Θ(g(n)), f(n) O(g(n)) eller f(n)

Läs mer

Föreläsning 1. Introduktion. Vad är en algoritm?

Föreläsning 1. Introduktion. Vad är en algoritm? Några exempel på algoritmer. Föreläsning 1. Introduktion Vad är en algoritm? 1. Häll 1 dl havregryn och ett kryddmått salt i 2 1 2 dl kallt vatten. Koka upp och kocka gröten ca 3minuter. Rör om då och

Läs mer

Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen.

Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen. Turingmaskiner och oavgörbarhet Turingmaskinen Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen. Data är ett oändligt långt band där nollor och ettor står skrivna: Oändligt

Läs mer

Föreläsning 9: Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen.

Föreläsning 9: Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen. Föreläsning 9: Turingmaskiner och oavgörbarhet Turingmaskinen Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen. Data är ett oändligt långt band där nollor och ettor står

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 8 Anton Grensjö grensjo@csc.kth.se 10 november 2015 Anton Grensjö ADK Övning 8 10 november 2015 1 / 34 Översikt Kursplanering F21: Introduktion till komplexitet

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 4 Anton Grensjö grensjo@csc.kth.se 25 september 215 Anton Grensjö ADK Övning 4 25 september 215 1 / 28 Översikt Kursplanering F9: Dynamisk programmering

Läs mer

Föreläsning 5: Giriga algoritmer. Kruskals och Prims algoritmer

Föreläsning 5: Giriga algoritmer. Kruskals och Prims algoritmer Föreläsning 5: Giriga algoritmer Kruskals och Prims algoritmer Spännande träd: Om G är en sammanhängande graf så är ett spännande träd ett träd som innehåller alla noder i V (G). Viantarattviharkantvikterw(e)

Läs mer

Frågan om P=NP? Är P=NP? Bakgrund. "Snabb lösning"?!

Frågan om P=NP? Är P=NP? Bakgrund. Snabb lösning?! Frågan om P=NP? Är P=NP? Institutionen för system- och rymdteknik Luleå tekniska universitet Luleå, Sverige Kan varje [beräknings-] problem vars lösning kan verifieras snabbt av en dator även lösas snabbt

Läs mer

Föreläsning 5: Giriga algoritmer. Kruskals och Prims algoritmer

Föreläsning 5: Giriga algoritmer. Kruskals och Prims algoritmer Föreläsning 5: Giriga algoritmer Kruskals och Prims algoritmer Spännande träd: Om G är en sammanhängande graf så är ett spännande träd ett träd som innehåller alla noder i V (G). Viantarattviharkantvikterw(e)

Läs mer

Föreläsning 4: Giriga algoritmer. Giriga algoritmer

Föreläsning 4: Giriga algoritmer. Giriga algoritmer Föreläsning 4: Giriga algoritmer Giriga algoritmer Denna typ av algoritmer arbetar efter följande princip: Gör i varje situation det som är lokalt optimalt, d.v.s. bäst för stunden. Några exempel vi redan

Läs mer

Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL2 och Media 1, SF1610 och 5B1118, onsdagen den 17 augusti 2011, kl

Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL2 och Media 1, SF1610 och 5B1118, onsdagen den 17 augusti 2011, kl Matematiska Institutionen KTH Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL och Media, SF60 och 5B8, onsdagen den 7 augusti 0, kl 4.00-9.00. Examinator: Olof Heden Hjälpmedel: Inga

Läs mer

Föreläsning 1. Introduktion och sökning i graf. Vad är en algoritm?

Föreläsning 1. Introduktion och sökning i graf. Vad är en algoritm? Föreläsning 1. Introduktion och sökning i graf Vad är en algoritm? Först: Vad är ett problem? Består av indata och ett mål. Indata: [En beskrivning av en struktur.] Mål: [Kan vara Ja/Nej, ett tal eller

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Föreläsningsanteckningar i Algoritmer, datastrukturer och komplexitet hösten 2015 Viggo Kann Algoritmer, datastrukturer och komplexitet, föreläsning 1 Första timmen: kursöversikt Andra timmen: algoritmanalys,

Läs mer

Övningshäfte 2: Induktion och rekursion

Övningshäfte 2: Induktion och rekursion GÖTEBORGS UNIVERSITET MATEMATIK 1, MMG200, HT2017 INLEDANDE ALGEBRA Övningshäfte 2: Induktion och rekursion Övning D Syftet är att öva förmågan att utgående från enkla samband, aritmetiska och geometriska,

Läs mer

Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 11 april, 2002

Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 11 april, 2002 Institutionen för matematik, KTH Mats Boij och Niklas Eriksen Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 11 april, 2002 1. Bestäm det minsta positiva heltal n sådant att 31n + 13 är delbart

Läs mer

I en matchning ligger varje hörn i högst en kant. I en stig ligger varje hörn i högst två kanter.

I en matchning ligger varje hörn i högst en kant. I en stig ligger varje hörn i högst två kanter. 26.2-9 Antag att rätt lösning är att dela upp V i V 1 och V 2 (V 1 V 2 =, V 1 V 2 = V ). Antal kanter vi måste skära är då det minsta snittet mellan v 1 och v 2, där v 1 är ett godtyckligt hörn i V 1 och

Läs mer

Föreläsningsanteckningar F6

Föreläsningsanteckningar F6 Föreläsningsanteckningar F6 Martin Andersson & Patrik Falkman Kortaste vägen mellan en nod och alla andra noder Detta problem innebär att givet en graf G = (E,V) hitta den kortaste vägen över E från en

Läs mer

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4 Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 014-015 Denna lektion ska vi studera rekursion. Lektion 4 Principen om induktion Principen om induktion är ett vanligt sätt att bevisa

Läs mer

Programkonstruktion och Datastrukturer

Programkonstruktion och Datastrukturer Programkonstruktion och Datastrukturer VT 2012 Tidskomplexitet Elias Castegren elias.castegren.7381@student.uu.se Problem och algoritmer Ett problem är en uppgift som ska lösas. Beräkna n! givet n>0 Räkna

Läs mer

Föreläsning 5: Dynamisk programmering

Föreläsning 5: Dynamisk programmering Föreläsning 5: Dynamisk programmering Vi betraktar en typ av problem vi tidigare sett: Indata: En uppsättning intervall [s i,f i ] med vikt w i. Mål: Att hitta en uppsättning icke överlappande intervall

Läs mer

Prov i DAT 312: Algoritmer och datastrukturer för systemvetare

Prov i DAT 312: Algoritmer och datastrukturer för systemvetare Prov i DAT 312: Algoritmer och datastrukturer för systemvetare Jacek Malec Datavetenskap, LU 11 april 2003 Datum 11 april 2003 Tid 14 19 Ansvarig lärare Jacek Malec (tel. 03 9890431) Hjälpmedel inga Antal

Läs mer

Tentamen Datastrukturer (DAT037)

Tentamen Datastrukturer (DAT037) Tentamen Datastrukturer (DAT07) Datum och tid för tentamen: 2016-01-09, 14:00 18:00. Ansvarig: Nils Anders Danielsson. Nås på 0700 620 602 eller anknytning 1680. Besöker tentamenssalarna ca 15:00 och ca

Läs mer

I den här uppgiften ska du undersöka förhållandet mellan parabelarean och rektangelarean.

I den här uppgiften ska du undersöka förhållandet mellan parabelarean och rektangelarean. 17. Figuren visar en parabel och en rektangel i ett koordinatsystem. Det skuggade området är begränsat av parabeln och x-axeln. Arean av det skuggade området kallas i fortsättningen parabelarean. Vid bedömning

Läs mer

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen Datastrukturer och algoritmer Föreläsning 15 Inför tentamen 1 Innehåll Kursvärdering Vi behöver granskare! Repetition Genomgång av gammal tenta 2 Första föreläsningen: målsättningar Alla ska höja sig ett

Läs mer

Dekomposition och dynamisk programmering

Dekomposition och dynamisk programmering Algoritmer, datastrukturer och komplexitet, hösten 2016 Uppgifter till övning 3 Dekomposition och dynamisk programmering Max och min med dekomposition I vektorn v[1..n] ligger n tal. Konstruera en dekompositionsalgoritm

Läs mer

i=1 c i = B och c i = a i eller c i = b i för 1 i n. Beskriv och analysera en algoritm som löser detta problem med hjälp av dynamisk programmering.

i=1 c i = B och c i = a i eller c i = b i för 1 i n. Beskriv och analysera en algoritm som löser detta problem med hjälp av dynamisk programmering. Algoritmer och Komplexitet ht 8 Övning 3+4 Giriga algoritmer och Dynamisk programmering Längsta gemensamma delsträng Strängarna ALGORITM och PLÅGORIS har den gemensamma delsträngen GORI Denlängsta gemensamma

Läs mer

MA2047 Algebra och diskret matematik

MA2047 Algebra och diskret matematik MA2047 Algebra och diskret matematik Något om kombinatorik Mikael Hindgren 24 september 2018 Vad är kombinatorik? Huvudfråga: På hur många sätt kan en viss operation utföras? Några exempel: Hur många gånger

Läs mer

DEL I. Matematiska Institutionen KTH

DEL I. Matematiska Institutionen KTH 1 Matematiska Institutionen KTH Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL2 och Media 1, SF1610 och 5B1118, tisdagen den 21 oktober 2008, kl 08.00-13.00. Examinator: Olof Heden.

Läs mer

Lösningsförslag för tentamen i Datastrukturer (DAT037) från

Lösningsförslag för tentamen i Datastrukturer (DAT037) från Lösningsförslag för tentamen i Datastrukturer (DAT7) från --9 Nils Anders Danielsson. Träd- och köoperationerna har alla tidskomplexiteten O(log s), där s är antalet element i trädet/kön (notera att jämförelser

Läs mer

PCP-satsen på kombinatoriskt manér

PCP-satsen på kombinatoriskt manér austrin@kth.se Teorigruppen Skolan för Datavetenskap och Kommunikation 2005-10-24 Agenda 1 Vad är ett bevis? Vad är ett PCP? PCP-satsen 2 Vad, hur och varför? Lite definitioner Huvudresultatet 3 Ännu mer

Läs mer

Föreläsning 2. Kortaste vägar i grafer.

Föreläsning 2. Kortaste vägar i grafer. Föreläsning 2. Kortaste vägar i grafer. Problem: KORTASTE VÄGAR Den enklaste varianten är om vi inte har kantvikter och kortaste väg är en väg med såfåkanter som möjligt. Indata: En riktad graf G och en

Läs mer

Svar till S-uppgifter Endimensionell Analys för I och L

Svar till S-uppgifter Endimensionell Analys för I och L Svar till S-uppgifter Endimensionell Anals för I och L - 00 S 600 = 3 3 5 3850 = 5 7 847 = 7 största gemensamma delare till 600 och 3850: 5 minsta gemensamma multipel till 3850 och 847: 5 7 S a) +6+9 b)

Läs mer

Lösningar till utvalda uppgifter i kapitel 5

Lösningar till utvalda uppgifter i kapitel 5 Lösningar till utvalda uppgifter i kapitel 5 5.3. Vi använder Euklides algoritm och får 4485 = 1 3042 + 1443 3042 = 2 1443 + 156 1443 = 9 156 + 39 156 = 4 39. Alltså är sgd(3042, 4485) = 39. Om vi startar

Läs mer

Problemlösning Fk- åk 3 19/ Pia Eriksson

Problemlösning Fk- åk 3 19/ Pia Eriksson Problemlösning Fk- åk 3 19/12 2013 Pia Eriksson Fyra glaskulor och tre pappersstjärnor väger 63 gram. Tre glaskulor och två pappersstjärnor väger 46 gram. Alla glaskulor väger lika mycket och alla pappersstjärnor

Läs mer

SF2715 Tillämpad kombinatorik, 6hp

SF2715 Tillämpad kombinatorik, 6hp SF75 Tillämpad kombinatorik, 6hp Fortsättningskurs i matematik 7 mars 7 maj 009 Kursledare: Jakob Jonsson Upplägg 6 hp = p enligt gamla systemet 8 dubbeltimmar med teori och problemlösning Kursbok och

Läs mer

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg

Läs mer

TDDI16 Datastrukturer och algoritmer. Algoritmanalys

TDDI16 Datastrukturer och algoritmer. Algoritmanalys TDDI16 Datastrukturer och algoritmer Algoritmanalys 2017-08-28 2 Översikt Skäl för att analysera algoritmer Olika fall att tänka på Medelfall Bästa Värsta Metoder för analys 2017-08-28 3 Skäl till att

Läs mer

N = {i}: noder (hörn) Graf: G = (N, B) Definitioner. Väg: Sekvens av angränsande bågar. Cykel: Väg som startar och slutar i samma nod.

N = {i}: noder (hörn) Graf: G = (N, B) Definitioner. Väg: Sekvens av angränsande bågar. Cykel: Väg som startar och slutar i samma nod. Polyeder 0 x, 0 x, 0 x, x + x + x, x + x + x Grafdefinitioner N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar

Läs mer

Optimering med bivillkor

Optimering med bivillkor Optimering med bivillkor Vi ska nu titta på problemet att hitta max och min av en funktionen f(x, y), men inte över alla möjliga (x, y) utan bara för de par som uppfyller ett visst bivillkor g(x, y) =

Läs mer

NP-fullständighetsbevis

NP-fullständighetsbevis Algoritmer, datastrukturer och komplexitet, hösten 2016 Uppgifter till övning 9 NP-fullständighetsbevis På denna övning är det också inlämning av skriftliga lösningar av teoriuppgifterna till labb 4 och

Läs mer

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg

Läs mer

Tillämpad Programmering (ID1218) :00-13:00

Tillämpad Programmering (ID1218) :00-13:00 ID1218 Johan Montelius Tillämpad Programmering (ID1218) 2014-03-13 09:00-13:00 Förnamn: Efternamn: Regler Du får inte ha något materiel med dig förutom skrivmateriel. Mobiler etc, skall lämnas till tentamensvakten.

Läs mer

Föreläsning Datastrukturer (DAT037)

Föreläsning Datastrukturer (DAT037) Föreläsning Datastrukturer (DAT037) Nils Anders Danielsson 2015-11-16 Idag Mängder, avbildningar. Hashtabeller. Sortering. Pseudokod Blandning av programmeringsspråk, matematisk notation och naturligt

Läs mer

Om existens och entydighet av lösningar till ordinära differentialekvationer

Om existens och entydighet av lösningar till ordinära differentialekvationer Om existens och entydighet av lösningar till ordinära differentialekvationer Anders Källén 11 maj 2016 1 Introduktion I det här kapitlet ska vi diskutera vad vi allmänt kan säga om lösningar till ett system

Läs mer

Datastrukturer och algoritmer

Datastrukturer och algoritmer Datastrukturer och algoritmer Föreläsning 5 Algoritmer & Analys av Algoritmer Algoritmer Vad är det? Innehåll Mer formellt om algoritmer beräkningsbarhet Att beskriva algoritmer Analysera algoritmer Exekveringstid,

Läs mer

Diskret Matematik A för CVI 4p (svenska)

Diskret Matematik A för CVI 4p (svenska) MITTHÖGSKOLAN TFM Tentamen 2004 MAAA98 Diskret Matematik A för CVI 4p (svenska) Skrivtid: 5 timmar Datum: 3 juni 2004 Denna tentamen omfattar 10 frågor, där varje fråga kan ge 12 poäng. Delfrågornas poäng

Läs mer

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson Uppsala Universitet Matematiska Institutionen Thomas Erlandsson LÄSANVISNINGAR VECKA 36 VERSION 1. ARITMETIK FÖR RATIONELLA OCH REELLA TAL, OLIKHETER, ABSOLUTBELOPP ADAMS P.1 Real Numbers and the Real

Läs mer

Kaliningrad) låg vid bägge sidor av floden Pregel samt på

Kaliningrad) låg vid bägge sidor av floden Pregel samt på Grunder i matematik och logik (2018) Grafteori Marco Kuhlmann Grafteori är det område inom matematiken som undersöker egenskaper hos grafer. Inom grafteorin har begreppet graf en annan betydelse än graf

Läs mer

Block 2 Algebra och Diskret Matematik A. Följder, strängar och tal. Referenser. Inledning. 1. Följder

Block 2 Algebra och Diskret Matematik A. Följder, strängar och tal. Referenser. Inledning. 1. Följder Block 2 Algebra och Diskret Matematik A BLOCK INNEHÅLL Referenser Inledning 1. Följder 2. Rekursiva definitioner 3. Sigmanotation för summor 4. Strängar 5. Tal 6. Övningsuppgifter Referenser Följder, strängar

Läs mer

Föreläsning 11. Giriga algoritmer

Föreläsning 11. Giriga algoritmer Föreläsning 11 Giriga algoritmer Föreläsning 11 Giriga algoritmer Användning Växelproblemet Kappsäcksproblemet Schemaläggning Färgläggning Handelsresandeproblemet Uppgifter Giriga algoritmer (Greedy algorithms)

Läs mer

Tentamen Datastrukturer för D2 DAT 035

Tentamen Datastrukturer för D2 DAT 035 Tentamen Datastrukturer för D2 DAT 035 17 december 2005 Tid: 8.30-12.30 Ansvarig: Peter Dybjer, tel 7721035 eller 405836 Max poäng på tentamen: 60. (Bonuspoäng från övningarna tillkommer.) Betygsgränser:

Läs mer

Grundläggande logik och modellteori

Grundläggande logik och modellteori Grundläggande logik och modellteori Kapitel 7: SAT-lösare Henrik Björklund Umeå universitet 29. september, 2014 SAT En instans av SAT är en mängd av mängder av literaler. Exempel: {{p, q, r}, {p, q, s},

Läs mer

Tentamen Datastrukturer, DAT037 (DAT036)

Tentamen Datastrukturer, DAT037 (DAT036) Tentamen Datastrukturer, DAT037 (DAT036) Datum och tid för tentamen: 2017-01-11, 14:00 18:00. Ansvarig: Fredrik Lindblad. Nås på tel nr. 031-772 2038. Besöker tentamenssalarna ca 15:00 och ca 17:00. Godkända

Läs mer

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, )}, i N, N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg innehåller

Läs mer

Tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, onsdagen den 20 augusti 2014, kl

Tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, onsdagen den 20 augusti 2014, kl 1 Matematiska Institutionen KTH Tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, onsdagen den 20 augusti 2014, kl 14.00-19.00. Examinator: Olof Heden Hjälpmedel: Inga hjälpmedel är tillåtna

Läs mer

Magnus Nielsen, IDA, Linköpings universitet

Magnus Nielsen, IDA, Linköpings universitet Föreläsning 7 Introduktion till sortering TDDC91,TDDE22,725G97: DALG Utskriftsversion av föreläsning i Datastrukturer och algoritmer 24 september 2018 Magnus Nielsen, IDA, Linköpings universitet 7.1 1

Läs mer

FEMSTEGSMODELLEN: ÖVNING & CHECKLISTA FÖR EN ÖPPEN OCH TILLGÄNGLIG VERKSAMHET

FEMSTEGSMODELLEN: ÖVNING & CHECKLISTA FÖR EN ÖPPEN OCH TILLGÄNGLIG VERKSAMHET FEMSTEGSMODELLEN: ÖVNING & CHECKLISTA FÖR EN ÖPPEN OCH TILLGÄNGLIG VERKSAMHET FEMSTEGSMODELLEN: FEM STEG FÖR EN TILLGÄNGLIG VERKSAMHET STEG1 VEM NÅS? STEG 2 VEM TESTAR? STEG 3 VEM GÖR? STEG 4 VEM PÅVERKAR?

Läs mer

Föreläsning 11: Beräkningsgeometri

Föreläsning 11: Beräkningsgeometri DD2458, Problemlösning och programmering under press Föreläsning 11: Beräkningsgeometri Datum: 2009-11-24 Skribenter: David Björklund, Christoer Lundell Johansson och Mårten Selin Föreläsare: Fredrik Niemelä

Läs mer

1. (3p) Ett RSA-krypto har parametrarna n = 77 och e = 37. Dekryptera meddelandet 3, dvs bestäm D(3). 60 = = =

1. (3p) Ett RSA-krypto har parametrarna n = 77 och e = 37. Dekryptera meddelandet 3, dvs bestäm D(3). 60 = = = Matematiska Institutionen KTH Lösningar till tentamensskrivning på kursen Diskret Matematik, moment B, för D2 och F, SF63 och SF630, den 20 maj 2009 kl 08.00-3.00. Hjälpmedel: Inga hjälpmedel är tillåtna

Läs mer

Lösning av tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, tisdagen den 27 maj 2014, kl

Lösning av tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, tisdagen den 27 maj 2014, kl 1 Matematiska Institutionen KTH Lösning av tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, tisdagen den 27 maj 2014, kl 14.00-19.00. Examinator: Olof Heden Hjälpmedel: Inga hjälpmedel

Läs mer

Algebra och Diskret Matematik A (svenska)

Algebra och Diskret Matematik A (svenska) MITTUNIVERSITETET TFM Tentamen 2005 MAAA99 Algebra och Diskret Matematik A (svenska) Skrivtid: 5 timmar Datum: 2 november 2005 Denna tenta omfattar 8 frågor, där varje fråga kan ge 3 poäng. Maximalt poängantal

Läs mer

Föreläsning 7. Felrättande koder

Föreläsning 7. Felrättande koder Föreläsning 7 Felrättande koder Antag att vi vill skicka ett meddelande som består av bokstäver a,b,c,d. Vi kan koda a,b,c,d. Antag att det finns en viss sannolikhet att en bit i ett meddelande som skickas

Läs mer

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg

Läs mer

Tommy Färnqvist, IDA, Linköpings universitet

Tommy Färnqvist, IDA, Linköpings universitet Föreläsning 8 Sortering och urval TDDC70/91: DALG Utskriftsversion av föreläsning i Datastrukturer och algoritmer 1 oktober 2013 Tommy Färnqvist, IDA, Linköpings universitet 8.1 Innehåll Innehåll 1 Sortering

Läs mer

1 Duala problem vid linjär optimering

1 Duala problem vid linjär optimering Krister Svanberg, april 2012 1 Duala problem vid linjär optimering Detta kapitel handlar om två centrala teoretiska resultat för LP, nämligen dualitetssatsen och komplementaritetssatsen. Först måste vi

Läs mer

Tentamen i EDAF05 Algoritmer, datastrukturer och komplexitet

Tentamen i EDAF05 Algoritmer, datastrukturer och komplexitet Tentamen i EDAF05 Algoritmer, datastrukturer och komplexitet 7 juni 2019, 8-13 Du får svara på engelska, på svenska, auf Deutsch, или по-русски. Examinator: Jonas Skeppstedt 30 av 60p behövs för betyg

Läs mer

Lektionsanteckningar 11-12: Normalfördelningen

Lektionsanteckningar 11-12: Normalfördelningen Lektionsanteckningar 11-12: Normalfördelningen När utfallsrummet för en slumpvariabel kan anta vilket värde som helst i ett givet intervall är variabeln kontinuerlig. Det är väsentligt att utfallsrummet

Läs mer

Faktorisering med hjälp av kvantberäkningar. Lars Engebretsen

Faktorisering med hjälp av kvantberäkningar. Lars Engebretsen Faktorisering med hjälp av kvantberäkningar Lars Engebretsen 00-1-03 Lars Engebretsen 00-1-03 Bakgrund Vanliga datorer styrs av klassiska fysikens lagar. Vanliga datorer kan simuleras av turingmaskiner

Läs mer

Np MaB vt Låt k = 0 och rita upp de båda linjerna. Bestäm skärningspunkten mellan linjerna.

Np MaB vt Låt k = 0 och rita upp de båda linjerna. Bestäm skärningspunkten mellan linjerna. Vid bedömning av ditt arbete med uppgift nummer 17 kommer läraren att ta hänsyn till: Hur väl du beräknar och jämför trianglarnas areor Hur väl du motiverar dina slutsatser Hur väl du beskriver hur arean

Läs mer

Kombinatorik. Kapitel 2. Allmänt kan sägas att inom kombinatoriken sysslar man huvudsakligen med beräkningar av

Kombinatorik. Kapitel 2. Allmänt kan sägas att inom kombinatoriken sysslar man huvudsakligen med beräkningar av Kapitel 2 Kombinatorik Allmänt kan sägas att inom kombinatoriken sysslar man huvudsakligen med beräkningar av det antal sätt, på vilket elementen i en given mängd kan arrangeras i delmängder på något sätt.

Läs mer

DD1320 Tillämpad datalogi. Lösning (skiss) till tenta 20 okt 2011

DD1320 Tillämpad datalogi. Lösning (skiss) till tenta 20 okt 2011 DD1320 Tillämpad datalogi Lösning (skiss) till tenta 20 okt 2011 1 KMP P I P P I N i 1 2 3 4 5 6 Next[i] 0 1 0 2 1 3 2 Huffmankodning: Algoritmen 1. Sortera tecknen som ska kodas i stigande förekomstordning.

Läs mer

Föreläsning 12. Söndra och härska

Föreläsning 12. Söndra och härska Föreläsning 12 Söndra och härska Föreläsning 12 Söndra och härska Maximal delsekvens Skyline Closest pair Växel Söndra och härska (Divide and conquer) Vi stötte på dessa algoritmer när vi tittade på sortering.

Läs mer

Föreläsning 12. Söndra och härska

Föreläsning 12. Söndra och härska Föreläsning 12 Söndra och härska Föreläsning 12 Söndra och härska Maximal delsekvens Skyline Closest pair Växel Uppgifter Söndra och härska (Divide and conquer) Vi stötte på dessa algoritmer när vi tittade

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2 Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2 Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok,

Läs mer

Härledning av Black-Littermans formel mha allmänna linjära modellen

Härledning av Black-Littermans formel mha allmänna linjära modellen Härledning av Black-Littermans formel mha allmänna linjära modellen Ett sätt att få fram Black-Littermans formel är att formulera problemet att hitta lämpliga justerade avkastningar som ett skattningsproblem

Läs mer

Tekniker för storskalig parsning: Grundbegrepp

Tekniker för storskalig parsning: Grundbegrepp Tekniker för storskalig parsning: Grundbegrepp Joakim Nivre Uppsala Universitet Institutionen för lingvistik och filologi joakim.nivre@lingfil.uu.se Tekniker för storskalig parsning: Grundbegrepp 1(17)

Läs mer

Repetera snabbt vad du lärde dig förra veckan. Du är nu redo att kasta dig in i nästa fas, teorin om villkor.

Repetera snabbt vad du lärde dig förra veckan. Du är nu redo att kasta dig in i nästa fas, teorin om villkor. Lektion C2 Villkor Repetera snabbt vad du lärde dig förra veckan. Du är nu redo att kasta dig in i nästa fas, teorin om villkor. Du gör ofta val i livet, och valet du gör får olika konsekvenser och följder.

Läs mer

Bakgrund. Bakgrund. Bakgrund. Håkan Jonsson Institutionen för systemteknik Luleå tekniska universitet Luleå, Sverige

Bakgrund. Bakgrund. Bakgrund. Håkan Jonsson Institutionen för systemteknik Luleå tekniska universitet Luleå, Sverige Är varje påstående som kan formuleras matematiskt*) alltid antingen sant eller falskt? *) Inom Institutionen för systemteknik Luleå tekniska universitet Luleå, Sverige Exempel: 12 = 13 nej, falskt n! >

Läs mer

Grundläggande logik och modellteori

Grundläggande logik och modellteori Grundläggande logik och modellteori Kapitel 4: Konjunktiv och disjunktiv normalform Henrik Björklund Umeå universitet 15. september, 2014 CNF och DNF Konjunktiv normalform (CNF) Omskrivning av en formel

Läs mer

Tentamen TMV210 Inledande Diskret Matematik, D1/DI2

Tentamen TMV210 Inledande Diskret Matematik, D1/DI2 Tentamen TMV20 Inledande Diskret Matematik, D/DI2 208-0-27 kl. 4.00 8.00 Examinator: Peter Hegarty, Matematiska vetenskaper, Chalmers Telefonvakt: Anton Johansson, telefon: 5325 (alt. Peter Hegarty 070-5705475)

Läs mer

Lösningar till KATT 2014

Lösningar till KATT 2014 Lösningar till KATT 2014 Av problemkommittén. Strumpmatchning 2 Naiv lösning (40p) Otillräcklig lösning (70p) Binärsökning (full poäng) Brädspelet Dynamisk programmering Matematisk lösning Förklaring 1

Läs mer

Introduktion till programmering SMD180. Föreläsning 9: Tupler

Introduktion till programmering SMD180. Föreläsning 9: Tupler Introduktion till programmering Föreläsning 9: Tupler 1 1 Sammansatta datatyper Strängar Sekvenser av tecken Icke muterbara Syntax: "abcde" Listor Sekvenser av vad som helst Muterbara Syntax: [1, 2, 3]

Läs mer