Toetsbundel Deel 2 Concurrency 25 oktober 2017, Gerard Tel, Niet verspreiden 1!.

Maat: px
Weergave met pagina beginnen:

Download "Toetsbundel Deel 2 Concurrency 25 oktober 2017, Gerard Tel, Niet verspreiden 1!."

Transcriptie

1 Toetsbundel Deel 2 Concurrency 25 oktober 2017, Gerard Tel, Niet verspreiden 1!. Deze bundel bevat een collectie toetsvragen over het tweede deel van Concurrency. Behalve dat goede antwoorden worden gegeven, worden ook de foute besproken, met korte uitleg waarom het niet klopt. Je kunt deze bundel gebruiken voor je toetsvoorbereiding, maar enige voorzichtigheid is geboden. Doordat de inhoud van Concurrency soms verandert, kunnen sommige opgaven minder relevant zijn of sommige onderwerpen onderbelicht zijn! De toetsen, met een duur van twee uur, zijn meestal genormeerd op 20 tot 25 punten. 1 Work-Span-Model 1. Uitleg over Efficient en Optimaal: Een parallel algoritme heeft twee complexiteitsparameters, work en span, beide uitgedrukt als functie van de invoergrootte n. Van een goed parallelliseerbaar algoritme accepteren we soms, dat de work hoger is dan de tijd van het beste sequentiële algoritme. De verhouding van (work) gedeeld door (beste sequentiële tijd) is de (parallelliserings-) overhead. Een algoritme heet efficient wanneer de span polylogaritmisch is en de overhead ook polylogaritmisch. Een algoritme heet optimaal wanneer de span polylogaritmisch is en de overhead constant. 2. Uitleg over Greedy Schedule: Brent s Lemma zegt dat een berekening met work w en span s, op p cores kan worden uitgevoerd in tijd T p w s p + s. Dit bereik je met een Greedy Schedule: het runtime-system moet ervoor zorgen dat in elk timeslot, zoveel mogelijk cores een berekening uitvoeren. Een timeslot waarin alle ready stappen worden verwerkt, maakt de berekeningsgraaf een laag korter en dit gebeurt s keer. Een timeslot waarin de berekeningsgraaf niet in hoogte afneemt, voert p stappen uit en dit gebeurt hoogstens (w s)/p keer. Asymptotisch zijn Θ( w s p + s) en Θ(max( w p, s)) aan elkaar gelijk. 3. Het Kleinste Verschil: We willen in een oplopend gesorteerde array A van n getallen, het kleinste verschil, KV, van twee opeenvolgende weten. Voorbeeld: in de rij (1, 3, 5, 7, 8, 12, 14, 25) is het KV 1 (namelijk het verschil tussen 8 en 7). Het best mogelijke sequentiële algoritme kost Θ(n) stappen. (a) Kun je het KV berekenen uit het KV van de linkerhelft en het KV van de rechterhelft? (b) Geef een parallel algoritme dat KV berekent. (c) Analyseer work en span van je algoritme met de Master Theorem. (d) Is het algoritme efficient en optimaal? 4. Alternatieve Prefix Sum: De prefix sum van een rij X[0..n 1] is de rij Y [0..n 1], gedefinieerd door Y [k] = k i=0 X[i]. Als alternatief voor het behandelde algoritme bekijken we deze methode: (1) bereken de prefix sum van de linkerhelft en de rechterhelft; (2) tel bij elke uitkomst van de rechterhelft, het totaal van de linkerhelft op. (a) Hoeveel rekenstappen kost het om de prefix sum met een sequentieel algoritme te bepalen? (b) Laat zien, hoe de alternatieve methode werkt, wanneer toegepast op de cijfers van je collegekaart (F=6 als die voorkomt). (c) Stel vergelijkingen op voor de span en het work van de alternatieve methode. (d) Wanneer is een parallel algoritme efficient? Is de alternatieve methode efficient? (e) Wanneer is een parallel algoritme optimaal? Is de alternatieve methode optimaal? 1 Op deze bundel geldt namelijk auteursrecht. Je mag het bestand bekijken en ook afdrukken, en iemand naar dit bestand verwijzen, maar niet het bestand of de afdruk aan iemand anders geven.

2 5. Inverse Prefix Sum: Gegeven is een array B. Gevraagd wordt een array A te berekenen, zodanig dat B de PrefixSum is van A. (a) Geef een zo goed mogelijk parallel algoritme hiervoor. (b) Wat zijn work en span van je algoritme? 6. Work en Span vergelijken: Arnold heeft een parallel algoritme ontworpen met work Θ(n 2 ) en span Θ(lg 2 n). Bert zegt dat zijn eigen algoritme voor deze taak beter is. Bert heeft weliswaar een hogere span, namelijk Θ(lg 3 n), maar zijn work is lager, namelijk Θ(n 1,5 ). (a) Welk algoritme zal beter presteren bij een lineair aantal, dus Θ(n), processors? Leg uit! (b) Welk algoritme zal beter presteren bij een kwadratisch aantal, dus Θ(n 2 ), processors? Leg uit! (c) Voor welke aantallen van processors is Arnolds algoritme sneller? 7. Parallelle Eennummers: Gegeven een reeks A van nullen en enen. Het eennummer van een positie met waarde 1 geeft aan, de hoeveelste opeenvolgende 1 het is. Een positie met waarde 0 heeft eennummer 0. Voor zijn de eennummers Piets Recursieve Eennummeraar berekent eerst de PRE van het linker- en rechterdeel: PRE(A,p,r) { // Zet A[p,...,r-1] om naar eennummers q=(p+r)/2 ; Invoke (PRE(A,p,q), PRE(A,q,r)) ; (a) Hoe ziet de voorbeeldrij er hierna uit, en wat moet er dan nog gebeuren? (b) Maak Piets programma af. (c) Analyseer work en span (met de Master Theorem). (d) Is Piets algoritme efficient en optimaal? 8. Parallel MaxOneRow: De MaxOneRow van een rij bits is het maximale aantal aaneengesloten 1-en; bv van is de MaxOneRow 5 (zie posities 7 en 14). Je kunt de MaxOneRow berekenen met een recursieve module die van een rij bits deze drie waarden oplevert: p: het aantal 1-en waarmee de rij begint; i: de MaxOneRow; s: het aantal 1-en waar de rij op eindigt. (a) Wat is de beste sequentiele tijd om de MaxOneRow te berekenen? (b) Hoe vind je de p, i en s van een rij uit die van de linker- en rechterhelft? (c) Analyseer de work van het resulterende algoritme. (d) Analyseer de span van het resulterende algoritme. (e) Is het parallelle algoritme efficient en is het optimaal? Leg uit! 9. Parallelle Polynoom-evaluatie: Een polynoom van graad n is een expressie van de vorm n k=0 a k x k. Onder het evalueren verstaan we het uitrekenen van de waarde, gegeven de coëfficiënten a 0 t/m a n en het argument x. Sequentieel kan dit met n vermenigvuldigingen en n optellingen. Je kunt een snel parallel algoritme krijgen, door de expressie te herschrijven tot een polynoom van graad n/2 in de parameter x 2 : a + b.x 1 +c.x 2 + d.x 3 +e.x 4 + f.x 5 +g.x 6 + h.x 7 = (a + b.x) +(c + d.x).(x 2 ) 1 +(e + f.x).(x 2 ) 2 +(g + h.x).(x 2 ) 3 (a) Geef expressies voor de coëfficiënten a 0 t/m a n/2 en de parameter x van het nieuwe polynoom. (b) Geef een recurrente betrekking voor de work en span van een parallel algoritme dat zo het polynoom evalueert. (c) Los de vergelijkingen voor work en span op met de Master Theorem. (d) Is deze methode efficient? En is hij optimaal? Leg uit!

3 10. Parallelle Plip-King: Plipper is een nieuw sociaal netwerk waar deelnemers maar 1 ding kunnen doen namelijk andere deelnemers plippen (je kunt niet jezelf plippen). In een groep A van deelnemers is x een Plip-King als hij door alle anderen in A geplipt is, maar zelf niemand in A plipt. Een verzameling van n 2 deelnemers kan nul of een Kings bevatten, maar niet meer. Hoewel de informatie over onderling plipgedrag van n deelnemers in totaal bijna n 2 bits bevat, is het mogelijk om sequentieel in lineaire (dwz., O(n)) tijd te bepalen of die groep een Plip-King heeft. Deze opdracht kijkt naar een parallel Plip-King algoritme. Voor identifiers i en j kun je in O(1) (dus constante) tijd opvragen of i j plipt. Om te bepalen of groep A van n personen een King heeft, splitsen we A in twee groepen A 1 en A 2, en bepalen recursief of die een Plip-King hebben. (a) Als A een King heeft, dan moet dat de King van A 1 of A 2 zijn. Wat moet je doen om te controleren of de deel-kings inderdaad King van A zijn? (b) Stel vergelijkingen op voor de Work en Span van dit algoritme. (c) Wat is de uitkomst van de Work en Span? (d) Is dit algoritme efficient? Is het optimaal? 11. Integer vermenigvuldigen: Gegeven integers A en B, als rijen van n cijfers. Je moet het product C berekenen, als rij van 2n cijfers. Sequentieel kan dit in O(n 2 ) tijd door elk cijfer van A te combineren met elk cijfer van B. (a) Geef een parallel algoritme met kwadratische work en lineaire span. (b) Is dit algoritme efficient, en is het optimaal? (c) Is een beter algoritme dan onder (a) mogelijk? 12. Sink: Gegeven is een verzameling van n punten, waarbij voor de meeste een ander punt als opvolger is gegeven. Een punt zonder opvolger heet een sink; de opvolger-relatie heeft geen cykel; de opvolger van i staat in p[i]. Interpretatie: een druppel water in punt i rolt naar punt p i, uiteindelijk verzamelen alle druppels zich in sinks. Het stroomgebied van sink a is de verzameling punten met een pad naar a. Doel: bereken een array s zodanig dat s[i] = a voor alle i in het stroomgebied van a. (a) Geef een sequentieel algoritme dat alle stroomgebieden berekent. Hint: dit kan in lineaire tijd. (b) Voor een parallel stroom-algoritme, kopieren we eerst p[i] naar s[i] en laten sinks naar zichzelf wijzen met if (s[i]==-1) s[i]=i;. Bedenk en leg uit, wat er gebeurt in een ronde van pointer doubling: pfor (0, n, (i)=>s[i]=s[s[i]]). (c) Geef nu een parallel algoritme dat stroomgebieden uitrekent. (d) Analyseer het algoritme en benoem of het efficient en/of optimaal is. 13. Goed en slecht Greedy Schedule: De lengte van een Greedy Schedule kan variëren, afhankelijk van welke ready stappen de scheduler kiest. Geef een voorbeeld van een berekeningsgraaf en twee Greedy Schedules, elk op drie cores, waarbij het ene schedule minstens anderhalf keer zo lang duurt als het andere. 14. Greedy Schedule: Een paralelle berekening met work w en span s moet worden uitgevoerd op een machine met p cores en je wilt dit doen volgens een Greedy Schedule. (a) Beschrijf hoe een greedy schedule tot stand komt. (b) Waarom is de lengte t van dit schedule begrensd door w p + s? (c) Je baas vindt dit niet snel genoeg, volgens hem werkt de computer van jullie concurrent viermaal zo snel. Kun je de concurrent inhalen met een betere scheduling? 15. Omslagpunt work en span: Voor zekere taak heb je een parallel algoritme A1 met work

4 w 1 en span s 1. Er is een alternatief algoritme A2 met slechter work w 2 > w 1 maar betere span s 2 < s 1. Voor welke aantallen cores, p, verwacht je van A2 een lagere rekentijd dan van A1? (Geef je antwoord asymptotisch, dus in grote-o of Θ.) 2 Patterns 16. Collectives: Onderstaande code is een voorbeeld van een stencil operatie. Beschrijf kort drie mogelijke bronnen van inefficiency, en stel voor elk daarvan een verbetering voor: for(int x=0; x<8192; x++) for(int y=0;y<8192; y++) set(x,y,(get(x-1,y)+get(x+1,y)+get(x,y-1)+get(x,y+1))/4); Hierbij implementeert get toegang tot array A en set toegang tot array B. Beide arrays hebben een grootte van 8192x8192 floats. Method get levert 0 voor coordinaten buiten array A. 17. GPGPU: Op een GPU kan conditional code leiden tot een verlaging van occupancy. (a) Wat is occupancy in dit verband? (b) Hoe kan conditional code leiden tot een verlaging van occupancy? 18. Terminologie: Wat is het verschil tussen: (a) Scan en reduction? (b) Inclusive en exclusive scan? (c) Stencil en recurrence? 19. SIMD/Reductie: Geef schematisch weer hoe een input set van 4 elementen a 0 t/m a 3 efficiënt met 2-wide SIMD gereduceerd kan worden tot een enkele waarde door herhaalde toepassing van een binaire operatie. Leg uit wat in dit geval de eigenschappen moeten zijn van de binaire operatie, en waarom. 20. GPU hardware: Waarom is op een GPU de cache minder belangrijk dan op een CPU? 21. Associativiteit: Laat met een voorbeeld zien dat floating point addition niet associatief is. 22. Begrippen: Wat is het verschil tussen: (a) SIMD en SIMT? (b) Stencil en map? 23. Vectorizatie: Twee vormen van paralellisme zijn instruction level paralellism en thread level paralellism. (a) Wat is het verschil tussen beide vormen? (b) Wat is het verschil tussen een thread en een stream (of lane)? (c) Op welke manier past een GPU thread level en instruction level paralellism toe? 24. Heterogeen: In een heterogeen systeem werken CPU en GPU samen om een probleem op te lossen. (a) In bepaalde gevallen kan code die sneller door een GPU uitgevoerd kan worden toch beter op de CPU uitgevoerd worden. Leg uit in welke gevallen, en waarom. (b) In een hypothetische heterogene renderer wordt het beeld opgedeeld in tiles. CPU en GPU gebruiken work stealing om deze set tiles te renderen. Waarom is dit een slecht idee?

5 25. Parallel Reduction: In de slides wordt uitgelegd dat voor een parallel reduction de combiner functie associatief moet zijn. (a) Leg uit waarom de combiner functie associatief moet zijn. (b) Laat zien dat floating point addition niet associatief is. (c) Laat zien hoe parallel reduction efficiënt met vector operaties uitgevoerd kan worden. Leg uit waarom de combiner functie bij gebruik van vector operaties, naast associatief ook commutatief moet zijn. 26. Monte Carlo: Deze toets bestaat uit zes opgaven. (a) Leg uit waarom deze vorm van toetsen gezien kan worden als een Monte-Carlo proces. Wat is de integraal in dit verband? (b) Is er sprake van stratificatie? 3 Synchronisatie 27. Pulse en PulseAll: Wat doet de methode Pulse (in Java heet deze: Notify)? Wat is het verschil tussen Pulse en PulseAll? 28. Synchronisatiehulpmiddelen: Een thread0 gebruikt een waarde B, die initieel undef is en wordt berekend door thread1: Thread0: Thread1:..;..; s = s+b; B = pp+qq;..;..; (a) Thread0 mag de waarde van B niet gebruiken voordat die door Thread1 is uitgerekend en ingevuld. Welke statement(s) zou je hiervoor aan de code toevoegen? (b) Waarom wordt het gebruik van een wait statement binnen een loop van een Monitor, niet gezien als spinnen? (c) Stel dat de berekening en het gebruik van B onderdeel zijn van een herhaling: Thread0: Thread1: s = 0; while (..) while (..) { pp = "bereken iets"; {.. qq = "bereken iets"; s = s+b; B = pp+qq; } } Elke nieuwe waarde van B moet exact eenmaal worden bijgeteld bij s. Wat kun je toevoegen aan de code om dat voor elkaar te krijgen? 29. Synchronisatie met Barrier: Een barrier (voor n threads) kent een methode await() die door alle threads kan worden aangeroepen. In deze opgave kijken we naar een implementatie waarin elke thread i een eigen semafoor s[i] heeft. (a) Wat is de eigenschap waaraan de methode await() moet voldoen? (b) Beschrijf een situatie waarin je de barrier zinvol kunt gebruiken. Aan het eind van de await() doet thread i P-operaties op zijn eigen semafoor: void await() {... for (int j=0; j<n; j++) s[i].p; }

6 (c) Welke V-operaties kun je op de stippeltjes invullen om aan de barrier-eis te voldoen? (d) Je collega zegt: Je kunt deze semafoor-barrier maar eenmaal gebruiken. Bij hergebruik kan een thread te vroeg door de await() komen door een V die een thread doet in de volgende ronde. Wat kun je doen om de barrier herhaald te kunnen gebruiken? 30. Synchronisatie: Barrier met Semafoor: Een barrier (voor n threads) kent een methode signalandwait() (in Java: await) die door alle threads kan worden aangeroepen. In deze opgave kijken we naar een implementatie waarin elke thread i een eigen semafoor s[i] heeft. Aan het eind van de await() doet thread i een reeks van n Acquires op zijn eigen semafoor: void signalandwait() {... for (int j=0; j<n; j++) s[i].acquire; } (a) Wat is de eigenschap waaraan de methode signalandwait() moet voldoen? (b) Welke Release-operaties kun je op de stippeltjes invullen om aan de barrier-eis te voldoen? 4 Combinaties en Kansen 31. Sommatie: Bewijs dat n k=0 k ( n k ) = n 2 n Permutatie en Combinatie: Geef de formule voor de berekening van P (n, k). Hoeveel rijtjes van 13 speelkaarten uit een pak van 52 zijn er (geef een getal)? Geef de formule voor de berekening van C(n, k). Hoeveel deelverzamelingen van 12 kaarten uit een set van 32 zijn er (geef een getal)? 33. Schoppen: Klaverjassen wordt gespeeld met 32 kaarten, waarvan 8 van type Schoppen. Je begint met een hand van acht kaarten. Wat is de kans dat je begint met precies zes Schoppen-kaarten? 34. Combinaties en kansen: Uit een vaas met 12 rode en 8 blauwe ballen worden 4 ballen willekeurig getrokken (zonder terugleggen). (a) Wat is de kans dat alle vier deze ballen rood zijn? (b) Wat is de kans dat de trekking 3 rode ballen en 1 blauwe bal oplevert? (c) Wat is n k=0 3k+1 ( n k )? (d) Wat is n k=0 (2k + 1) ( n k )? 35. Pepernoten: Een tutorklas van twaalf studenten is verdeeld in twee introductieprojectgroepjes van zes studenten. Van hun tutor krijgen ze allemaal een pepernoot uit een goed geschudde zak. Helaas blijken vier pepernoten bedorven, waardoor er vier random studenten ziek worden. Hoe groot is de kans dat er drie uit één groep ziek zijn en één uit de andere groep? 36. Carré: Je trekt vijf kaarten uit een goed geschud pak van 52. Hoe groot is de kans op een carré? (Bij een carré heb je allevier de tweeën, of drieën, etc.) 37. Celebrities in Bier: Twaalf studenten drinken elk drie flesjes bier. Elk biertje bevat een plaatje van een random artiest, waarbij de kans op Jan Smit 0,10 is en de kans op Patty Brard 0,20.

7 (a) Hoe groot is de kans dat er op het feest minstens 1 Jan Smit is? (b) Hoe groot is de kans, voor een willekeurige student, om zowel Patty als Jan te krijgen? (c) Wat is de verwachting van het aantal Patty Brards dat op deze avond gevonden wordt? 5 Kansproblemen 38. Drie waarden gooien: Je gooit herhaald met een dobbelsteen (zes-kantig) en gaat hiermee door totdat je drie verschillende uitkomsten hebt gezien. Wat is het verwachte aantal keren dat je moet gooien? 39. Leuke DVDs: Mark heeft een verzameling van 9 DVDs; hij besluit, elke dag aselect (dwz., random) een film te kiezen en te bekijken met zijn moeder, waarna de film wordt teruggelegd. Marks moeder vindt maar twee van de negen films leuk. (a) Wat verstaan we in de kansrekening onder de verwachting van een stochast? (b) Marks moeder definieert T als het nummer van de dag waarop ze voor de tweede maal een leuke film ziet en B als de dag waarop ze beide leuke films heeft gezien. Bereken de verwachtingen E[T ] en E[B]. (c) Wat is de kans dat T = 7? Dat T = k? 40. Gloeilampen: Doos A bevat 80 lampen; het is bekend dat er 20 kapot zijn. Doos B bevat ook 80 lampen; elke lamp heeft een kans van 1 4 om kapot te zijn. Uit beide dozen pakken we 12 lampen. (a) Wat is de kans dat er van de lampen uit doos A, precies 3 kapot zijn? (b) Wat is de kans dat er van de lampen uit doos B, precies 3 kapot zijn? (c) Wat is het verwachte aantal kapotte lampen in de trekking uit doos A? (d) Wat is het verwachte aantal kapotte lampen in de trekking uit doos B? 41. De reservesleutel: Je bent je fietssleutel kwijt! Gelukkig heb je een bak met 26 oude sleutels, daar zit hij zeker bij, maar ze zien er allemaal hetzelfde uit (roestig en vies). Je probeert ze een voor een tot je de passende gevonden hebt. Wat is het verwachte aantal sleutels dat je proberen moet? 42. Ballenvraag: Uit een bak die 20 rode en 20 gele ballen bevat, pak je in het donker willekeurig acht ballen. Wat is de kans dat je hierbij precies vijf rode ballen pakt? 43. De kaartenkijker: De Kaartenkijker trekt steeds een kaart uit een pak van 52 met teruglegging, dus steeds wordt de kaart teruggelegd en het pak geschud. (a) Hoeveel kaarten moet de Kaartenkijker verwacht trekken totdat hij een rode zeven ziet? (b) Hoeveel kaarten moet de Kaartenkijker verwacht trekken totdat hij alle 52 kaarten een keer gezien heeft? (c) Hoeveel kaarten moet de Kaartenkijker verwacht trekken totdat hij 51 verschillende kaarten gezien heeft? 6 Randomisering 44. Probabilistische correctheid: (a) Wat is het verschil tussen terminatie en terminatie met kans 1? (b) Geef de definities van een Monte Carlo algoritme en van een Las Vegas algoritme.

8 45. BenOrs tijdcomplexiteit: In het Consensus algoritme van Ben-Or kiest een station dat geen PROPOSE ontvangt, een random bit als stem voor de volgende ronde. 1 (a) Bewijs dat na elke ronde de kans minstens is dat alle stations dezelfde waarde als 2 n 1 stem hebben. (b) Geef een zo nauwkeurig mogelijke schatting voor het verwachte aantal berichten (in een run zonder crashes). 46. Ben-Or en meerderheid: Een ronde in Ben-Or s algoritme begint met het shouten van een waarde (0 of 1) en een collect van n t waarden. Als een station meer dan n/2 keer dezelfde waarde ziet, zal het een propose daarvoor rondsturen. Als een station meer dan t proposes voor een waarde ziet, zal het beslissen op die waarde. (a) Stel dat meer dan n/2 + t processen een ronde beginnen met dezelfde waarde v; is een beslissing voor v zeker in die ronde? (b) Stel dat precies n/2 + t processen een ronde beginnen met dezelfde waarde v; is een beslissing voor v mogelijk in die ronde? (c) Waarom werkt het algoritme sneller naarmate t kleiner is? 47. Gerandomiseerde renaming: In een systeem van vijf stations moet elk station een unieke vier-bits identiteit krijgen. De gekozen strategie is: Elk station kiest een random getal, de getallen worden uitgewisseld en geteld of er vijf verschillende zijn. Als vijf verschillende getallen gekozen zijn, is het klaar. Bij minder dan vijf wordt de procedure herhaald (zo vaak als nodig). (a) Is dit een Monte Carlo of een Las Vegas strategie? Waarom? (b) Wat is de complexiteit (uitgedrukt in aantal ronden)? (c) Vanwege een limiet op de tijd wordt besloten, het algoritme in ieder geval na drie ronden te stoppen (en de stations het laatstgetrokken nummer te laten houden). Wat is de kans dat de uitkomst correct is? 48. Ronden herhalen: Steven wil dat zijn drie servers elk een verschillend identificatienummer krijgen van slechts twee bits. Een ronde bestaat uit een random keuze van een nummer door elke server, en een check of de drie keuzen verschillend zijn. Ronden worden net zolang herhaald totdat het gewenste doel bereikt is. (a) Bewijs, dat elke ronde die begint, kans meer dan 1/4 heeft om het doel te bereiken. (b) Wat is de kans dat het algoritme na k ronden nog niet is getermineerd? (c) Wat is de (verwachte) complexiteit? Is dit een Monte Carlo of een Las Vegas algoritme? Leg uit!

Toetsbundel Deel 2 Concurrency 8 oktober 2018, Gerard Tel, Niet verspreiden 1!.

Toetsbundel Deel 2 Concurrency 8 oktober 2018, Gerard Tel, Niet verspreiden 1!. Toetsbundel Deel 2 Concurrency 8 oktober 2018, Gerard Tel, Niet verspreiden 1!. Deze bundel bevat een collectie toetsvragen over het tweede deel van Concurrency. Behalve dat goede antwoorden worden gegeven,

Nadere informatie

Tweede Toets Concurrency 2 februari 2017, , Educ-β.

Tweede Toets Concurrency 2 februari 2017, , Educ-β. Tweede Toets Concurrency 2 februari 2017, 8.30 10.30, Educ-β. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe

Nadere informatie

Opgaven Work-Span model Concurrency, 15 nov 2018, Werkgroep.

Opgaven Work-Span model Concurrency, 15 nov 2018, Werkgroep. Opgaven Work-Span model Concurrency, 15 nov 2018, Werkgroep. Gebruik deze opgaven om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven. 1. Uitleg over Efficient

Nadere informatie

College 13: Patterns (2)

College 13: Patterns (2) Concurrency Gerard Tel / Jacco Bikker - november 2016 februari 2017 College 13: Patterns (2) Welkom! genda: Collective Operations Reduce Scan Stencil Recurrence Concurrency college 13 Patterns (2) 3 Collectives

Nadere informatie

Opgaven Verwachting Datastructuren, 12 juni 2019, Werkgroep.

Opgaven Verwachting Datastructuren, 12 juni 2019, Werkgroep. Opgaven Verwachting Datastructuren, 12 juni 2019, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven.

Nadere informatie

Combinatoriek groep 1 & 2: Recursie

Combinatoriek groep 1 & 2: Recursie Combinatoriek groep 1 & : Recursie Trainingsweek juni 008 Inleiding Bij een recursieve definitie van een rij wordt elke volgende term berekend uit de vorige. Een voorbeeld van zo n recursieve definitie

Nadere informatie

Eerste Toets Concurrency 20 december 2018, , Educ-β.

Eerste Toets Concurrency 20 december 2018, , Educ-β. Eerste Toets Concurrency 20 december 2018, 11.00 13.00, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert

Nadere informatie

Kansrekening en statistiek WI2105IN deel I 4 november 2011, uur

Kansrekening en statistiek WI2105IN deel I 4 november 2011, uur Kansrekening en statistiek WI05IN deel I 4 november 0, 4.00 7.00 uur Bij dit examen is het gebruik van een (evt. grafische) rekenmachine toegestaan. Een formuleblad wordt uitgereikt. Meerkeuzevragen Toelichting:

Nadere informatie

Achtste college complexiteit. 2 april Polynoomevaluatie Matrixvermenigvuldiging Euler- en Hamiltonkringen

Achtste college complexiteit. 2 april Polynoomevaluatie Matrixvermenigvuldiging Euler- en Hamiltonkringen College 8 Achtste college complexiteit 2 april 2019 Polynoomevaluatie Matrixvermenigvuldiging Euler- en Hamiltonkringen 1 Polynoomevaluatie Zij p(x) = a n x n + a n 1 x n 1 +... + a 1 x + a 0 een polynoom

Nadere informatie

Kansrekening en statistiek wi2105in deel I 29 januari 2010, uur

Kansrekening en statistiek wi2105in deel I 29 januari 2010, uur Kansrekening en statistiek wi20in deel I 29 januari 200, 400 700 uur Bij dit examen is het gebruik van een (evt grafische rekenmachine toegestaan Tevens krijgt u een formuleblad uitgereikt na afloop inleveren

Nadere informatie

Combinatoriek groep 1

Combinatoriek groep 1 Combinatoriek groep 1 Recursie Trainingsweek, juni 009 Stappenplan homogene lineaire recurrente betrekkingen Even herhalen: het stappenplan om een recurrente betrekking van orde op te lossen: Stap 1. Bepaal

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2014 2015, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Tweede Toets Datastructuren 29 juni 2016, , Educ-Γ.

Tweede Toets Datastructuren 29 juni 2016, , Educ-Γ. Tweede Toets Datastructuren 29 juni 2016, 13.30 15.30, Educ-Γ. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe

Nadere informatie

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms Giso Dal (0752975) Pagina s 5 7 1 Deelverzameling Representatie

Nadere informatie

Uitgebreide uitwerking Tentamen Complexiteit, mei 2007

Uitgebreide uitwerking Tentamen Complexiteit, mei 2007 Uitgebreide uitwerking Tentamen Complexiteit, mei 007 Opgave. a. Een beslissingsboom beschrijft de werking van het betreffende algoritme (gebaseerd op arrayvergelijkingen) op elke mogelijke invoer. In

Nadere informatie

Combinatoriek en rekenregels

Combinatoriek en rekenregels Combinatoriek en rekenregels Les 4: Rekenregels (deze les sluit aan bij de paragraaf 8 van Hoofdstuk 1 Combinatoriek en Rekenregels van de Wageningse Methode, http://www.wageningsemethode.nl/methode/het-lesmateriaal/?s=y456v-d)

Nadere informatie

3 Kansen vermenigvuldigen

3 Kansen vermenigvuldigen 3 Kansen vermenigvuldigen Verkennen www.math4all.nl MAThADORE-basic HAVO/VWO 4/5/6 VWO wi-a Kansrekening Vermenigvuldigen Inleiding Verkennen Beantwoord de vragen bij Verkennen. Uitleg www.math4all.nl

Nadere informatie

Bij het oplossen van een telprobleem zijn de volgende 2 dingen belangrijk: Is de volgorde van de gekozen dingen van belang?

Bij het oplossen van een telprobleem zijn de volgende 2 dingen belangrijk: Is de volgorde van de gekozen dingen van belang? 4. tellen & kansen 4.1 Tellen Herkennen Je kunt een vraag over telproblemen herkennen aan signaalwoorden: - hoeveel mogelijkheden, manieren, routes, volgordes etc. zijn er?, - bereken het aantal mogelijkheden/manieren

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2016 2017, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2012 2013, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Uitwerking tentamen Analyse van Algoritmen, 29 januari

Uitwerking tentamen Analyse van Algoritmen, 29 januari Uitwerking tentamen Analyse van Algoritmen, 29 januari 2007. (a) De buitenste for-lus kent N = 5 iteraties. Na iedere iteratie ziet de rij getallen er als volgt uit: i rij na i e iteratie 2 5 4 6 2 2 4

Nadere informatie

Vierde college complexiteit. 26 februari Beslissingsbomen en selectie Toernooimethode Adversary argument

Vierde college complexiteit. 26 februari Beslissingsbomen en selectie Toernooimethode Adversary argument Complexiteit 2019/04 College 4 Vierde college complexiteit 26 februari 2019 Beslissingsbomen en selectie Toernooimethode Adversary argument 1 Complexiteit 2019/04 Zoeken: samengevat Ongeordend lineair

Nadere informatie

Statistiek voor Natuurkunde Opgavenserie 1: Kansrekening

Statistiek voor Natuurkunde Opgavenserie 1: Kansrekening Statistiek voor Natuurkunde Opgavenserie 1: Kansrekening Inleveren: 12 januari 2011, VOOR het college Afspraken Serie 1 mag gemaakt en ingeleverd worden in tweetallen. Schrijf duidelijk je naam, e-mail

Nadere informatie

Divide & Conquer: Verdeel en Heers vervolg. Algoritmiek

Divide & Conquer: Verdeel en Heers vervolg. Algoritmiek Divide & Conquer: Verdeel en Heers vervolg Algoritmiek Algoritmische technieken Vorige keer: Divide and conquer techniek Aantal toepassingen van de techniek Analyse met Master theorem en substitutie Vandaag:

Nadere informatie

Toetsbundel Deel 1 Concurrency 10 december 2015, Gerard Tel, Niet verspreiden 1!.

Toetsbundel Deel 1 Concurrency 10 december 2015, Gerard Tel, Niet verspreiden 1!. Toetsbundel Deel 1 Concurrency 10 december 2015, Gerard Tel, Niet verspreiden 1!. Deze bundel bevat een collectie toetsvragen over het eerste deel van Concurrency. Je kunt deze bundel gebruiken voor je

Nadere informatie

Tweede Toets Datastructuren 26 juni 2019, , Educ-β.

Tweede Toets Datastructuren 26 juni 2019, , Educ-β. Tweede Toets Datastructuren 26 juni 2019, 17.00 19.00, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert

Nadere informatie

Examen Discrete Wiskunde donderdag 8 maart, 2018

Examen Discrete Wiskunde donderdag 8 maart, 2018 Examen Discrete Wiskunde 2017-2018 donderdag 8 maart, 2018 De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Gebruik hiervoor de ruimte onder de vraag; er is in principe genoeg

Nadere informatie

Vierde college complexiteit. 16 februari Beslissingsbomen en selectie

Vierde college complexiteit. 16 februari Beslissingsbomen en selectie Complexiteit 2016/04 College 4 Vierde college complexiteit 16 februari 2016 Beslissingsbomen en selectie 1 Complexiteit 2016/04 Zoeken: samengevat Ongeordend lineair zoeken: Θ(n) sleutelvergelijkingen

Nadere informatie

Lineaire algebra I (wiskundigen)

Lineaire algebra I (wiskundigen) Lineaire algebra I (wiskundigen) Toets, donderdag 22 oktober, 2009 Oplossingen (1) Zij V het vlak in R 3 door de punten P 1 = (1, 2, 1), P 2 = (0, 1, 1) en P 3 = ( 1, 1, 3). (a) Geef een parametrisatie

Nadere informatie

Tentamen Discrete Wiskunde 1 10 april 2012, 14:00 17:00 uur

Tentamen Discrete Wiskunde 1 10 april 2012, 14:00 17:00 uur Tentamen Discrete Wiskunde 0 april 0, :00 7:00 uur Schrijf je naam op ieder blad dat je inlevert. Onderbouw je antwoorden, met een goede argumentatie zijn ook punten te verdienen. Veel succes! Opgave.

Nadere informatie

Opgaven voor Kansrekening

Opgaven voor Kansrekening Wiskunde 1 voor kunstmatige intelligentie Opgaven voor Kansrekening Opgave 1. Een oneerlijke dobbelsteen is zo gemaakt dat 3 drie keer zo vaak valt als 4 en 2 twee keer zo vaak als 5. Verder vallen 1,

Nadere informatie

Tentamen Objectgeorienteerd Programmeren TI februari Afdeling ST Faculteit EWI TU Delft

Tentamen Objectgeorienteerd Programmeren TI februari Afdeling ST Faculteit EWI TU Delft I ' Tentamen Objectgeorienteerd Programmeren TI 1200 1 februari 2012 9.00-12.00 Afdeling ST Faculteit EWI TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit

Nadere informatie

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Tentamen Kansrekening (2WS2), Vrijdag 24 januari 24, om 9:-2:. Dit is een tentamen met gesloten boek. De uitwerkingen van de opgaven

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2006 2007, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. 1. Verzamelingen:

Nadere informatie

Opgaven Analyse van Algoritmen 10 mei 2019, Datastructuren, Werkgroep.

Opgaven Analyse van Algoritmen 10 mei 2019, Datastructuren, Werkgroep. Opgaven Analyse van Algoritmen 10 mei 019, Datastructuren, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot

Nadere informatie

3. Structuren in de taal

3. Structuren in de taal 3. Structuren in de taal In dit hoofdstuk behandelen we de belangrijkst econtrolestructuren die in de algoritmiek gebruikt worden. Dit zijn o.a. de opeenvolging, selectie en lussen (herhaling). Vóór we

Nadere informatie

te vermenigvuldigen, waarbij N het aantal geslagen Nederlandse munten en B het aantal geslagen buitenlandse munten zijn. Het resultaat is de vector

te vermenigvuldigen, waarbij N het aantal geslagen Nederlandse munten en B het aantal geslagen buitenlandse munten zijn. Het resultaat is de vector Les 3 Matrix product We hebben gezien hoe we matrices kunnen gebruiken om lineaire afbeeldingen te beschrijven. Om het beeld van een vector onder een afbeelding te bepalen hebben we al een soort product

Nadere informatie

Als een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk.

Als een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk. HOOFDSTUK 3 3.1 Stapsgewijs programmeren In de vorige hoofdstukken zijn programmeertalen beschreven die imperatief zijn. is het stapsgewijs in code omschrijven wat een programma moet doen, net als een

Nadere informatie

Opgaven voor Kansrekening

Opgaven voor Kansrekening Opgaven voor Kansrekening Opgave 1. Je hebt 4 verschillende wiskunde boeken, 6 psychologie boeken en 2 letterkundige boeken. Hoeveel manieren zijn er om deze twaalf boeken op een boord te plaatsen als:

Nadere informatie

Tentamenset A. 2. Welke van de volgende beweringen is waar? c. N R N d. R Z R

Tentamenset A. 2. Welke van de volgende beweringen is waar? c. N R N d. R Z R Tentamenset A. Gegeven de volgende verzamelingen A en B. A is de verzameling van alle gehele getallen tussen de 0 en 0 die deelbaar zijn door, en B is de verzameling gehele positieve getallen deelbaar

Nadere informatie

Tweede Toets Datastructuren 27 juni 2018, , Olympos Hal 2.

Tweede Toets Datastructuren 27 juni 2018, , Olympos Hal 2. Tweede Toets Datastructuren 27 juni 2018, 13.30 15.30, Olympos Hal 2. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag

Nadere informatie

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie Hoofdstuk 5 Recursion I N T R O D U C T I E Veel methoden die we op een datastructuur aan kunnen roepen, zullen op een recursieve wijze geïmplementeerd worden. Recursie is een techniek waarbij een vraagstuk

Nadere informatie

Examen Discrete Wiskunde donderdag 7 maart, 2019

Examen Discrete Wiskunde donderdag 7 maart, 2019 Examen Discrete Wiskunde 2018-2019 donderdag 7 maart, 2019 De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Gebruik hiervoor de ruimte onder de vraag; er is in principe genoeg

Nadere informatie

Friendly Functions and Shared BDD s

Friendly Functions and Shared BDD s Friendly Functions and Shared BDD s Bob Wansink 19 Juni 2010 Deze notitie behandelt pagina s 81 tot 84 van The Art of Computer Programming, Volume 4, Fascicle 1 van Donald E. Knuth. Inhoudelijk gaat het

Nadere informatie

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40 Recursion Introductie 37 Leerkern 37 5.1 Foundations of recursion 37 5.2 Recursive analysis 37 5.3 Applications of recursion 38 Terugkoppeling 40 Uitwerking van de opgaven 40 Hoofdstuk 5 Recursion I N

Nadere informatie

Derde college complexiteit. 7 februari Zoeken

Derde college complexiteit. 7 februari Zoeken College 3 Derde college complexiteit 7 februari 2017 Recurrente Betrekkingen Zoeken 1 Recurrente betrekkingen -1- Rij van Fibonacci: 0,1,1,2,3,5,8,13,21,... Vanaf het derde element: som van de voorgaande

Nadere informatie

Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft

Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Tentamen Object Georiënteerd Programmeren TI1200 30 januari 2013, 9.00-12.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Dit

Nadere informatie

Tweede Huiswerk Security 26 of 28 oktober, 11.00, Nabespreken op Werkcollege.

Tweede Huiswerk Security 26 of 28 oktober, 11.00, Nabespreken op Werkcollege. Tweede Huiswerk Security 26 of 28 oktober, 11.00, Nabespreken op Werkcollege. Kijk het huiswerk van je collega s na en schrijf de namen van de nakijkers linksboven en het totaalcijfer rechts onder de namen

Nadere informatie

Opgaven Eigenschappen van Getallen Security, 2018, Werkgroep.

Opgaven Eigenschappen van Getallen Security, 2018, Werkgroep. Opgaven Eigenschappen van Getallen Security, 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht

Nadere informatie

Betrouwbaarheid en levensduur

Betrouwbaarheid en levensduur Kansrekening voor Informatiekunde, 26 Les 7 Betrouwbaarheid en levensduur 7.1 Betrouwbaarheid van systemen Als een systeem of netwerk uit verschillende componenten bestaat, kan men zich de vraag stellen

Nadere informatie

Constanten. Variabelen. Expressies. Variabelen. Constanten. Voorbeeld : varid.py. een symbolische naam voor een object.

Constanten. Variabelen. Expressies. Variabelen. Constanten. Voorbeeld : varid.py. een symbolische naam voor een object. een symbolische naam voor een object. Variabelen Constanten Variabelen Expressies naam : geeft de plaats in het geheugen aan waarde : de inhoud van het object identifier : een rij van letters en/of cijfers

Nadere informatie

1. De wereld van de kansmodellen.

1. De wereld van de kansmodellen. STATISTIEK 3 DE GRAAD.. De wereld van de kansmodellen... Kansmodellen X kansmodel Discreet model Continu model Kansverdeling Vaas Staafdiagram Dichtheidsfunctie f(x) GraJiek van f Definitie: Een kansmodel

Nadere informatie

1 Rekenen met gehele getallen

1 Rekenen met gehele getallen 1 Inhoudsopgave 1 Rekenen met gehele getallen... 1.1 De gehele getallen... 1. Optellen... 1. Opgaven... 1. Aftrekken... 1. Opgaven... 1. Vermenigvuldigen... 1. Opgaven... 1.8 Delen... 9 1.9 Opgaven...9

Nadere informatie

Examen Algoritmen en Datastructuren III

Examen Algoritmen en Datastructuren III Derde bachelor Informatica Academiejaar 2006 2007, eerste zittijd Examen Algoritmen en Datastructuren III Naam :.............................................................................. 1. (2 pt)

Nadere informatie

Opgaven Binair Zoeken en Invarianten Datastructuren, 4 mei 2016, Werkgroep.

Opgaven Binair Zoeken en Invarianten Datastructuren, 4 mei 2016, Werkgroep. Opgaven Binair Zoeken en Invarianten Datastructuren, 4 mei 2016, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal

Nadere informatie

Zevende college algoritmiek. 23/24 maart Verdeel en Heers

Zevende college algoritmiek. 23/24 maart Verdeel en Heers Zevende college algoritmiek 23/24 maart 2017 Verdeel en Heers 1 Algoritmiek 2017/Backtracking Tweede Programmeeropdracht 0 1 2 3 0 1 2 3 4 1 2 3 4 5 2 Algoritmiek 2017/Backtracking Tweede Programmeeropdracht

Nadere informatie

Een eenvoudig algoritme om permutaties te genereren

Een eenvoudig algoritme om permutaties te genereren Een eenvoudig algoritme om permutaties te genereren Daniel von Asmuth Inleiding Er zijn in de vakliteratuur verschillende manieren beschreven om alle permutaties van een verzameling te generen. De methoden

Nadere informatie

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren HOOFDSTUK 3 3.1 Stapsgewijs programmeren De programmeertalen die tot nu toe genoemd zijn, zijn imperatieve of procedurele programmeertalen. is het stapsgewijs in code omschrijven wat een programma moet

Nadere informatie

Zevende college Algoritmiek. 6 april Verdeel en Heers

Zevende college Algoritmiek. 6 april Verdeel en Heers Zevende college Algoritmiek 6 april 2018 Verdeel en Heers 1 Algoritmiek 2018/Backtracking Programmeeropdracht 2 Puzzel 2: D O N A L D G E R A L D + R O B E R T Elke letter stelt een cijfer voor (0,1,...,9)

Nadere informatie

1 Recurrente betrekkingen

1 Recurrente betrekkingen WIS1 1 1 Recurrente betrekkingen 1.1 De torens van Hanoi De torens van Hanoi Edouard Lucas, 1884: Gegeven 3 pinnen en 64 schijven van verschillende grootte. Startsituatie: 64 op linkerpin, geordend naar

Nadere informatie

Zevende college algoritmiek. 24 maart Verdeel en Heers

Zevende college algoritmiek. 24 maart Verdeel en Heers Zevende college algoritmiek 24 maart 2016 Verdeel en Heers 1 Verdeel en heers 1 Divide and Conquer 1. Verdeel een instantie van het probleem in twee (of meer) kleinere instanties 2. Los de kleinere instanties

Nadere informatie

D-dag 2014 Vrijeschool Zutphen VO. D -DAG 13 februari 2014: 1+ 1 = 2. (en hoe nu verder?) 1 = 2en hoe nu verder?

D-dag 2014 Vrijeschool Zutphen VO. D -DAG 13 februari 2014: 1+ 1 = 2. (en hoe nu verder?) 1 = 2en hoe nu verder? D -DAG 13 februari 2014: 1+ 1 = 2 (en hoe nu verder?) 1 = 2en hoe nu verder? 1 Inleiding Snel machtsverheffen Stel je voor dat je 7 25 moet uitrekenen. Je weet dat machtsverheffen herhaald vermenigvuldigen

Nadere informatie

Opgaven Getaltheorie en Cryptografie (deel 4) Inleverdatum: 13 mei 2002

Opgaven Getaltheorie en Cryptografie (deel 4) Inleverdatum: 13 mei 2002 Opgaven Getaltheorie en Cryptografie (deel 4) Inleverdatum: 13 mei 2002 19.a) Laat zien dat 5 een voortbrenger is van F 37. b) In het sleuteldistributiesysteem van Diffie en Hellman (met G = F 37, α =

Nadere informatie

Herexamen Discrete Wiskunde deel I donderdag 6 juli, 2017

Herexamen Discrete Wiskunde deel I donderdag 6 juli, 2017 Herexamen Discrete Wiskunde 2016-2017 deel I donderdag 6 juli, 2017 De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Schrijf op elk ingeleverd vel uw naam en studentnummer.

Nadere informatie

en-splitsingen: een aantal alternatieven worden parallel toegepast, of-splitsingen: van een aantal alternatieven wordt er één toegepast,

en-splitsingen: een aantal alternatieven worden parallel toegepast, of-splitsingen: van een aantal alternatieven wordt er één toegepast, Kansrekening voor Informatiekunde, 25 Les 8 Proces analyse Veel processen laten zich door netwerken beschrijven, waarin knopen acties aangeven en opdrachten langs verbindingen tussen de knopen verwerkt

Nadere informatie

Gaap, ja, nog een keer. In één variabele hebben we deze formule nu al een paar keer gezien:

Gaap, ja, nog een keer. In één variabele hebben we deze formule nu al een paar keer gezien: Van de opgaven met een letter en dus zonder nummer staat het antwoord achterin. De vragen met een nummer behoren tot het huiswerk. Spieken achterin helpt je niets in het beter snappen... 1 Stelling van

Nadere informatie

Controle structuren. Keuze. Herhaling. Het if statement. even1.c : testen of getal even of oneven is. statement1 statement2

Controle structuren. Keuze. Herhaling. Het if statement. even1.c : testen of getal even of oneven is. statement1 statement2 Controle structuren De algemene vorm: 1 bloks door middel van indentatie Keuze Herhaling if expressie :...... In de volgende vorm is het else gedeelte weggelaten: if expressie :... Het if keuze- of conditioneel

Nadere informatie

Uitwerking vierde serie inleveropgaven

Uitwerking vierde serie inleveropgaven Uitwerking vierde serie inleveropgaven Opgave 1. Gegeven is dat G een permutatiegroep is; a is een willekeurig element. St(a) is de deelverzameling van G die alle permutaties π bevat waarvoor geldt π(a)

Nadere informatie

Vierde college algoritmiek. 23/24 februari Complexiteit en Brute Force

Vierde college algoritmiek. 23/24 februari Complexiteit en Brute Force Algoritmiek 2017/Complexiteit Vierde college algoritmiek 23/24 februari 2017 Complexiteit en Brute Force 1 Algoritmiek 2017/Complexiteit Tijdcomplexiteit Complexiteit (= tijdcomplexiteit) van een algoritme:

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2012 2013, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Algoritmes en Priemgetallen. Hoe maak je een sleutelpaar voor RSA?

Algoritmes en Priemgetallen. Hoe maak je een sleutelpaar voor RSA? Algoritmes en Priemgetallen Hoe maak je een sleutelpaar voor RSA? Het recept van RSA Kies p q priemgetallen en bepaal N = pq Kies e Z N (publieke sleutel) Bepaal d e 1 mod φ N (privésleutel) x ed x kφ

Nadere informatie

Tentamen Voortgezette Kansrekening (WB006C)

Tentamen Voortgezette Kansrekening (WB006C) WB6C: Voortgezette Kansrekening Donderdag 26 januari 212 Tentamen Voortgezette Kansrekening (WB6C) Het is een open boek tentamen. Gebruik van een rekenmachine of andere hulpmiddelen is niet toegestaan.

Nadere informatie

Tentamen Kansrekening en Statistiek (2WS04), dinsdag 17 juni 2008, van uur.

Tentamen Kansrekening en Statistiek (2WS04), dinsdag 17 juni 2008, van uur. Technische Universiteit Eindhoven Faculteit Wiskunde en Informatica Tentamen Kansrekening en Statistiek (2WS4, dinsdag 17 juni 28, van 9. 12. uur. Dit is een tentamen met gesloten boek. De uitwerkingen

Nadere informatie

Discrete Wiskunde 2WC15, Lente Jan Draisma

Discrete Wiskunde 2WC15, Lente Jan Draisma Discrete Wiskunde 2WC15, Lente 2010 Jan Draisma HOOFDSTUK 2 Gröbnerbases 1. Vragen We hebben gezien dat de studie van stelsels polynoomvergelijkingen in meerdere variabelen op natuurlijke manier leidt

Nadere informatie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie Discrete Structuren Piter Dykstra Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 22 februari 2009 INDUCTIE & RECURSIE Paragrafen 4.3-4.6 Discrete Structuren Week 3:

Nadere informatie

Vierde college complexiteit. 14 februari Beslissingsbomen

Vierde college complexiteit. 14 februari Beslissingsbomen College 4 Vierde college complexiteit 14 februari 2017 Restant zoeken Beslissingsbomen 1 Binair zoeken Links := 1; Rechts := n; while Links Rechts do Midden := Links + Rechts 2 ; if X = A[Midden] then

Nadere informatie

Discrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie

Discrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie Discrete Structuren Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 3 maart 2008 GRAFEN & BOMEN Paragrafen 6.1-6.4 Discrete Structuren

Nadere informatie

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen.

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen. WIS14 1 14 Grafen 14.1 Grafen Gerichte grafen Voor een verzameling V is een binaire relatie op V een verzameling geordende paren van elementen van V. Voorbeeld: een binaire relatie op N is de relatie KleinerDan,

Nadere informatie

Inleiding Programmeren 2

Inleiding Programmeren 2 Inleiding Programmeren 2 Gertjan van Noord November 26, 2018 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te

Nadere informatie

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 )

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 ) OI 2010 Finale 12 Mei 2010 Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub VOORNAAM :....................................................... NAAM :..............................................................

Nadere informatie

REEKS I. Zaterdag 6 november 2010, 9u

REEKS I. Zaterdag 6 november 2010, 9u TEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR 2010-2011 REEKS I Zaterdag 6 november 2010, 9u NAAM :... VRAAG 1: MINSTENS [5 PUNTEN] Schrijf een methode minstens(), met twee

Nadere informatie

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017 Uitgebreide uitwerking Tentamen Complexiteit, juni 017 Opgave 1. a. Een pad van de wortel naar een blad stelt de serie achtereenvolgende arrayvergelijkingen voor die het algoritme doet op zekere invoer.

Nadere informatie

Tentamen Grondslagen van de Wiskunde A Met beknopte uitwerking

Tentamen Grondslagen van de Wiskunde A Met beknopte uitwerking Tentamen Grondslagen van de Wiskunde A Met beknopte uitwerking 10 december 2013, 09:30 12:30 Dit tentamen bevat 5 opgaven; zie ook de ommezijde. Alle opgaven tellen even zwaar (10 punten); je cijfer is

Nadere informatie

5.0 Voorkennis. Voorbeeld 1: In een vaas zitten 10 rode, 5 witte en 6 blauwe knikkers. Er worden 9 knikkers uit de vaas gepakt.

5.0 Voorkennis. Voorbeeld 1: In een vaas zitten 10 rode, 5 witte en 6 blauwe knikkers. Er worden 9 knikkers uit de vaas gepakt. 5.0 Voorkennis Voorbeeld 1: In een vaas zitten 10 rode, 5 witte en 6 blauwe knikkers. Er worden 9 knikkers uit de vaas gepakt. a) Bereken de kans op minstens 7 rode knikkers: P(minstens 7 rood) = P(7 rood)

Nadere informatie

Combinatoriek groep 2

Combinatoriek groep 2 Combinatoriek groep 2 Recursie Trainingsdag 3, 2 april 2009 Homogene lineaire recurrente betrekkingen We kunnen een rij getallen a 0, a 1, a 2,... op twee manieren definiëren: direct of recursief. Een

Nadere informatie

168 HOOFDSTUK 5. REEKSONTWIKKELINGEN

168 HOOFDSTUK 5. REEKSONTWIKKELINGEN 168 HOOFDSTUK 5. REEKSONTWIKKELINGEN 5.7 Vraagstukken Vraagstuk 5.7.1 Beschouw de differentiaalvergelijking d2 y d 2 = 2 y. (i) Schrijf y = a k k. Geef een recurrente betrekking voor de coëfficienten a

Nadere informatie

Hoofdstuk 1. Afspraken en notaties

Hoofdstuk 1. Afspraken en notaties Hoofdstuk 1 Afspraken en notaties In deze tekst onderzoeken we een eenvoudig dobbelspel: twee spelers hebben een dobbelsteen, gooien deze, en wie het hoogst aantal ogen gooit wint. Er blijken setjes dobbelstenen

Nadere informatie

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Tentamen Kansrekening (2WS2, Vrijdag 23 januari 25, om 9:-2:. Dit is een tentamen met gesloten boek. De uitwerkingen van de opgaven dienen

Nadere informatie

DEC SDR DSP project 2017 (2)

DEC SDR DSP project 2017 (2) DEC SDR DSP project 2017 (2) Inhoud: DSP software en rekenen Effect van type getallen (integer, float) Fundamenten onder DSP Lezen van eenvoudige DSP formules x[n] Lineariteit ( x functie y dus k maal

Nadere informatie

Tentamen Programmeren in C (EE1400)

Tentamen Programmeren in C (EE1400) TU Delft Tentamen Programmeren in C (EE1400) 3 feb. 2012, 9.00 12.00 Faculteit EWI - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code gevraagd

Nadere informatie

FACULTEIT ECONOMIE EN BEDRIJFSKUNDE Afdeling Kwantitatieve Economie

FACULTEIT ECONOMIE EN BEDRIJFSKUNDE Afdeling Kwantitatieve Economie FACULTEIT ECONOMIE EN BEDRIJFSKUNDE Afdeling Kwantitatieve Economie Lineaire Algebra, tentamen Uitwerkingen vrijdag 4 januari 0, 9 uur Gebruik van een formuleblad of rekenmachine is niet toegestaan. De

Nadere informatie

Inleiding Programmeren 2

Inleiding Programmeren 2 Inleiding Programmeren 2 Gertjan van Noord November 28, 2016 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te

Nadere informatie

Programmeermethoden. Recursie. week 11: november kosterswa/pm/

Programmeermethoden. Recursie. week 11: november kosterswa/pm/ Programmeermethoden Recursie week 11: 21 25 november 2016 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Pointers Derde programmeeropgave 1 Het spel Gomoku programmeren we als volgt: week 1: pointerpracticum,

Nadere informatie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie Discrete Structuren Piter Dykstra Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 23 februari 2009 GRAFEN & BOMEN Paragrafen 6.1-6.4 Discrete Structuren Week 3 en 4:

Nadere informatie

Gokautomaten (voor iedereen)

Gokautomaten (voor iedereen) Gokautomaten (voor iedereen) In een fruitautomaat draaien de schijven I, II en III onafhankelijk van elkaar. Door een hendel kan elke schijf tot stilstand worden gebracht. In de tabel zie je wat op elke

Nadere informatie

Set 3 Inleveropgaven Kansrekening (2WS20) Opgaven met sterretjes zijn lastiger dan opgaven zonder sterretje.

Set 3 Inleveropgaven Kansrekening (2WS20) Opgaven met sterretjes zijn lastiger dan opgaven zonder sterretje. Technische Universiteit Eindhoven Faculteit Wiskunde en Informatica Set 3 Inleveropgaven Kansrekening (2WS2) 23-24 Opgaven met sterretjes zijn lastiger dan opgaven zonder sterretje.. Voetbalplaatjes. Bij

Nadere informatie

Geldwisselprobleem van Frobenius

Geldwisselprobleem van Frobenius Geldwisselprobleem van Frobenius Karin van de Meeberg en Dieuwertje Ewalts 12 december 2001 1 Inhoudsopgave 1 Inleiding 3 2 Afspraken 3 3 Is er wel zo n g? 3 4 Eén waarde 4 5 Twee waarden 4 6 Lampenalgoritme

Nadere informatie

Vijfde college complexiteit. 21 februari Selectie Toernooimethode Adversary argument

Vijfde college complexiteit. 21 februari Selectie Toernooimethode Adversary argument Complexiteit 2017/05 College 5 Vijfde college complexiteit 21 februari 2017 Selectie Toernooimethode Adversary argument 1 Complexiteit 2017/05 Opgave 28 Gegeven twee oplopend gesorteerde even lange rijen

Nadere informatie

Tentamen combinatorische optimalisatie Tijd:

Tentamen combinatorische optimalisatie Tijd: Tentamen combinatorische optimalisatie 26-05-2014. Tijd: 9.00-11.30 Tentamen is met gesloten boek. Beschrijf bij elke opgave steeds het belangrijkste idee. Notatie en exacte formulering is van minder belang.

Nadere informatie

Gedistribueerd Programmeren - Samenvatting

Gedistribueerd Programmeren - Samenvatting Gedistribueerd Programmeren - Samenvatting Geertjan van Vliet Disclaimer: Aan deze teksten kunnen geen rechten ontleend worden. Bepaalde passages zijn de visie van de auteur en niet die van de docent.

Nadere informatie