Regularitet og Automater
|
|
- Bjarne Lauridsen
- 8 år siden
- Visninger:
Transkript
1 Plan dregaut 2007 Regularitet og Automater Hvad er Regularitet og Automater? Praktiske oplysninger om kurset Ugens emner Introduktion til ugens opgaver 2 Regularitet og Automater Formål med kurset: at præsentere matematiske teknikker og centrale begreber, der anvendes i datalogi rekursive definitioner, induktionsbeviser formelle sprog modeller for beregnelighed regularitet ( egenskaber som generelt kendetegner beregningsprocesser i it-systemer med begrænset mange tilstande ) fundament for andre kurser Logik og Beregnelighed, Oversættelse, Sprog og Semantik, Søgning og Optimering,... Tekstgenkendelse Specificere og genkende tekststrenge søgning i tekster (Unix grep) leksikalsk analyse i oversættere (flex) HTML input validering (PowerForms)... Konkret anvendelse af regulære udtryk og endelige automater 3 4
2 HTML formularer HTML formularer indeholder input-felter, hvor brugeren kan indtaste tekststrenge Eks.: datoer telefonnumre CPR-numre adresser URL er... 5 HTML input validering Brugeren må ikke indtaste ugyldige strenge Den traditionelle løsning: Programmer input validering i JavaScript (til browseren så input valideres løbende mens formularen udfyldes), og Java (til serveren for det tilfælde at browseren ikke udfører JavaScript-koden) Problemer: det er svært at programmere JavaScript, der virker på alle (nyere) browsere vi skal skrive den samme kode i to forskellige sprog store dele af koden skal skrives igen og igen... 6 Den datalogiske løsning Regulære udtryk 1. Analysér problemområdet 2. Design et domæne-specifikt højniveau sprog 3. Lav en oversætter, der genererer JavaScript- og Java-koden fra højniveau specifikationer Sproget PowerForms er udviklet efter denne metode input-felter beskrives med regulære udtryk, der oversættes til endelige automater 7 Et alfabet er en endelig mængde af tegn En streng er en endelig sekvens af tegn fra alfabetet Et sprog er en mængde af strenge Et regulært udtryk beskriver et sprog: Ø den tomme mængde af strenge Λ mængden bestående af den tomme streng a Σ mængden bestående af en enkelt streng, som er det ene tegn a fra alfabetet Σ r 1 +r 2 de strenge der beskrives af r 1 eller r 2 r 1 r 2 de strenge der kan opdeles i to dele, så venstre del beskrives af r 1 og højre del af r 2 r* de strenge der kan opdeles i et antal dele, der hver beskrives af r 8
3 Eksempler på regulære udtryk Et mere realistisk eksempel Gyldige datoer, telefonnumre, CPR-numre, adresser, URL er,... Strenge over alfabetet Σ={0,1} af lige længde: ( )* eller: ((0+1)(0+1))* Strenge over alfabetet Σ={0,1} med ulige antal 1 er: 0*10*(10*10*)* eller: 0*1(0*10*1)*0* eller:... 9 Floating-point tal (i Pascal): alfabet: Σ={0,1,2,3,4,5,6,7,8,9,+,-,.,E} eksempler på gyldige strenge: E forkortelser: d d + d*d s Λ+++- samlet udtryk: sd + (.d + +.d + Esd + + Esd + ) 10 Genkendelse af strenge Endelige automater Givet et regulært udtryk r og en streng x, hvordan undersøger vi om x matcher r? Den naive løsning: Vi prøver os frem, afhængigt af strukturen af r Ø matcher intet Λ matcher kun den tomme streng a Σ matcher kun strengen a r 1 +r 2 matcher x hvis r 1 eller r 2 matcher x r 1 r 2 opdel x så x=x 1 x 2 på alle mulige måder, check om der eksisterer en opdeling så r 1 matcher x 1 og r 2 matcher x 2 r* opdel x så x=x 1 x 2...x n på alle mulige måder, check om der eksisterer en opdeling så r matcher x i for alle i=1...n Det virker! men er håbløst ineffektivt En endelig automat, der genkender strenge over alfabetet Σ={0,1} med ulige antal 1 er: Automaten læser strengen ét tegn ad gangen, fra venstre mod højre Hver tilstand repræsenterer en viden om den læste delstreng Hvis automaten ender i en accept-tilstand, så accepteres(=genkendes) strengen 12
4 Kleenes sætning Regulære udtryk og endelige automater har samme udtrykskraft Konstruktive beviser: ethvert regulært udtryk kan oversættes til en ækvivalent endelig automat enhver endelig automat kan oversættes til et ækvivalent regulært udtryk PowerForms eksempel Lad R være et regulært udtryk, der svarer til gyldige datoer på form dd/mm-åååå Oversæt R til en ækvivalent endelig automat F Repræsenter F som et JavaScript-program, der kan svare på om en streng x er accepteret ikke accepteret, men der er en sti til accept ikke accepteret og ingen sti til accept PowerForms eksempel 29/02 29/02@ 29/ Endelige automater til modellering af systemer Endelige automater er også nyttige uden regulære udtryk Endelige automater kan modellere systemer og egenskaber De teoretiske resultater om endelige automater kan bruges til at kombinere modeller og verificere om et givet system har en given egenskab 15 16
5 Verifikation Beregnelighed En endelig automat, der modellerer en togsimulator (fra VisualSTATE): Input PROGRAM Output 1421 del-automater transitioner 2981 inputs 2667 outputs 3204 lokale tilstande ialt antal tilstande: Input og Output er strenge PROGRAM er en algoritme, der kører på en maskine Eks.: Givet et naturligt tal N som input, maskinen beregner N 2 som output Virker toget? Beslutningsproblemer Beslutningsproblemer og sprog Ethvert beslutningsproblem P er et sprog: L = { de strenge x, hvor svaret på P er ja } Input PROGRAM ja/nej Hvis vi ignorerer effektivitet, så kan ethvert beregningsproblem omformuleres som et beslutningsproblem Eks.: Givet to naturlige tal N og M som input, maskinen svarer ja hvis og kun hvis M=N 2 Ethvert sprog L er et beslutningsproblem: P: er input x i L? 19 20
6 Eksempler på beslutningsproblemer Givet en streng, er den en gyldig dato på form dd/mm-åååå? er den et syntaktisk korrekt Java program? er den et primtal? er den en konfiguration i skak hvor det er muligt for hvid at vinde? er den et semantisk korrekt Java-program? er den en syntaktisk korrekt sætning i dansk? er den en litterær klassiker? Endelige automater som model for beregnelighed Vi vil studere følgende emne: Hvilke problemer kan afgøres af en maskine med endeligt meget hukommelse? Med andre ord: Hvilke sprog kan genkendes af endelige automater? vi vil kun se på formelle sprog og veldefinerede problemer Mere generelle modeller for beregnelighed Klasser af formelle sprog Turing-maskiner: endelige automater med adgang til en uendeligt stor notesblok kan udføre vilkårlige algoritmer (Church-Turing-tesen) svarer til uindskrænkede grammatikker (hvor endelige automater svarer til regulære grammatikker) Pushdown-automater: endelige automater med adgang til en vilkårligt stor stak (last-in-first-out) anvendes ofte i parsere i oversættere svarer til kontekstfri grammatikker klassen af alle sprog (over et givet alfabet) de regulære sprog de endelige sprog de rekursivt numerable sprog (svarer til Turing-maskiner) de kontekstfri sprog 23 24
7 Hvorfor nøjes med endelige automater? Klassen af regulære sprog har mange pæne egenskaber: afgørlighed (f.eks, givet en FA M, accepterer den nogen strenge overhovedet? ) lukkethed (snit, forening,...) Til sammenligning: Ved Turing-maskiner er næsten alt uafgørligt (Rices sætning: alt interessant vedrørende sproget for en Turing-maskine er uafgørligt ) Pushdown-automater / kontekstfri grammatikker: en mellemting, både med udtrykskraft og afgørlighedsegenskaber Uafgørlighed Her er et lille program: while (x 1) { if (even(x)) x = x/2; else x = 3*x+1; } Terminerer programmet for alle input x>0? Ja eller nej? Tilsyneladende ja, men ingen har endnu bevist det! Men vi kan bevise, at der ikke findes et program (=en Turing-maskine), der kan afgøre det generelle problem givet et program P, terminerer P på alle input? Plan Hvad er Regularitet og Automater? Praktiske oplysninger om kurset Ugens emner Introduktion til ugens opgaver Praktiske oplysninger om kurset Kursushjemmeside Forelæsninger Anders Møller (amoeller@brics.dk) tirsdage 11-14, uge (påskeferie uge 15) Studiecafé torsdage Holdøvelser 2 timer pr. uge, mandag torsdag (i den følgende uge) 27 28
8 Hold og instruktorer Materiale Hold 1: mandag 16-18, Johnni Hold 2: torsdag 9-11, Brian Hold DA2: mandag onsdag 8-10, Sigurd Hold DA3: tirsdag 9-11, Kasper Hold DA4: mandag 12-14, Brian John Martin Introduction to Languages and the Theory of Computation 3. udgave, McGraw-Hill, 2002 ISBN: eller opgaver på ugesedlerne Aktivitet 3 timers forelæsning 2 timers studiecafé 2 timers holdøvelser 8 timers hjemmearbejde! ialt: 15 timer pr. uge Der forventes, at man læser de angivne kapitler i bogen løser opgaverne (brug instruktorerne!) Opgaver Teoretiske opgaver udfordrer forståelsen af det gennemgåede materiale øvelse i typisk datalogisk matematik Programmeringsprojekt (dregaut Java-pakken) implementation af de gennemgåede algoritmer, der udledes af konstruktive beviser supplement til teoretiske opgaver øvelse i Java-programmering 31 32
9 Afleveringsopgaver Hver uge vil der blive stillet en obligatorisk afleveringsopgave Tidsfrist aftales med instruktor Disse opgaver er simple check -opgaver Plan for kurset Uge 14: Introduktion, Regulære udtryk Uge 16: Endelige automater Uge 17: Nondeterminisme Uge 18: Minimering af automater Uge 19: Lukketheds- og afgørlighedsegenskaber Uge 20: Kontekstfri grammatikker Uge 21: Introduktion til Turing-maskiner, Afslutning Eksamen Mundtlig, ekstern censur, 13-skalaen 20 min. per person, uden forberedelsestid For at kunne indstilles til eksamen skal man have godkendt besvarelser af de obligatoriske opgaver Eksamen Formålet med kurset at den studerende skal opnå følgende kompetencer: referere den basale terminologi (strenge, sprog, klasser af sprog, samt basale operationer på disse) beskrive basale abstrakte sprogformalismer (regulære udtryk, endelige automater, regulære grammatikker, kontekstfri grammatikker) - fra intuitivt niveau og konkrete eksempler til formel notation og generelle definitioner beskrive egenskaber ved formalismerne, bl.a. ækvivalens, begrænsninger og beslutningsprocedurer forklare og udføre algoritmer, der oversætter mellem formalismerne eller afgør beslutningsproblemer - fra konkrete eksempler til generelle og formelle beskrivelser bevise og analysere egenskaber ved formalismerne (ved hjælp af konstruktive beviser og induktionsbeviser) - fra intuitivt niveau til formelle detaljer. 35 Eksamen vil vurdere i hvor høj grad den studerende besidder disse kompetencer 36
10 Plan Hvad er Regularitet og Automater? Praktiske oplysninger om kurset Ugens emner Introduktion til ugens opgaver Ugens emner Regulære udtryk [Martin, kap. 1.5, 3.1] specifikation og genkendelse af tekststrenge strenge, sprog, rekursive definitioner, induktionsbeviser regulære udtryk, regulære sprog Java: dregaut.regexp klassen Alfabeter, strenge og sprog Et alfabet Σ er en endelig mængde (af tegn/symboler) eks.: Σ={a,b,c} En streng x er en endelig sekvens af tegn fra alfabetet eks.: x=abba Λ repræsenterer den tomme streng (strengen af længde 0), Λ Σ Et sprog L er en (vilkårlig) mængde af strenge eks.: L={Λ,cab,abba} Σ* er mængden af alle strenge over Σ dvs. L Σ* hvis L er et sprog over Σ eks.: hvis Σ={a,b,c} så er Σ*={Λ,a,b,c,aa,ab,ac,aaa,aab,...} Konkatenering af strenge Hvis x,y Σ*, så er x y (konkateneringen af x og y) den streng, der fremkommer ved at sætte tegnene i x før tegnene i y Eks.: hvis x=abb og y=a, så er x y=abba y x=aabb Bemærk: x Λ=Λ x=x for alle x x y skrives ofte xy (uden ) 39 40
11 Konkatenering af sprog Hvis L 1,L 2 Σ*, så er L 1 L 2 (konkateneringen af L 1 og L 2 ) defineret ved L 1 L 2 = {x y x L 1 y L 2 } Eks.: Hvis Σ={0,1,2,a,b,c} og L 1 ={Λ,10,212} L 2 ={cab,abba} så er L 1 L 2 ={cab,10cab,212cab,abba,10abba,212abba} Bemærk: L {Λ} = {Λ} L = L for alle L L Ø = Ø L = Ø for alle L Kleene stjerne L k = LL L konkatenering af k forekomster af L L 0 = {Λ} L* = U i=0... L i (Kleene stjerne af L) L + = L*L L 1 L 2 skrives ofte L 1 L 2 (uden ) Rekursive definitioner En definition er rekursiv, hvis den refererer til sig selv Eks.: Fibonacci f: ΙΝ ΙΝ 1 hvis n=0 eller n=1 f(n) = f(n-1)+f(n-2) ellers Enhver selv-reference skal referere til noget mindre og føre til endeligt mange selvreferencer En rekursiv definition af strenge x er en streng over alfabetet Σ, dvs. x Σ*, hvis x = Λ, eller x = y a hvor y Σ* og a Σ (underforstået: Σ* er den mindste mængde, der opfylder dette) Eksempel: abc = (((Λ a) b) c) Σ* (hvor Σ={a,b,c,d}) 43 44
12 Syntaks af regulære udtryk Mængden R af regulære udtryk over Σ er den mindste mængde, der indeholder følgende: Ø Λ a for hver a Σ (r 1 +r 2 ) hvor r 1,r 2 R (r 1 r 2 ) hvor r 1,r 2 R (r*) hvor r R Semantik af regulære udtryk Sproget L(r) af et regulært udtryk r defineres i strukturen af r: L(Ø) = Ø L(Λ) = {Λ} L(a) = {a} L( (r 1 +r 2 ) ) = L(r 1 ) L(r 2 ) L( (r 1 r 2 ) ) = L(r 1 )L(r 2 ) L( (r*) ) = (L(r))* Regulære sprog Definition: Et sprog S er regulært hvis og kun hvis der eksisterer et regulært udtryk r hvor L(r)=S Parenteser i regulære udtryk Forening og konkatenering er associative, så vi vælger at tillade f.eks. at(a+(b+c)) kan skrives a+b+c at(a(bc)) kan skrives abc Vi definerer præcedens for operatorerne: * binder stærkest konkatenering binder middel + binder svagest eks.: (a+((b*)c)) kan skrives a+b*c 47 48
13 Eksempel Betragt følgende regulære udtryk r over alfabetet {0,1}: r = (1+Λ)001 På grund af parentesreglerne er dette det samme som r = ((((1+Λ)0)0)1) Så sproget for r er L(r) = ((({1} {Λ}){0}){0}){1}) = {1001,001} Quiz! 1. Hvad betyder {a,bc}*? 2. Hvad er betingelsen for at et sprog S er regulært? Reverse-operatoren Givet en streng x Σ*, definer reverse(x) i strukturen af x: reverse(λ) = Λ reverse(ya) = a(reverse(y)) hvor y Σ*, a Σ Eksempel: reverse(123) =... = 321 Reverse på sprog Givet et sprog L Σ*, definer Reverse(L) = { reverse(x) x L } Eksempel: Hvis L={Λ,123,abc} så er Reverse(L)={Λ,321,cba} 51 52
14 Rekursive definitioner og induktionsbeviser Rekursive definitioner giver ofte anledning til induktionsbeviser Hvis vi skal bevise noget på form for alle X gælder P(X), hvor mængden af X er er defineret rekursivt, så kan vi prøve bevisteknikken induktion i strukturen af X Et induktionsbevis Påstand: Hvis S er et regulært sprog, så er Reverse(S) også regulært (dvs. de regulære sprog er lukkede under Reverse) Bevis: S er regulært, så der eksisterer et regulært udtryk r så L(r)=S Vi vil vise ved induktion i strukturen af r, at der eksisterer et regulært udtryk r hvor L(r )=Reverse(L(r)), hvilket medfører, at Reverse(S) er regulært Basis Induktionsskridt r = Ø: vælg r = Ø L(r ) = Ø = Reverse(Ø) = Reverse(L(r)) r = Λ: vælg r = Λ... r = a hvor a Σ: vælg r = a For alle deludtryk s af r kan vi udnytte induktionshypotesen: der eksisterer et regulært udtryk s hvor L(s )=Reverse(L(s)) r = r 1 +r 2 hvor r 1,r 2 R : vælg r = r 1 +r 2 hvor r 1 og r 2 er givet af i.h.... r = r 1 r 2 hvor r 1,r 2 R : vælg r = r 2 r 1... r = r 1 * hvor r 1 R : vælg r = (r 1 )*... Lemma 1: x,y Σ*: reverse(xy)= reverse(y)reverse(x) bevis: induktion i strukturen (eller længden) af y Lemma 2: i 0,E Σ*: Reverse(E i ) = (Reverse(E)) i bevis: induktion i i 56
15 Konstruktive beviser Bemærk at dette induktionsbevis indeholder en algoritme til givet et regulært udtryk for S at konstruere et regulært udtryk for Reverse(S) Sådanne beviser kaldes konstruktive Husk altid både konstruktionen og beviset for dens korrekthed Input: et regulært udtryk r Algoritme Definer en rekursiv funktion REV ved: REV(Ø) = Ø REV(Λ) = Λ REV(a) = a, hvor a Σ REV(r 1 +r 2 ) = REV(r 1 ) + REV(r 2 ) REV(r 1 r 2 ) = REV(r 2 ) REV(r 1 ) REV(r 1 *) = (REV(r 1 ))* Output: det regulære udtryk REV(r) dregaut.regexp Java-repræsentation af regulære udtryk Speciel syntax: # betyder Ø % betyder Λ Resume Alfabeter, strenge, sprog Regulære udtryk og regulære sprog Rekursive definitioner, induktionsbeviser, konstruktive beviser Java: dregaut.regexp klassen Alfabetet angives som en mængde af Unicode tegn 59 60
16 Opgaver [Martin]: Læs, forstå og konstruer regulære udtryk Ekstraopgaver: Regulære udtryk for URL er og -adresser Java: Ingen programmering før næste uge (kig evt. på javadoc-dokumentationen af hør mere om dregaut-pakken) induktionsbeviser Ugens finurlige opgave: til STUDIECAFÉ Vis ved strukturel induktion i regulære udtryk at klassen af regulære sprog er lukket under Prefix Afleveringsopgave: Bevis at enhver streng i sproget af det regulære udtryk ((a+λ)cbc)* har et lige antal c er 61
1. Seminar EVU RegAut
1. Seminar EVU RegAut Sigurd Meldgaard Datalogisk Institut Århus Universitet stm@cs.au.dk 27/08 2010 S. Meldgaard (AU) 1. Seminar EVU RegAut 27/08 2010 1 / 105 Plan Introduktion Hvad er Regularitet og
Læs mereSeminar 1 Regularitet og Automater 28/1-2012
Seminar 1 Regularitet og Automater 28/1-2012 Jesper Gulmann Henriksen jgh@wincubate.net Agenda Introduktion Hvad er Regularitet og Automater? Praktiske Oplysninger om Kurset Regulære Udtryk + Øvelser Induktion
Læs mere1. Seminar EVU RegAut
1. Seminar EVU RegAut Sigurd Meldgaard Datalogisk Institut Århus Universitet stm@cs.au.dk 27/08 2010 S. Meldgaard (AU) 1. Seminar EVU RegAut 27/08 2010 1 / 105 Plan Introduktion Hvad er Regularitet og
Læs mereUgens emner. Regulære sprog og digitale billeder. Adressering af områder. Et alfabet. Dette billede: kan repræsenteres af en FA med 832 tilstande
Ugens emner Regulære sprog og digitale billeder Digitale billeder og regulære sprog Regulære udtryk i Java og Unix Dette billede: Turing-maskiner [uddrag af Martin kap. 9-0] Church-Turing tesen, beregnelighed
Læs mereRegulære udtryk og endelige automater
Regulære udtryk og endelige automater Regulære udtryk: deklarative dvs. ofte velegnede til at specificere regulære sprog Endelige automater: operationelle dvs. bedre egnet til at afgøre om en given streng
Læs mereRegularitet & Automater Eksamensnotater
Regularitet & Automater Eksamensnotater Michael Lind Mortensen, 20071202, DAT4 10. juni 2008 Indhold 1 Regulære udtryk (1.5 & 3.1) 4 1.1 Disposition............................ 4 1.2 Noter...............................
Læs mereRegularitet og Automater. Tobias Brixen Q4-2012
Regularitet og Automater Tobias Brixen Q4-2012 1 Noterne er skrevet med inspiration fra http://cs.au.dk/ illio/courses/dregaut/dregautnoter.pdf Contents 1 Regulære udtryk 3 1.1 RegEx.................................
Læs mereRegulære udtryk og endelige automater. Ugens emner
Ugens emner Endelige automater [Martin, kap. 3.2-3.5] endelige automater og deres sprog skelnelighed produktkonstruktionen Java: dregaut.fa klassen automater til modellering og verifikation Regulære udtryk
Læs mereJa! det beviste vi uge 16+17
Ugens emner Lukketheds- og afgørlighedsegenskaber [5.3-5.5] lukkethed under,,,, * lukkethed under homomorfi og invers homomorfi pumping -lemmaet beslutningsproblemer: membership, emptiness, finiteness
Læs mereEn karakteristik af de regulære sprog. Ugens emner. FA minimering [5.1-5.2] MyHill-Nerode-sætningen en algoritme til minimering af FA er
Ugens emner FA minimering [.-.] MyHill-Nerode-sætningen en algoritme til minimering af FA er En karakteristik af de regulære sprog Et sprog L er regulært hvis og kun hvis L beskrives af et regulært udtryk
Læs mereSkriftlig Eksamen Beregnelighed (DM517)
Skriftlig Eksamen Beregnelighed (DM517) Institut for Matematik & Datalogi Syddansk Universitet Torsdag den 1 November 212, kl. 1 14 Alle sædvanlige hjælpemidler (lærebøger, notater etc.) samt brug af computer
Læs mereStudieordning for diplomuddannelsen i informationsteknologi
Studieordning for diplomuddannelsen i informationsteknologi April 2007 [v3] 1 Introduktion... 2 2 Formål... 2 3 Indhold... 2 4 Adgangskrav... 3 5 Eksaminer... 3 6 Studieplan... 3 6.1 Formelle modeller
Læs mereDat 2/BAIT6/SW4: Syntaks og semantik En manual for studerende
Dat 2/BAIT6/SW4: Syntaks og semantik En manual for studerende Hans Hüttel Foråret 2011 Indhold Indhold 1 1 Kurset er lavet om! 1 2 Kursets indhold 2 2.1 Kursets emner................................ 2
Læs mereDat 2/F6S: Syntaks og semantik 2005 Centrale emner og eksamenspensum
Dat 2/F6S: Syntaks og semantik 2005 Centrale emner og eksamenspensum Hans Hüttel 14. juni 2005 Indhold 1 Centrale emner 1 2 Fuldt pensum 2 3 Reduceret pensum 3 3.1 Hvad er fjernet her?........................
Læs mereEksamensopgaver i DM17, Januar 2003
Eksamensopgaver i DM17, Januar 2003 Skriftlig Eksamen Automatteori og Beregnelighed (DM17) Institut for Matematik & Datalogi Syddansk Universitet Odense Universitet Lørdag, den 18. Januar 2003 Alle sædvanlige
Læs mereNoter til DM517 Beregnelighed
Noter til DM517 Beregnelighed Jonas Nyrup 23. oktober 2011 Indhold 1 Et par noter 2 2 Regulære sprog 2 2.1 DFA................................. 2 2.1.1 Eksempler.......................... 3 2.2 NFA.................................
Læs mereSyntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik
Datalogi C, RUC Forelæsning 22. november 2004 Henning Christiansen Syntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik Dagens program Hvad
Læs mereDat 2/F6S/SW4: Syntaks og semantik En manual for studerende
Dat 2/F6S/SW4: Syntaks og semantik En manual for studerende Hans Hüttel Foråret 2010 Indhold Indhold 1 1 Om denne manual 1 2 Om kursets indhold 2 2.1 Hvilke emner rummer kurset?.................. 2 2.2
Læs mereDM517:Supplerende noter om uafgørlighedsbeviser:
DM517:Supplerende noter om uafgørlighedsbeviser: Jørgen Bang-Jensen October 9, 2013 Abstract Formålet med denne note er at give en form for kogebogsopskrift på, hvorledes man bygger et uafgørlighedsbevis
Læs mereRolf Fagerberg. Forår 2012
Forår 2012 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM502 og DM503 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM502 og DM503 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,
Læs mereGrundlæggende Algoritmer og Datastrukturer
Grundlæggende Algoritmer og Datastrukturer Om kurset Grundlæggende Algoritmer og Datastrukturer Undervisningsformer Forelæsninger: 4 timer/uge (2+2). Øvelser: 3 timer/uge. Café. Obligatorisk program 13
Læs mereMatematisk induktion
Induktionsbeviser MT01.0.07 1 1 Induktionsbeviser Matematisk induktion Sætninger der udtaler sig om hvad der gælder for alle naturlige tal n N, kan undertiden bevises ved matematisk induktion. Idéen bag
Læs mereIt og informationssøgning Forelæsning november 2006 Nils Andersen. Regulære udtryk og formelle sprog
It og informationssøgning Forelæsning 11 22. november 2006 Nils Andersen Regulære udtryk og formelle sprog Regulært udtryk Forening, sammenstilling og Kleene-gentagelse Andre notationer og operatorer Modulet
Læs mereRolf Fagerberg. Forår 2013
Forår 2013 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM536 og DM537 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM536 og DM537 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,
Læs mereAlgoritmer og Datastrukturer 1. Gerth Stølting Brodal Aarhus Universitet
Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Aarhus Universitet Kursusbeskrivelsen Kursusbeskrivelsen: Algoritmer og datastrukturer 1 Formål Deltagerne vil efter kurset have indsigt i algoritmer
Læs mere1 Beregnelighed. 1.1 Disposition. 1.2 Præsentation. Def. TM. Def. RE/R. Def. 5 egenskaber for RE/R. Def. NSA. Bevis. NSA!RE. Def. SA. Bevis. SA!
1 Beregnelighed 1.1 Disposition Def. TM Def. RE/R Def. 5 egenskaber for RE/R Def. NSA Bevis. NSA!RE Def. SA Bevis. SA!R Bevis. SA RE Def. Beslutningsproblem Arg. Self-Accepting er uløselig 1.2 Præsentation
Læs mereIntroduktion til DM507
Introduktion til DM507 Rolf Fagerberg Forår 2017 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA Forskningsområde: algoritmer og datastrukturer 2 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA
Læs mereAlgoritmer og Datastrukturer 1. Gerth Stølting Brodal
Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Kursusbeskrivelsen Kursusbeskrivelsen: Algoritmer og datastrukturer 1 Formål Deltagerne vil efter kurset have indsigt i algoritmer som model for sekventielle
Læs mereOrienterede grafer. Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer.
Orienterede grafer Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer Philip Bille Orienterede grafer Introduktion Repræsentation Søgning Topologisk
Læs mereOm at løse problemer En opgave-workshop Beregnelighed og kompleksitet
Om at løse problemer En opgave-workshop Beregnelighed og kompleksitet Hans Hüttel 27. oktober 2004 Mathematics, you see, is not a spectator sport. To understand mathematics means to be able to do mathematics.
Læs mereBevisteknikker. Bevisteknikker (relevant både ved design og verifikation) Matematisk induktion. Matematisk induktion uformel beskrivelse
Bevisteknikker Bevisteknikker (relevant både ved design og verifikation) Bevisførelse ved modstrid (indirekte bevis) Antag, at det givne teorem er falsk Konkluder, at dette vil føre til en modstrid Teorem:
Læs mere26 Programbeviser I. Noter. PS1 -- Programbeviser I. Bevis kontra 'check af assertions' i Eiffel. Betingelser og bevisregler.
26 Programbeviser I. Bevis kontra 'check af assertions' i Eiffel. Betingelser og bevisregler. Hvad er programverifikation? Bevisregel for 'tom kommando'. Bevisregel for assignment. Bevisregler for selektive
Læs mereOrienterede grafer. Orienterede grafer. Orienterede grafer. Vejnetværk
Philip Bille Orienteret graf (directed graph). Mængde af knuder forbundet parvis med orienterede kanter. Vejnetværk Knude = vejkryds, kant = ensrettet vej. deg + (6) =, deg - (6) = sti fra til 6 8 7 9
Læs mereOrienterede grafer. Orienterede grafer. Orienterede grafer. Orienterede grafer
Philip Bille Orienteret graf. Mængde af knuder forbundet parvis med orienterede kanter. deg + (7) =, deg - (7) = Lemma. v V deg - (v) = v V deg + (v) = m. Bevis. Hver kant har netop en startknude og slutknude.
Læs mereRolf Fagerberg. Forår 2015
Forår 2015 Dagens program 1 2 3 4 5 Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Deltagere: BA i Datalogi BA i Software
Læs mereAlgoritmer og Datastrukturer 1. Gerth Stølting Brodal
Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Kursusbeskrivelsen Kursusbeskrivelsen: Algoritmer og datastrukturer 1 Formål Deltagerne vil efter kurset have indsigt i algoritmer som model for sekventielle
Læs mereBevisteknikker (relevant både ved design og verifikation)
Bevisteknikker 1 Bevisteknikker (relevant både ved design og verifikation) Bevisførelse ved modstrid (indirekte bevis) Antag, at det givne teorem er falsk Konkluder, at dette vil føre til en modstrid Teorem:
Læs mereOversættere. Vejledende løsninger til Skriftlig eksamen onsdag d. 20. april 2005
Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere Vejledende løsninger til Skriftlig eksamen onsdag d. 20. april 2005 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet ved
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Introduktion til kurset Rolf Fagerberg Forår 2019 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, Institut for Matematik og Datalogi (IMADA) Forskningsområde: algoritmer
Læs mere1 Opsumering fra tidligere. 2 Dagsorden 3 BIMS. 4 Programtilstande. Statements/kommandoer (Stm) i bims. 3.1 Abstrakt syntaks for bims
1 Opsumering fra tidligere Hvis A er kontekstfrit, S er der et p > 0 s Alle s A hvor s p kan splittes op som s = uvxyz så argument 1-3 holder A er ikke kontekstfrit, hvis for ethvert bud på p kan findes
Læs mereProgrammering 2. dprog2 E2012. http://www.cs.au.dk/dprog2/
Programmering 2 dprog2 E2012 http://www.cs.au.dk/dprog2/ Læringsmål Deltagerne skal ved afslutningen af kurset kunne: forklare og anvende både basale og videregående elementer af et moderne programmeringssprog,
Læs mereRolf Fagerberg. Forår 2014
Forår 2014 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: Format: Programmering og Diskret matematik I (forelæsninger), TE (øvelser), S (arbejde selv og i studiegrupper) Eksamenform: Skriftlig
Læs mereRolf Fagerberg. Forår 2015
Forår 2015 Dagens program 1 2 3 4 5 Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Deltagere: BA i Datalogi BA i Software Engineering BA i Matematik-Økonomi BA i Anvendt Matematik BA
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Har en hvis lighed med divide-and-conquer: Begge opbygger løsninger til større problemer
Læs mereSkriftlig Eksamen Beregnelighed (DM517)
Skriftlig Eksamen Beregnelighed (DM517) Institut for Matematik & Datalogi Syddansk Universitet Mandag den 31 Oktober 2011, kl. 9 13 Alle sædvanlige hjælpemidler (lærebøger, notater etc.) samt brug af lommeregner
Læs mereProgrammering 2. dprog2 E2013. http://www.cs.au.dk/dprog2/
Programmering 2 dprog2 E2013 http://www.cs.au.dk/dprog2/ Læringsmål Deltagerne skal ved afslutningen af kurset kunne: forklare og anvende både basale og videregående elementer af et moderne programmeringssprog,
Læs mereOversættere Skriftlig eksamen onsdag d. 24. januar 2007
Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere Skriftlig eksamen onsdag d. 24. januar 2007 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet ved hver opgave. Den skriftlige
Læs mereNoter til Perspektiver i Matematikken
Noter til Perspektiver i Matematikken Henrik Stetkær 25. august 2003 1 Indledning I dette kursus (Perspektiver i Matematikken) skal vi studere de hele tal og deres egenskaber. Vi lader Z betegne mængden
Læs mereSproget Six. Til brug i rapportopgaven på kurset Oversættere. Vinter 2006. Abstract
Sproget Six Til brug i rapportopgaven på kurset Oversættere Vinter 2006 Abstract Six er baseret på det sprog, der vises i figur 6.2 og 6.4 i Basics of Compiler Design. Den herværende tekst beskriver basissproget
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs mereOversættere Skriftlig eksamen onsdag d. 20. april 2005
Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere Skriftlig eksamen onsdag d. 20. april 2005 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet ved hver opgave. Den skriftlige
Læs mereSTUDIEORDNING for Diplomuddannelsen i informationsteknologi under IT-Vest-samarbejdet
STUDIEORDNING for Diplomuddannelsen i informationsteknologi under IT-Vest-samarbejdet Revideret 16.05.2011 Indholdsfortegnelse 1. Indledning 2. Uddannelsens formål 3. Uddannelsens varighed 4. Uddannelsens
Læs mereIntroduktion til prædikatlogik
Introduktion til prædikatlogik Torben Braüner Datalogisk Afdeling Roskilde Universitetscenter 1 Plan Symbolisering af sætninger Syntaks Semantik 2 Udsagnslogik Sætningen er den mindste syntaktiske enhed
Læs mereElementær Matematik. Mængder og udsagn
Elementær Matematik Mængder og udsagn Ole Witt-Hansen 2011 Indhold 1. Mængder...1 1.1 Intervaller...4 2. Matematisk Logik. Udsagnslogik...5 3. Åbne udsagn...9 Mængder og Udsagn 1 1. Mængder En mængde er
Læs mereDet gyldne snit, forløb i 1. g
Det gyldne snit, forløb i 1. g Mål - Træne at skrive elementære matematiske tekster på computer inkl. billeder, formler og tabeller - Bruge geometriprogram - Læse en elementær tekst selv om et fagligt
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur blandt mange mulige. Dynamisk programmering Optimeringsproblem: man ønsker at finde
Læs mereEt generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel:
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel: Opbyg løsningen skridt for skridt ved hele tiden af vælge lige
Læs mereStudieordning for diplomuddannelsen i informationsteknologi
Studieordning for diplomuddannelsen i informationsteknologi 19/5 2003 1 Introduktion... 2 2 Formål... 2 3 Indhold... 2 4 Adgangskrav... 3 5 Eksaminer... 3 6 Studieplan... 3 7 Beskrivelse af de enkelte
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2017 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 6. april, 2017 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur (struktur opbygget af et endeligt antal enkeltdele) blandt mange mulige. Eksempler:
Læs mereDatamatiker Datalog. For studerende startet 2015
Datamatiker Datalog For studerende startet 2015 http://studerende.au.dk/studier/fagportaler/datalogi/studiemiljoe/inf ormationsmoeder/studieorientering-f2015/ 14-08-2015 Datamatiker 2015 1 Datamatiker
Læs mereDM02 opgaver ugeseddel 2
DM0 opgaver ugeseddel af Fiona Nielsen 16. september 003 Øvelsesopgaver 9/9, 10/9 og 11/9 1. Vis, at 1 3 + 3 3 + 5 3 +... + (n 1) 3 = n 4 n. Omskriver til summationsformel: (i 1) 3 = n 4 n Bevis ved induktion
Læs mereOversættere Vejledende løsninger til Skriftlig eksamen onsdag d. 24. januar 2007
Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere Vejledende løsninger til Skriftlig eksamen onsdag d. 24. januar 2007 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet
Læs mereSkriftlig eksamen, Programmer som Data Onsdag 6. januar Spørgsmål 1 (20 %): Regulære udtryk og automater
Skriftlig eksamen, Programmer som Data Onsdag 6. januar 2010 Dette eksamenssæt har 5 sider. Tjek med det samme at du har alle siderne. Eksamens varighed er 4 timer. Der er fire spørgmål. For at få fuldt
Læs mereInvarianter og kombinatoriske beviser
Invarianter og kombinatoriske beviser Anders Nedergaard Jensen Institut for Matematik, Aarhus Universitet Matematiklærerdag, Aarhus, 24. Marts 2017 En invariant er en værdi/udsagn der forbliver konstant
Læs mereDATALOGI 1E. Skriftlig eksamen fredag den 7. juni 2002
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen fredag den 7. juni 2002 Opgaverne vægtes i forhold til tidsangivelsen, og hver opgaves besvarelse bedømmes som en helhed.
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2019 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 10. april, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer (DM507)
Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Institut for Matematik og Datalogi Syddansk Universitet, Odense Mandag den 7. juni 00, kl. 9 Alle sædvanlige hjælpemidler (lærebøger, notater, osv.)
Læs mere3 Algebraisk Specifikation af Abstrakte Datatyper.
3 Algebraisk Specifikation af Abstrakte Datatyper. Specifikation kontra program. Bestanddele af en algebraisk specifikation. Klassificering af funktioner i en ADT. Systematisk definition af ligninger.
Læs mereDM502. Peter Schneider-Kamp (petersk@imada.sdu.dk) http://imada.sdu.dk/~petersk/dm502/
DM502 Peter Schneider-Kamp (petersk@imada.sdu.dk) http://imada.sdu.dk/~petersk/dm502/ 1 DM502 Bog, ugesedler og noter De første øvelser Let for nogen, svært for andre Kom til øvelserne! Lav opgaverne!
Læs mere1 Program for forelæsningen
1 Program for forelæsningen Udvidelser af Bims (Kontrolstrukturer) Repeat-løkker For-løkker Non-determinisme God Ond parallelitet Alle emner hører under semantisk ækvivalens. 1.0.1 Fra tidligere.. Bims
Læs mereUfuldstændighed, mængdelære og beregnelighed
Ufuldstændighed, mængdelære og beregnelighed Thomas Bolander, DTU Informatik Matematik: Videnskaben om det uendelige Folkeuniversitetet i København, efteråret 2009 Thomas Bolander, FUKBH 09 s. 1/27 Sidste
Læs mereProgrammering, algoritmik og matematik en nødvendig sammenblanding?
Programmering, algoritmik og matematik en nødvendig sammenblanding? Oplæg til IDA møde, 29. november 2004 Martin Zachariasen DIKU 1 Egen baggrund B.Sc. i datalogi 1989; Kandidat i datalogi 1995; Ph.D.
Læs mereP (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2.
P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2. Bevis ved stærk induktion. Basisskridt: P (2) er sand og P (3) er sand. Induktionsskridt: Lad k 2 og antag P
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2016 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 20. april, 2016 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 13. marts, 2018 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereSkriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)
Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528) Institut for Matematik & Datalogi Syddansk Universitet Mandag den 3 Januar 2011, kl. 9 13 Alle sædvanlige hjælpemidler
Læs mere01017 Diskret Matematik E12 Alle bokse fra logikdelens slides
01017 Diskret Matematik E12 Alle bokse fra logikdelens slides Thomas Bolander 1 Udsagnslogik 1.1 Formler og sandhedstildelinger symbol står for ikke eller og ( A And) hvis... så... hvis og kun hvis...
Læs mereDATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen torsdag den 3. juni 2004 Opgaverne vægtes i forhold til tidsangivelsen herunder, og hver opgaves besvarelse bedømmes
Læs mereGrundlæggende Matematik
Grundlæggende Matematik Hayati Balo, AAMS August 2012 1. Matematiske symboler For at udtrykke de verbale udsagn matematisk korrekt, så det bliver lettere og hurtigere at skrive, indføres en række matematiske
Læs mereGrundlæggende Algoritmer og Datastrukturer. Analyseværktøjer [CLRS, 1-3.1]
Grundlæggende Algoritmer og Datastrukturer Analyseværktøjer [CLRS, 1-3.1] Eksempler på en beregningsprocess Puslespil ved ombytninger Maximum delsum Hvad er udførselstiden for en algoritme? Maskinkode
Læs merePerspektiverende Datalogikursus Uge 1 - Algoritmer og kompleksitet
Perspektiverende Datalogikursus Uge 1 - Algoritmer og kompleksitet Gerth Stølting Brodal 30. august 2006 ½ Perspektiverende kursus Formål: Vise bredden af Datalogi. Vise fagets anvendelighed. Vise konkrete
Læs mereDivide-and-Conquer algoritmer
Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. 1. Opdel problem i mindre delproblemer
Læs mereIntroduktion. Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3. Philip Bille
Introduktion Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3 Philip Bille Introduktion Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3 Algoritmer
Læs mereMatematiske metoder - Opgavesæt
Matematiske metoder - Opgavesæt Anders Friis, Anne Ryelund, Mads Friis, Signe Baggesen 24. maj 208 Beskrivelse af opgavesættet I dette opgavesæt vil du støde på opgaver, der er markeret med enten 0, eller
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning)
Skriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning) Datalogisk Institut Aarhus Universitet Fredag den 28. maj 2004, kl. 9.00 13.00 Opgave 1 (20%) En (r, k) kryds-graf er en orienteret graf
Læs mereDATALOGISK INSTITUT, AARHUS UNIVERSITET
DATALOGISK INSTITUT, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 6 (seks) Eksamensdag: Onsdag den 11. august 2004, kl.
Læs mereDATALOGISK INSTITUT, AARHUS UNIVERSITET
DTLOS NSTTUT, RUS UNVERSTET Det Naturvidenskabelige akultet ESMEN rundkurser i Datalogi ntal sider i opgavesættet (incl. forsiden): 7 (syv) Eksamensdag: Torsdag den 14. juni 007, kl. 9.00-1.00 Eksamenslokale:
Læs mereSkriftlig eksamen i Datalogi
Roskilde Universitetscenter side 1 af 9 sider Skriftlig eksamen i Datalogi Modul 1 Vinter 1999/2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 5% Opgave 2
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs mereSproget Rascal (v. 2)
Sproget Rascal (v. 2) Til brug i K1 på kurset Oversættere Opdateret 29/11 2004 Abstract Rascal er et simpelt Pascal-lignende imperativt sprog. Dette dokument beskriver uformelt Rascals syntaks og semantik
Læs mereAalborg University. Synopsis. Titel: Traveling Salesman Problem
Aalborg University Department of Computer Science. Fredrik Bajers Vej 7E, 9220 Aalborg Ø. Titel: Traveling Salesman Problem Projektperiode: 16. maj 2003 til 20. juni 2003 Semester: BOS03 Gruppebetegnelse:
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer (dads)
Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Datalogisk Institut Aarhus Universitet Tirsdag den 27. maj 2003, kl. 9.00 3.00 Opgave (25%) For konstanten π = 3.4592... gælder identiteten π 2 6 =
Læs mereFejlkorligerende køder Fejlkorrigerende koder
Fejlkorligerende køder Fejlkorrigerende koder Olav Geil Skal man sende en fødselsdagsgave til fætter Børge, så pakker man den godt ind i håb om, at kun indpakningen er beskadiget ved modtagelsen. Noget
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET
INSTITUT FOR ATALOGI, AARHUS UNIVERSITET Science and Technology EKSAMEN Algoritmer og atastrukturer (00-ordning) Antal sider i opgavesættet (incl. forsiden): (elleve) Eksamensdag: Fredag den. august 0,
Læs mereArchimedes Princip. Frank Nasser. 12. april 2011
Archimedes Princip Frank Nasser 12. april 2011 c 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Bemærk: Dette er
Læs mereServersideprogrammering, CMS og eshop. Dag 1: Introduktion og serverside programmering Niels Østergaard
Serversideprogrammering, CMS og eshop Dag 1: Introduktion og serverside programmering Niels Østergaard Dagens program Introduktion til forløbet Begrebet serverside Introduktion til PHP-programmering Tilmelding
Læs mereGrafer og graf-gennemløb
Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).
Læs mereProjekt 1.4 De reelle tal og 2. hovedsætning om kontinuitet
Projekt 1.4 De reelle tal og 2. hovedsætning om kontinuitet Mens den 1. hovedsætning om kontinuerte funktioner kom forholdsvis smertefrit ud af intervalrusebetragtninger, så er 2. hovedsætning betydeligt
Læs mere