Take-home Tentamen Protocolvericatie. Universiteit van Amsterdam. 27 Maart 1994
|
|
- Jasper Bosmans
- 5 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Take-home Tentamen Protocolvericatie Vakgroep Programmatuur Universiteit van Amsterdam 27 Maart 1994 Algemene Opmerkingen Dit tentamen omvat zes reguliere opgaven plus een bonusopgave. Opgaves 1, 2, 5 en de bonusopgave leveren ieder maximaal 1 punt op, opgave 3 maximaal 3 punten, en opgaves 4 en 6 maximaal 2 punten. Alle bewijzen dienen zo gedetailleerd en precies mogelijk te worden uitgeschreven!! In het tentamen wordt een centrale plaats ingenomen door het I/O automaten model, dat tijdens het college uitgebreid aan de orde is gekomen, onder andere bij de bespreking van [1]. Het is toegestaan om bij het maken van het tentamen samen te werken. Nadat de tentamens zijn nagekeken, zal echter tijdens een beoordelingsgesprek bekeken worden of je zelf hetgeen je hebt opgeschreven ook echt begrijpt. Uiterlijk op vrijdag 29 april dient het tentamen te worden ingeleverd, hetzij bij mij op het CWI, hetzij bij het onderwijsbureau. Met eventuele vragen kun je bij mij terecht t/m vrijdag 15 april, daarna ben ik met vakantie. Verder ben ik t/m donderdag 7 april alleen per bereikbaar (fritsv@cwi.nl). Succes! Frits Vaandrager Mutual Exclusion Bij het Mutual Exclusion probleem gaat het er om een enkele, ondeelbare hulpbron afwisselend toe te kennen aan n processen p 1 ; : : : ; p n. Het beschikken over toegang tot de hulpbron wordt gemodelleerd door een proces de zogenaamde kritieke sectie te laten bereiken, wat eenvoudigweg een als zodanig aangewezen deelverzameling is van de toestanden van het proces. Zolang het proces geen toegang wenst tot de hulpbron, is het in de zogenaamde resterende sectie. Om toegang te verkrijgen tot de kritieke sectie voert het proces een probeerprotocol uit, en nadat het proces uit de kritieke sectie is gekomen executeert het een uitgangsprotocol. Deze procedure kan herhaald worden, en het gedrag van ieder proces is derhalve cyclisch, gaande van de resterende sectie (R) naar de probeersectie (P ), dan naar de kritieke sectie (K), en tot slot naar de uitgangssectie (U). 1
2 In het protocol waar we bij dit tentamen naar kijken vindt communicatie tussen de processen plaats via gedeelde variabelen (shared memory). Voor een gegeven proces p i en gedeelde variabele x zijn er twee atomaire (ondeelbare) basis-acties: p i leest x en verandert van toestand gebruikmakend van de gelezen waarde, en p i schrijft een waarde in x, bepaald door de toestand van p i. Ieder proces p i communiceert met zijn \eigenaar", een verder niet gespeciceerd extern programma. Hiertoe heeft proces p i een invoer actie probeer i. Dit modeleert een verzoek van de eigenaar om toegang tot de kritieke sectie. Verder is een een invoer actoe uitgang i waarmee de eigenaar te kennen geeft dat de hulpbron weer vrij is. Proces p i heeft een uitvoer actie krit i, waarmee het zijn eigenaar laat weten dat de hulpbron beschikbaar is, en een uitvoer actie rest i die aangeeft dat de eigenaar weer verder mag. We nemen aan dat de eigenaars het cyclische karakter respecteren, d.w.z., een eigenaar zal niet de eerste zijn die het cyclische volgorde van de communicaties in de war stuurt. Onder deze aanname, willen we laten zien dat het protocol voldoet aan de volgende eigenschappen. Mutual exclusion: Er is geen bereikbare toestand waarin meer dan een proces zich in sectie K bevindt. Geen deadlocks Indien op enig punt in een faire executie tenminste een proces zich in sectie P bevindt en er geen proces in sectie K is, dan is er een later punt in deze executie waar een proces sectie K binnengaat. Analoog, indien op enig punt in een faire executie tenminste een proces zich in sectie U bevindt, dan is er een later punt in deze executie waar een proces sectie R binnengaat. Geen verschoppelingen In iedere faire executie (ten aanzien van de transities van de processen p i ) van het protocol waarin de eigenaars altijd de hulpbron teruggeven, gaat ieder proces in P uiteindelijk over naar K. Tevens zal, in iedere faire executie, ieder proces in U uiteindelijk sectie R binnengaan. Lamport's Bakkerij Algoritme Dit tentamen gaat over Lamport's Bakkerij, een fundamenteel en interessant mutual exclusion algoritme; het is practisch, en ideeen eruit vind je terug op veel andere plaatsen. Naast mutual exclusion garandeert het algoritme fairness: ieder proces dat de kritieke sectie binnen wil zal daar uiteindelijk in slagen. Een minder prettige eigenschap is dat het algoritme gebruik maakt van registers met een niet begrensde omvang. De programmatekst staat gegeven in Figuur 1. In het algoritme is de probeersectie P opgedeeld in twee deelgebieden, de drempel (genaamd D) en de rest van P. Op de drempel kiest ieder proces een nummer dat groter is dan de nummers waarvan het kan zien dat ze reeds door andere processen zijn gekozen. Terwijl het hiermee bezig is, wordt kiest[i] op 1 gezet, om zo de andere processen te laten weten dat het een nummer aan het kiezen is. Merk op dat het mogelijk is dat twee processen zich tegelijkertijd op de drempel bevinden, en derhalve kunnen twee processen 2
3 Gedeelde variabelen kiest: een array gendiceerd door [1::n] van natuurlijke getallen uit f0; 1g, initieel allemaal 0, waarbij kiest[i] wordt geschreven door pi en gelezen door alle processen. nummer : een array gendiceerd door [1::n] van natuurlijke getallen uit f0; 1; : : :g, initieel allemaal 0, waarbij nummer [i] wordt geschreven door pi en gelezen door alle processen. Programmatekst voor pi probeer i ** begin van de drempel ** L1: kiest[i] := 1 nummer [i] := 1 + maxfnummer [1]; : : : ; nummer[n]g kiest[i] := 0 ** einde van de drempel ** ** begin van de bakkerij ** for j 2 f1; : : :; ng do L2: if kiest[j] = 1 then goto L2 end if L3: if nummer [j] 6= 0 ^ (nummer [j]; j) < (nummer [i]; i) then goto L3 end if end for krit i ** kritieke sectie ** ** einde van de bakkerij ** uitgang i nummer [i] := 0 rest i ** resterende sectie ** Figure 1: Lamport's Bakkerij algoritme voor mutual exclusion. 3
4 hetzelfde nummer kiezen. Om dit probleem op te lossen, wordt er vergeleken op basis van de lexicograsch geordende paren (nummer ; index ): op die manier komt het proces met de laagste index het eerste aan de beurt. In de rest van de probeersectie wacht ieder proces totdat zijn (nummer; index ) paar het laagste is, nadat het eerst gewacht heeft op alle processen die ook een nummer trekken. Het protocol lijkt in zijn functioneren op een bakkerij: klanten komen binnen via de drempel, waar ze een nummer kiezen, gaan dan de bakkerij binnen en wachten in de winkel totdat hun nummer aan de beurt is. Opgave 1 Zij A een willekeurige I/O automaat en zij een eindige executie van A. Bewijs dat een prex is van een faire executie van A. Opgave 2 Zij A een willekeurige I/O automaat. Laat zien dat er een I/O automaat B bestaat met dezelfde input en output acties als A maar met slechts een enkele klasse in part(b), zodanig dat fairtraces(a) fairtraces(b). Opgave 3 Herschrijf het protocol als een I/O automaat in preconditie/eect stijl. Generalizeer het protocol hierbij enigzins door zoveel mogelijk nondeterminisme toe te staan in de volgorde waarin acties worden uitgevoerd. (In de preconditie/eect stijl is het eenvoudiger om willekeurige volgordes van acties te speciceren dan in de gebruikelijke programma notatie.) Het is de bedoeling dat je bij de resterende opgaven alle bewijzen baseert op de modelering van het protocol als I/O automaat. Opgave 4 Bewijs dat voor iedere bereikbare toestand van het protocol waarin geldt dat p i 2 K en voor zekere j 6= i, p j 2 (P? D) [ K, er tevens geldt dat (nummer[i]; i) < (nummer[j]; j). Opgave 5 Bewijs dat het protocol voldoet aan de conditie van Mutual exclusion. (Hint: gebruik het resultaat van Opgave 4.) 4
5 Opgave 6 Bewijs dat het protocol voldoet aan de conditie van Geen verschoppelingen. Bonusopgave Wat gaat er mis in het protocol als we in plaats van de natuurlijke getallen gebruik maken van de natuurlijke getallen modulo B, voor een heel groot getal B? Beschrijf een speciek scenario. References [1] L. Helmink, M.P.A. Sellink, en F.W. Vaandrager. Proof-checking a data link protocol. In H. Barendregt and T. Nipkow, editors, Proceedings Workshop Esprit BRA \Types for Proofs and Programs", Nijmegen, The Netherlands, May 1993, Lecture Notes in Computer Science. Springer-Verlag, Uitgebreide versie verkrijgbaar als Rapport CS-R9420, CWI, Amsterdam, Maart
Gelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 5.1-5.2, Appendix A.
Gelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 51-52, Appendix A1) Processes zijn meestal niet onafhankelijk Bijvoorbeeld: 2 processen
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica
TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Deel-tentamen Operating Systemen (2IN05) op vrijdag 5 oktober 2007, 9.00-10.30 uur. Het tentamen bestaat uit twee delen die apart worden
Nadere informatieTentamen 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 informatieVierde 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 informatie3. 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 informatieGödels theorem An Incomplete Guide to Its Use and Abuse, Hoofdstuk 3
Gödels theorem An Incomplete Guide to Its Use and Abuse, Hoofdstuk 3 Koen Rutten, Aris van Dijk 30 mei 2007 Inhoudsopgave 1 Verzamelingen 2 1.1 Definitie................................ 2 1.2 Eigenschappen............................
Nadere informatieSemantiek (2IT40) Jos Baeten. Formele Methoden. HG 7.19 tel.: Hoorcollege 1 (29 maart 2007)
Jos Formele Methoden josb@win.tue.nl http://www.win.tue.nl/~josb/ HG 7.19 tel.: 040 247 5155 Hoorcollege 1 (29 maart 2007) 2IT40 Organisatie Colstructie: docent: wanneer: donderdagen 3 e en 4 e uur waar:
Nadere informatieSmall Basic Programmeren Text Console 2
Oefening 1: Hoogste getal Je leest een reeks positieve gehele getallen in totdat je het getal 0 (nul) invoert. Daarna stopt de invoer en druk je een regel af met het hoogste getal uit de reeks. Voorbeeld:
Nadere informatieVierde 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 informatieProbleem met dobbelspel. 2IP05: Programmeren Blok A. 5 spelers,2 dobbelstenen. wstomv/edu/2ip05/ Per ronde werpt elke speler 1
2IP05: Programmeren Blok A http://www.win.tue.nl/ wstomv/edu/2ip05/ College 1 5 spelers,2 dobbelstenen Probleem met dobbelspel Per ronde werpt elke speler 1 Tom Verhoeff Technische Universiteit Eindhoven
Nadere informatieUitwerking 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 informatieVierde 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 informatieOpmerkingen en vragen aan Ultieme vraag: Hoe beïnvloedt dit de winstkansen?
2IP05: Programmeren Blok A http://www.win.tue.nl/ wstomv/edu/2ip05/ 5 spelers, 2 dobbelstenen Probleem met dobbelspel College 1 Per ronde werpt elke speler 1 Kees Hemerik Tom Verhoeff Technische Universiteit
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30
TECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30 Algemene opmerkingen (lees dit!): - Dit tentamen duurt ANDERHALF UUR! - Dit
Nadere informatieGedistribueerd 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 informatieSemaforen. Semaforen p. 1/2
Semaforen 2008 Semaforen p. 1/2 Vorige Keer mbv mutual exclusion kritieke sectie (cs) 1. software : Dekker s, Peterson s algoritme 2. hardware: uniprocessor machine: disable interrupts 3. hardware: multiprocessor
Nadere informatieIII.2 De ordening op R en ongelijkheden
III.2 De ordening op R en ongelijkheden In de vorige paragraaf hebben we axioma s gegeven voor de optelling en vermenigvuldiging in R, maar om R vast te leggen moeten we ook ongelijkheden in R beschouwen.
Nadere informatieDerde 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 informatieUitgebreide 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 informatieDisclaimer Het bestand dat voor u ligt, is nog in ontwikkeling. Op verzoek is deze versie digitaal gedeeld. Wij willen de lezer er dan ook op wijzen
Disclaimer Het bestand dat voor u ligt, is nog in ontwikkeling. Op verzoek is deze versie digitaal gedeeld. Wij willen de lezer er dan ook op wijzen dat er zowel typografische als inhoudelijke onvolkomenheden
Nadere informatieMutual Exclusion en Semaforen
Mutual Exclusion en Semaforen Werkcollege Processen Wouter Geraedts w.geraedts@student.ru.nl 24 mei 2013 Wouter Geraedts 24 mei 2013 Werkcollege Processen 2013-05-24 1 / 18 Outline Hyman s Algoritme Hyman
Nadere informatieopgaven formele structuren deterministische eindige automaten
opgaven formele structuren deterministische eindige automaten Opgave. De taal L over het alfabet {a, b} bestaat uit alle strings die beginnen met aa en eindigen met ab. Geef een reguliere expressie voor
Nadere informatieOpgave 1 - Uitwerking
Opgave 1 - Uitwerking Om dit probleem op te lossen moeten we een zogenaamd stelsel van vergelijkingen oplossen. We zetten eerst even de tips van de begeleider onder elkaar: 1. De zak snoep weegt precies
Nadere informatieMechanical Doll. doll
doll Mechanical Doll Een mechanische pop is een pop die automatisch een specifieke serie bewegingen herhaald In Japan zijn er al eeuwenlang allerlei mechanische poppen gemaakt De bewegingen van een mechanische
Nadere informatieBeslisbare talen (1) IN2505-II Berekenbaarheidstheorie. Beslisbare talen (2) Beslisbare talen (3) De talen: College 7
Beslisbare talen (1) College 7 Algoritmiekgroep Faculteit EWI TU Delft 10 mei 2009 De talen: A DFA = { M, w M is een DFA die w accepteert} A NFA = { M, w M is een NFA die w accepteert} E DFA = { M M is
Nadere informatieElfde college algoritmiek. 18 mei Algoritme van Dijkstra, Heap, Heapify & Heapsort
Algoritmiek 018/Algoritme van Dijkstra Elfde college algoritmiek 18 mei 018 Algoritme van Dijkstra, Heap, Heapify & Heapsort 1 Algoritmiek 018/Algoritme van Dijkstra Uit college 10: Voorb. -1- A B C D
Nadere informatieALGORITMIEK: antwoorden werkcollege 5
1 ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit
Nadere informatieALGORITMIEK: antwoorden werkcollege 5
ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit
Nadere informatieALGORITMIEK: antwoorden werkcollege 5
ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit
Nadere informatieOntwerp van Algoritmen: opgaven weken 3 en 4
0 Ontwerp van Algoritmen: opgaven weken 3 en 4 Voor alle volgende opgaven over programmaatjes geldt de spelregel: formuleer altijd eerst alle bewijsverplichtingen. selectie 45. (tail distribution)(prima
Nadere informatieVierde college algoritmiek. 2 maart Toestand-actie-ruimte Exhaustive Search
Algoritmiek 2018/Toestand-actie-ruimte Vierde college algoritmiek 2 maart 2018 Toestand-actie-ruimte Exhaustive Search 1 Algoritmiek 2018/Toestand-actie-ruimte Kannen Voorbeeld 4: Kannenprobleem We hebben
Nadere informatieFaculteit Economie en Bedrijfskunde
Faculteit Economie en Bedrijfskunde Op dit voorblad vindt u belangrijke informatie omtrent het tentamen. Voordat u met het tentamen t: lees dit voorblad! Tentamen: V&O IV: Programmeren Tentamendatum &
Nadere informatieBijzondere kettingbreuken
Hoofdstuk 15 Bijzondere kettingbreuken 15.1 Kwadratische getallen In het vorige hoofdstuk hebben we gezien dat 2 = 1, 2, 2, 2, 2, 2, 2,.... Men kan zich afvragen waarom we vanaf zeker moment alleen maar
Nadere informatieIn Katern 2 hebben we de volgende rekenregel bewezen, als onderdeel van rekenregel 4:
Katern 4 Bewijsmethoden Inhoudsopgave 1 Bewijs uit het ongerijmde 1 2 Extremenprincipe 4 3 Ladenprincipe 8 1 Bewijs uit het ongerijmde In Katern 2 hebben we de volgende rekenregel bewezen, als onderdeel
Nadere informatieAchtste college algoritmiek. 8 april Dynamisch Programmeren
Achtste college algoritmiek 8 april 2016 Dynamisch Programmeren 1 Werkcollege-opgave Dutch Flag Problem Gegeven een array gevuld met R, W, en B. Reorganiseer dit array zo dat van links naar rechts eerst
Nadere informatieExamen 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 informatieUniversiteit Utrecht Faculteit Wiskunde en Informatica. Examen Optimalisering op maandag 18 april 2005, uur.
Universiteit Utrecht Faculteit Wiskunde en Informatica Examen Optimalisering op maandag 18 april 2005, 9.00-12.00 uur. De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Schrijf
Nadere informatieDe eerste ronde Nederlandse Informatica Olympiade 2014-2015
De eerste ronde Nederlandse Informatica Olympiade 2014-2015 De informatica olympiade is een wedstrijd voor leerlingen uit het voortgezet onderwijs in Nederland. Het is een wedstrijd die bestaat uit drie
Nadere informatieOpgaven Kunstmatige Intelligentie 1 maart 2017
Opgaven Kunstmatige Intelligentie 1 maart 2017 Opgave 1. a. Denkt een schaakprogramma? b. Denkt een (Nederlands-Engels) vertaalprogramma? c. Denkt een C ++ -compiler? d. Denkt Watson, the IBM-computer
Nadere informatie(On)Doenlijke problemen
Fundamentele Informatica In3 005 Deel 2 College 1 Cees Witteveen Parallelle en Gedistribueerde Systemen Faculteit Informatie Technologie en Systemen Overzicht Inleiding - Relatie Deel 1 en Deel 2 - Doenlijke
Nadere informatieAfhankelijk van wanneer je het programma uitvoert, zie je een van de volgende resultaten:
Hoofdstuk 4 Voorwaarden en vertakkingen Laten we eens teruggaan naar ons eerste programma. Zou het niet leuk zijn als we in plaats van het algemene Hallo wereld, afhankelijk van de tijd van de dag, Goedemorgen
Nadere informatieInleiding Analyse 2009
Inleiding Analyse 2009 Inleveropgaven A). Stel f(, y) = In (0, 0) is f niet gedefinieerd. We bestuderen y2 2 + y 4. lim f(, y). (,y) (0,0) 1. Bepaal de waarde van f(, y) op een willekeurige rechte lijn
Nadere informatieTwaalfde college algoritmiek. 23 mei Branch & Bound, Heapsort
College 12 Twaalfde college algoritmiek 23 mei 2013 Branch & Bound, Heapsort 1 Handelsreizigersprobleem Traveling Salesman Problem (handelsreizigersprobleem) Gegeven n steden waarvan alle onderlinge afstanden
Nadere informatieVijfde 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 informatieProgrammeren met Arduino-software
Programmeren met Arduino-software De software waarin we programmeren is Arduino IDE. Deze software is te downloaden via www.arduino.cc. De programmeertaal die hier gebruikt wordt, is gebaseerd op C en
Nadere informatiePracticumopgave Mehmet Oktener
Practicumopgave Mehmet Oktener Alban Ponse Kruislaan 403, kr. 2.45 tel. 5257592 e-mail: alban@science.uva.nl Algemeen. In deze serie opgaven komt de specificatie van data typen aan de orde. Je wordt geacht
Nadere informatieOpdracht 1 Topics on Parsing and Formal Languages - fall 2010
Opdracht 1 Topics on Parsing and Formal Languages - fall 2010 Rick van der Zwet 13 november 2010 Samenvatting Dit schrijven zal uitwerkingen van opgaven behandelen uit het boek [JS2009]
Nadere informatieOpgave 1. (4 punten) Inleiding: Vraag: Hints: (maximaal 2 bonuspunten) Herkansingstentamen Algoritmiek voor Biologen
Opgave 1. (4 punten) Elk jaar verliest een boom al z'n bladeren. Een boom begint op dag D met B bladeren. Op de eerste dag is voor elk blad dat aan de boom zit de kans op afvallen 0.03. Voor elke volgende
Nadere informatieModeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag 11 Januari 2013
Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag Januari 20 Opgave. Python Gegeven is de volgende (slechte) Python code:. def t(x): 2. def p(y):. return x*y
Nadere informatieOpgave 1. (4 punten) Inleiding: Vraag: Hints: (maximaal 2 bonuspunten) Tentamen Algoritmiek voor Biologen
Opgave 1. (4 punten) Elk jaar verliest een boom al z'n bladeren. Een boom begint op dag D met B bladeren. Op de eerste dag is voor elk blad dat aan de boom zit de kans op afvallen 0.03. Voor elke volgende
Nadere informatieDiscrete 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 informatieGetaltheorie groep 3: Primitieve wortels
Getaltheorie groep 3: Primitieve wortels Trainingsweek juni 2008 Inleiding Voor a relatief priem met m hebben we de orde van a modulo m gedefinieerd als ord m (a) = min { n Z + a n 1 (mod m) }. De verzameling
Nadere informatieUniversiteit Utrecht Betafaculteit. Examen Discrete Wiskunde II op donderdag 6 juli 2017, uur.
Universiteit Utrecht Betafaculteit Examen Discrete Wiskunde II op donderdag 6 juli 2017, 13.30-16.30 uur. De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Schrijf op elk ingeleverd
Nadere informatieOpdracht 1 Topics on Parsing and Formal Languages - fall 2010
Opdracht 1 Topics on Parsing and Formal Languages - fall 2010 Rick van der Zwet 8 december 2010 Samenvatting Dit schrijven zal uitwerkingen van opgaven behandelen uit het boek [JS2009]
Nadere informatieIII.3 Supremum en infimum
III.3 Supremum en infimum Zowel de reële getallen als de rationale getallen vormen geordende lichamen. Deze geordende lichamen zijn echter principieel verschillend. De verzameling R is bijvoorbeeld aanzienlijk
Nadere informatieUniversiteit Utrecht Betafaculteit. Examen Discrete Wiskunde op donderdag 13 april 2017, uur.
Universiteit Utrecht Betafaculteit Examen Discrete Wiskunde op donderdag 13 april 2017, 14.30-17.30 uur. De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Schrijf op elk ingeleverd
Nadere informatieDiscrete 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 informatieInfo-books. Toegepaste Informatica. Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) AL20. Jos Gils Erik Goossens
Info-books AL20 Toegepaste Informatica Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) Jos Gils Erik Goossens Hoofdstuk 6 Lusstructuren of iteraties 6.1 Probleemstelling Het gebeurt dikwijls
Nadere informatieUitgebreide 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 informatieAlgoritmen abstract bezien
Algoritmen abstract bezien Jaap van Oosten Department Wiskunde, Universiteit Utrecht Gastcollege bij Programmeren in de Wiskunde, 6 april 2017 Een algoritme is een rekenvoorschrift dat op elk moment van
Nadere informatieI.3 Functies. I.3.2 Voorbeeld. De afbeeldingen f: R R, x x 2 en g: R R, x x 2 zijn dus gelijk, ook al zijn ze gegeven door verschillende formules.
I.3 Functies Iedereen is ongetwijfeld in veel situaties het begrip functie tegengekomen; vaak als een voorschrift dat aan elk getal een ander getal toevoegt, bijvoorbeeld de functie fx = x die aan elk
Nadere informatieHeuristieken en benaderingsalgoritmen. Algoritmiek
Heuristieken en benaderingsalgoritmen Wat te doen met `moeilijke optimaliseringsproblemen? Voor veel problemen, o.a. optimaliseringsproblemen is geen algoritme bekend dat het probleem voor alle inputs
Nadere informatieFundamentele Informatica
Fundamentele Informatica (IN3120 en IN3005 DOI nwe stijl) 20 augustus 2004, 9.00 11.00 uur Het tentamen IN3120 bestaat uit 10 meerkeuzevragen en 2 open vragen. Voor de meerkeuzevragen kunt u maximaal 65
Nadere informatieDiscrete 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 informatieAutomaten. Informatica, UvA. Yde Venema
Automaten Informatica, UvA Yde Venema i Inhoud Inleiding 1 1 Formele talen en reguliere expressies 2 1.1 Formele talen.................................... 2 1.2 Reguliere expressies................................
Nadere informatie1 Kettingbreuken van rationale getallen
Kettingbreuken van rationale getallen Laten we eens starten met een breuk bijvoorbeeld 37/3 Laten we hier ons kettingbreuk algoritme op los, We concluderen hieruit dat 37 3 3 + 3 + + 37 3 + + + hetgeen
Nadere informatieProgrammeren A. Genetisch Programma voor het Partitie Probleem. begeleiding:
Programmeren A Genetisch Programma voor het Partitie Probleem begeleiding: Inleiding Het Partitie Probleem luidt als volgt: Gegeven een verzameling van n positieve integers, vindt twee disjuncte deelverzamelingen
Nadere informatieExamen besturingssystemen
Examen besturingssystemen Vrijdag 3 februari 2006, 9u 12u Prof. Koen De Bosschere Richting: Naam: Belangrijk 1. Vergeet niet uw naam te vermelden. 2. Schrijf de antwoorden in de daarvoor voorziene ruimte.
Nadere informatieToets Programmeren, 2YP05 op donderdag 13 november 2008, 09:00-12:00
Toets Programmeren, 2YP05 op donderdag 13 november 2008, 09:00-12:00 TU/e Technische Universiteit Eindhoven Faculteit Wiskunde en Informatica (Na de toets gecorrigeerde versie) PROBLEEM: Sleutels Lees
Nadere informatiePascal uitgediept Data structuren
Pascal uitgediept Data structuren MSX Computer & Club Magazine nummer 68-juni/juli 1994 Herman Post Scanned, ocr ed and converted to PDF by HansO, 2001 In deze aflevering wordt bekeken hoe zelf een datastructuur
Nadere informatieStop de ongewenste e-mails
De evolutie van Spam C&P - 18 april 2006 Inhoud 1 De oorsprong van het woord Spam Verspreiding van spam Definitie 2 Vingerafdruk Machinaal leren Afbeeldingen 3 Bewijssystemen Cheque Overzicht Het woord
Nadere informatieWORKSHOP ORANGE PI & PYTHON v september 2017
WORKSHOP ORANGE PI & PYTHON v1.1 21 september 2017 In deze workshop maak je kennis met een zogenaamde bord-computer ter grootte van een bankpas. Een bord-computer kan gebruikt worden als een normale computer
Nadere informatiec, X/X a, c/λ a, X/aX b, X/X
ANTWOORDEN tentamen FUNDAMENTELE INFORMATICA 3 vrijdag 25 januari 2008, 10.00-13.00 uur Opgave 1 L = {x {a,b,c} n a (x) n b (x)} {x {a,b,c} n a (x) n c (x)}. a. Een stapelautomaat die L accepteert: Λ,
Nadere informatieGaap, 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 informatieUitgebreide uitwerking tentamen Algoritmiek Dinsdag 5 juni 2007, uur
Uitgebreide uitwerking tentamen Algoritmiek Dinsdag juni 00, 0.00.00 uur Opgave. a. Een toestand bestaat hier uit een aantal stapels, met op elk van die stapels een aantal munten (hooguit n per stapel).
Nadere informatie6 nimmt!: Jubileumeditie Geen spel voor stommelingen! Amigo, 2005 Wolfgang KRAMER 2-10 spelers vanaf 10 jaar ± 45 minuten
6 nimmt!: Jubileumeditie Geen spel voor stommelingen! Amigo, 2005 Wolfgang KRAMER 2-10 spelers vanaf 10 jaar ± 45 minuten Spelmateriaal 104 kaarten genummerd van 1 tot en met 104 1 handleiding Doel van
Nadere informatiestart -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c
Een Minimaal Formalisme om te Programmeren We hebben gezien dat Turing machines beschouwd kunnen worden als universele computers. D.w.z. dat iedere berekening met natuurlijke getallen die met een computer
Nadere informatieWiskundige beweringen en hun bewijzen
Wiskundige beweringen en hun bewijzen Analyse (en feitelijk de gehele wiskunde) gaat over het bewijzen van beweringen (proposities), d.w.z. uitspraken waaraan de karakterisering waar of onwaar toegekend
Nadere informatieWe beginnen met de eigenschappen van de gehele getallen.
II.2 Gehele getallen We beginnen met de eigenschappen van de gehele getallen. Axioma s voor Z De gegevens zijn: (a) een verzameling Z; (b) elementen 0 en 1 in Z; (c) een afbeelding +: Z Z Z, de optelling;
Nadere informatieextra oefening algoritmiek - antwoorden
extra oefening algoritmiek - antwoorden opgave "Formule 1" Maak een programma dat de gebruiker drie getal A, B en C in laat voeren. De gebruiker zorgt ervoor dat er positieve gehele getallen worden ingevoerd.
Nadere informatieTentamen 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 informatieElfde college algoritmiek. 10 mei Algoritme van Dijkstra, Gretige Algoritmen
lgoritmiek 019/lgoritme van ijkstra lfde college algoritmiek 10 mei 019 lgoritme van ijkstra, Gretige lgoritmen 1 lgoritmiek 019/ynamisch programmeren Programmeeropdracht 3 Lange Reis 0 10 10 1 1 100 0
Nadere informatieVerzamelingen. Hoofdstuk 5
Hoofdstuk 5 Verzamelingen In de meest uiteenlopende omstandigheden kan het handig zijn om een stel objecten, elementen, of wat dan ook, samen een naam te geven. Het resultaat noemen we dan een verzameling.
Nadere informatieOPDRACHT Opdracht 2.1 Beschrijf in eigen woorden wat het bovenstaande PSD doet.
Les C-02: Werken met Programma Structuur Diagrammen 2.0 Inleiding In deze lesbrief bekijken we een methode om een algoritme zodanig structuur te geven dat er gemakkelijk programmacode bij te schrijven
Nadere informatieTentamen Grondslagen van de Wiskunde A, met uitwerkingen
Tentamen Grondslagen van de Wiskunde A, met uitwerkingen 8 december 2015, 09:30 12:30 Dit tentamen bevat 5 opgaven; zie ook de ommezijde. Alle opgaven tellen even zwaar (10 punten); je cijfer is het totaal
Nadere informatieVERZAMELINGEN EN AFBEELDINGEN
I VERZAMELINGEN EN AFBEELDINGEN Het begrip verzameling kennen we uit het dagelijks leven: een bibliotheek bevat een verzameling van boeken, een museum een verzameling van kunstvoorwerpen. We kennen verzamelingen
Nadere informatieOpgaven Registers Concurrency, 29 nov 2018, Werkgroep.
Opgaven Registers Concurrency, 29 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. Safe Integer: Van een
Nadere informatieAlgoritmes in ons dagelijks leven. Leve de Wiskunde! 7 April 2017 Jacobien Carstens
Algoritmes in ons dagelijks leven Leve de Wiskunde! 7 April 2017 Jacobien Carstens Wat is een algoritme? Een algoritme is een eindige reeks instructies die vanuit een gegeven begintoestand naar een beoogd
Nadere informatieTECHNISCHE 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 informatieUitwerking Puzzel 93-1, Doelloos
Uitwerking Puzzel 93-1, Doelloos Wobien Doyer Lieke de Rooij Volgens de titel is deze puzzel zonder doel, dus zonder bekende toepassing. Het doel is echter nul en dat is zeker in de wiskunde niet niks.
Nadere informatieGrafen. Indien de uitgraad van ieder punt 1 is, dan bevat de graaf een cykel. Indien de ingraad van ieder punt 1 is, dan bevat de graaf een cykel.
Grafen Grafen Een graaf bestaat uit een verzameling punten (ook wel knopen, of in het engels vertices genoemd) en een verzameling kanten (edges) of pijlen (arcs), waarbij de kanten en pijlen tussen twee
Nadere informatieComplexe e-macht en complexe polynomen
Aanvulling Complexe e-macht en complexe polynomen Dit stuk is een uitbreiding van Appendix I, Complex Numbers De complexe e-macht wordt ingevoerd en het onderwerp polynomen wordt in samenhang met nulpunten
Nadere informatieTENTAMEN Basismodellen in de Informatica VOORBEELDUITWERKING
TENTAMEN Basismodellen in de Informatica vakcode: 211180 datum: 2 juli 2009 tijd: 9:00 12:30 uur VOORBEELDUITWERKING Algemeen Bij dit tentamen mag gebruik worden gemaakt van het boek van Sudkamp, van de
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, juni 2018
Uitgebreide uitwerking Tentamen Complexiteit, juni 018 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 informatieTI-2720 Operating System Concepten. 21 januari 2013, uur. docent: H.J. Sips. Dit is een tentamen met 9 open vragen
TECHNISCHE UNIVERSITEIT DELFT Faculteit EWI, Afdeling SCT Sectie Parallelle en Gedistribueerde Systemen Ty Delft TI-2720 Operating System Concepten 21 januari 2013, 14.00-17.00 uur. docent: H.J. Sips Dit
Nadere informatie16.3 Opgaven hoofdstuk 4: 2-d partities
Opgave 4.1 b Voor het getal drie geldt dat het op drie manieren opgedeeld kan worden in gehele getallen volgens definitie 4.1. Het kan opgedeeld worden in één keer 3 of in één keer 2 en één keer 1 of in
Nadere informatieTiende college algoritmiek. 26 april Gretige algoritmen
Algoritmiek 01/10 College 10 Tiende college algoritmiek april 01 Gretige algoritmen 1 Algoritmiek 01/10 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag
Nadere informatieDynamisch Programmeren. Het Rugzakprobleem
INLEIDING Dynamisch Programmeren 1 Dynamisch Programmeren Section Page Inleiding................................................. 1 1 Oplossing................................................ 2 2 Subprobleem.............................................
Nadere informatieFunctioneel programmeren
Functioneel programmeren Practicumopgave 2: Mastermind Het doel van deze opgave is het implementeren van het spel Mastermind; zie http://nl.wikipedia.org/wiki/mastermind voor een uitleg. Het spel is klein
Nadere informatieLogica voor Informatica
Logica voor Informatica 13 Programma verificatie Wouter Swierstra University of Utrecht 1 Programmeertalen en logica Bij logische programmeertalen hebben we gezien dat we rechstreeks met (een fragment
Nadere informatie