It og informationssøgning Forelæsning november 2006 Nils Andersen. Regulære udtryk og formelle sprog
|
|
- Birgit Christensen
- 5 år siden
- Visninger:
Transkript
1 It og informationssøgning Forelæsning november 2006 Nils Andersen Regulære udtryk og formelle sprog Regulært udtryk Forening, sammenstilling og Kleene-gentagelse Andre notationer og operatorer Modulet re re.findall, re.match, re.search, re.sub Oversættelse med re.compile Formelt sprog Formelt alfabet og formelle ord Formel grammatik Chomsky-hierarkiet: Regulære sprog (type 3), kontekstfri sprog (type 2), type 1- sprog og rekursivt numerable sprog (type 0) Andersen & Simonsen: kap. 11 1
2 Regulært udtryk Et regulært udtryk er en skabelon, som en tekst kan matche eller ikke matche. De simpleste regulære udtryk er en enkelt tekst; sådan et udtryk matcher netop denne tekst selv (og ingen andre tekster). Af regulære udtryk u 1 og u 2 dannes nye regulære udtryk af form u 1 u 2, u 1 u 2 eller u (hvor gruppering eventuelt kan vises med almindelige runde parenteser). Analogi: Det svarer til opbygning af regneudtryk, hvor de simpleste regneudtryk bare er tal, og sammensatte udtryk dannes herudfra, for eksempel ( ) 2 (under brug af +,, kvadrering og parenteser). Men hvor værdien af et regneudtryk er et tal, er værdien af et regulært udtryk et såkaldt regulært sprog: Samlingen af de tekster, som matcher udtrykket. 2
3 Forening, konkatenering og iteration En tekst matcher u 1 u 2, hvis den matcher u 1 eller u 2. En tekst t matcher u 1 u 2, hvis det er muligt at splitte den op i to dele, t = t 1 t 2 på en sådan måde, at t 1 matcher u 1, og t 2 matcher u 2 En tekst t matcher u, hvis den er tom, eller hvis den kan splittes op t = t 1 t 2 t k i dele, som hver især matcher u. Teoretisk set kan alle regulære udtryk opbygges med kun disse tre operatorer; for at få kortere udtryk bruger man i praksis en række yderligere iteratorer: En tekst matcher u?, hvis den er tom eller matcher u. En tekst t matcher u+, hvis den kan splittes op t = t 1 t 2 t k i k > 0 dele, som hver især matcher u. En tekst t matcher u{m, n}, hvis den kan splittes op t = t 1 t 2 t k i k dele, som hver især matcher u, og hvor m k n. u{n, n} skrives også u{n}, u{0, n} skrives også u{, n}, og u{m, } skrives også u{m, }. 3
4 Tegnklasser [...] Forening af enkelttegn. [a-cf4-7] betyder for eksempel a b c f [^...] Den komplementære klasse (alle tegn udenfor) \d, \D De decimale cifre og deres komplement \w, \W Alfanumeriske tegn ([a-za-z0-9 ]) og deres komplement \s, \S Mellemrumstegn ([ \t\n\v\f\r]) og deres komplement \b, \B Ordgrænse og dens komplement \A, ^ Tekstens begyndelse og hver linjes begyndelse \Z, $ Tekstens slutning og hver linjes slutning. Et hvilket som helst tegn Eksempel: Teksten <br /> matcher mønsteret <[^>]+/>. Husk, at \ i python-konstanter (både tekster og mønstre) skal angives med \\. 4
5 Grupper Ud over anvendelsen til gruppering har runde parenteser i regulære udtryk også en anden funktion: Idet parentespar nummereres 1, 2,... (fra venstre mod højre, regnet efter parrets venstreparentes), bliver gruppe n den deltekst, som matcher indholdet af det n-te parentespar. I regulære udtryk betegner \1, \2,... første, anden,... gruppe. den Eksempel: Teksten Vaskebjørnens børnebørn matcher mønsteret.*j(.{3}).+\\1(.+)\\1, idet gruppe 1 bliver ørn, og gruppe 2 bliver eb. 5
6 findall re.findall(u, t) opsøger i teksten t fra venstre mod højre ikke-overlappende deltekster, som matcher det regulære udtryk u. Resultatet er en liste af de fundne matchende deltekster, hvis u ikke indeholder nogen gruppering. Hvis u indeholder n > 0 runde parentespar, er resultatet en liste af n-tupler bestående af grupperne i hver af de matchende deltekster. >>> import re >>> tekst = abc123 lmn-11 def77 >>> re.findall("[a-z]+\\d+", tekst) [ abc123, def77 ] >>> re.findall("([a-z]+)(\\d+)", tekst) [( abc, 123 ), ( def, 77 )] >>> re.findall("([a-z]+(\\d+))", tekst) [( abc123, 123 ), ( def77, 77 )] 6
7 Oversættelse Forud for hver anvendelse af et regulært udtryk i python skal det oversættes; skal samme udtryk genbruges, kan det forbedre effektiviteten selv eksplicit at styre oversættelsen: re.compile(u[, f]) giver et regulært udtryk-objekt svarende til u. Hvor biblioteksfunktionerne forventer et regulært udtryk som argument, kan man give dem et regulært udtryk-objekt i stedet (og derved få en hurtigere udførelse). Den valgfrie parameter f er eventuelle modificerende flag (se noterne). 7
8 match, search og match-objekter re.match(u, t[, f]) forsøger at finde en indledende del af teksten t, som matcher det regulære udtryk u. Resultatet er det tilsvarende match-objekt, hvis det lykkes, og ellers None. re.search(u, t[, f]) opsøger i teksten t den længst mod venstre beliggende del, som matcher det regulære udtryk u. Resultatet er det tilsvarende match-objekt, hvis det lykkes, og ellers None. I begge tilfælde er den valgfrie parameter f som for compile. For et match-objekt m vil m.group(0) være hele den matchende deltekst og m.group(1), m.group(2),... være gruppe 1, gruppe 2,... (hvis der var runde parenteser i det regulære udtryk). def grep(u,filnavn) fil = open(filnavn) while True: linje = fil.readline() if linje == "": break m = re.search(u,linje) if m: print linje fil.close() 8
9 sub re.sub(u, s, t[, n]) returnerer resultatet af i teksten t at erstatte alle ikke-overlappende dele, som matcher det regulære udtryk u, med s. Den valgfrie parameter n kan angive et maksimalt antal erstatninger. >>> import re >>> tekst = "abc123 xyz666 lmn-11 def77" >>> re.sub("([a-z]+)(\\d+)", "\\2\\1 :", tekst) 123abc : 666xyz : lmn-11 77def : >>> def vis(u, t):... print re.sub(re.compile( ( +u+ ) ), \ {\\1}, t), \n... >>> abel \ = Abel spendabel\nhvad koster din sabel? >>> vis( a, abel) Abel spend{a}bel hv{a}d koster din s{a}bel? Andet argument s kan også være en funktion. Den skal i så fald tage et match-objekt som argument og resultere i en tekst, og den vil successivt blive kaldt med hver matchende deltekst som parameter. 9
10 Formelt alfabet, formelt ord, formelt sprog Et formelt ord er en stribe tegn fra et formelt alfabet V (bestående af de på forhånd fastlagte tegn, der overhovedet kan komme på tale). Det skal være entydigt, hvilke tegn et formelt ord består af. V er samlingen (den uendelige mængde) af alle formelle ord, iberegnet det tomme ord ε og enkelttegnsordene v for v V. Eksempel: V = {a, b} V = {ε, a, b, aa, ab, ba, bb, aaa,...} a b L ε aba V Et formelt sprog er en delmængde L af formelle ord. 10
11 Eksempler L 0 Sproget helt uden ord (det tomme sprog) L 1 Sproget kun bestående af ε L 2 Sproget kun bestående af aab L 3 Alle ord med højst 2 a er og højst 2 b er L 4 Alle ord med skiftevis et a og et b L 5 Alle ord, der ender på aba L 6 Alle ord med lige mange a er og b er L 7 Alle ord, der for et n 0 består af først n a er, derefter n b er, og til sidst igen n a er V Alle ord 11
12 Formel grammatik En formel grammatik er en samling omskrivningsregler (produktionsregler ) v h, hvor v og h er formelle ord over et alfabet med terminale symboler og hjælpesymboler (nonterminaler ). En af nonterminalerne skal være udpeget som sætningssymbol. Relationen defineres ved, at xvy xhy, hvis v h er en omskrivningsregel, og x og y er formelle ord. Det af en formel grammatik G fastlagte formelle sprog L(G) består af alle de ord w, for hvilke der findes en omskrivningskæde S... w, hvor S er sætningssymbolet, og w kun består af terminale symboler. En formel grammatik er kontekstfri, hvis hver omskrivningsregel kun har en enkelt nonterminal på sin venstre side. Et formelt sprog er kontekstfrit, hvis det kan fastlægges af en kontekstfri grammatik. 12
13 Eksempel S P + S S P P A P P A A (S) A 2 A 5 A 7 A 9 A 11 Denne grammatik (med S som sætningssymbol) er kontekstfri tilhører det frembragte formelle sprog, fordi S P + S P + P P + A P P + A A P + A 7 P A P A A A
14 Regulært sprog Ækvivalente karakteriseringer af de regulære sprog: Den mindste klasse af formelle sprog, som indeholder de endelige sprog og er lukket over for foreningsmængde, sammenkædning (konkatenering) og Kleene-iteration. De sprog, som kan beskrives af et regulært udtryk. De sprog, som kan fastlægges af en regulær grammatik. De sprog, som accepteres af en tilstandsgraf (tilstandsmaskine, automat). De sprog, hvor spørgsmålet om et ords tilhørsforhold kan fastlægges af en mekanisme, der kun har et lager af en på forhånd fastlagt endelig størrelse. 14
15 Formalismer En grammatik er regulær, hvis hver af dens produktioner har en af formerne A ab A a A ε (således at de indre skridt i en omskrivning må have form wa wab, hvor w er et terminalt ord) Eksempel på en tilstandsgraf: b a 1 6 a 2 b a b Tilstandsgraf for L 5 a b 15
16 Chomsky-hierarkiet L 0 L 1 L 2 L 3 L 4 L 5 V L 6 L 7 endelige sprog regulære sprog (type 3) kontekstfri sprog (type 2) kontekst-sensitive sprog (type 1) rekursivt numerable sprog (type 0) alle formelle sprog 16
It og informationssøgning Forelæsning oktober 2006 Nils Andersen
It og informationssøgning Forelæsning 6 11. oktober 2006 Nils Andersen Formatstyret udskrivning. Undtagelser. Løkkestyring med break og continue. Tekstfiler. Højereordensfunktioner. Formattekster og %-operatoren
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 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 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 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 mereIt og informationssøgning Forelæsning december 2006 Jakob Grue Simonsen. Diverse emner af almen interesse
It og informationssøgning Forelæsning 12 6. december 2006 Jakob Grue Simonsen Diverse emner af almen interesse 1 Gemme objekter til filer I python skal en fil på disken åbnes, før man kan læse eller skrive
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 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 mereIt og informationssøgning Forelæsning september 2006 Nils Andersen. Underprogrammer og betingelser. Standardfunktioner, typeomsætning
It og informationssøgning Forelæsning 2 13. september 2006 Nils Andersen Underprogrammer og betingelser Standardfunktioner, typeomsætning Funktionskald Moduler, lange navne Brugerdefinerede funktioner
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 merePython programmering. Per Tøfting. MacFest
Python programmering MacFest 2005 Per Tøfting http://pertoefting.dk/macfest/ Indhold Måder at afvikle Python program på Variabler Data typer Tal Sekvenser Strenge Tupler Lister Dictionaries Kontrolstrukturer
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 mereIt og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen. Tilfældige tal. Statistisk test. Sæt og associationslister.
It og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen Tilfældige tal. Statistisk test. Sæt og associationslister. Tilfældige tal Statistik Sæt Associationslister Downey, Elkner & Meyers:
Læs mereIt og informationssøgning Forelæsning september 2006 Nils Andersen. Gentagelser og tekster
It og informationssøgning Forelæsning 3 20. september 2006 Nils Andersen Gentagelser og tekster Dokumentationstekster Iteration (gentagelse) - med while - med for En- og todimensionale tabeller Typen af
Læs mereIntroduktion til funktioner, moduler og scopes i Python
Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til funktioner, moduler og scopes i Python Denne artikel er fortsættelsen af "I gang med Python", som blevet publiceret her på sitet for
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 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 og Automater
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
Læs mereIt og informationssøgning Forelæsning oktober 2006 Jakob Grue Simonsen. Klasser
It og informationssøgning Forelæsning 7 25. oktober 2006 Jakob Grue Simonsen Klasser Downey, Elkner & Meyers: Chapt. 12-14 Andersen & Simonsen: kap. 7 Vi har tidligere set, at Python tilbyder en række
Læs mereOversættere, ugeopgave 3
Oversættere, ugeopgave 3 Anders jerg Pedersen (andersbp@me.com) 29. november 2009 Opgave 1 Vi konsrer først NFA er for grammatikken fra opgave 3.22 med produktionen tilføjet: Produktion NFA 0 A 1 C D 2
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 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 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 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 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 mereAlgoritmeskabeloner: Sweep- og søgealgoritmer C#-version
Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Algoritmeskabeloner: Sweep- og søgealgoritmer C#-version Finn Nordbjerg 1/9 Indledning I det følgende introduceres et par abstrakte
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 mereOversættere Skriftlig eksamen onsdag d. 19. april 2006
Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere Skriftlig eksamen onsdag d. 19. april 2006 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet ved hver opgave. Den skriftlige
Læs mereDatalogi 0 GA Forelæsning september 2003 Nils Andersen. Tegn og tekster. Listefunktionalen map. Naïv sortering
Datalogi 0 GA Forelæsning 11 12 18. september 2003 Nils Andersen Tegn og tekster. Listefunktionalen map. Naïv sortering Typen char af tegn Typen string af tekster Eksempler Højereordensfunktionen map Sortering
Læs mereLær Python - Dag 4, modul 2 Objektorienteret programmering
Lær Python - Dag 4, modul 2 Objektorienteret programmering Simon J. Larsen 28. oktober 2017 Institut for Matematik og Datalogi Metoder Metoder Indtil videre har vi kun brugt objekter til at gemme værdier.
Læs mereIt og informationssøgning Forelæsning 1 6. september 2006 Nils Andersen. Beregning på computer
It og informationssøgning Forelæsning 1 6. september 2006 Nils Andersen Beregning på computer Begrebet data Universel computer Højere programmeringssprog Python Dialogdrift Fejl (syntaksf., udførelsesf.,
Læs mereFormler & algebra - Fase 2 Omskriv & beregn med variable
Navn: Klasse: Formler algebra - Fase Omskriv beregn med variable Vurdering fra til 5 (hvor 5 er højst) Læringsmål Selv Lærer Beviser og forslag til forbedring. Jeg kan opstille en linjes ligning, når jeg
Læs mereOmskrivningsregler. Frank Nasser. 10. december 2011
Omskrivningsregler Frank Nasser 10. december 2011 2008-2011. Dette dokument må kun anvendes til undervisning i klasser som abonnerer på MatBog.dk. Se yderligere betingelser for brug her. Indhold 1 Introduktion
Læs mereDDD Runde 2, 2015 Facitliste
DDD Runde 2, 2015 Facitliste Søren Dahlgaard og Mathias Bæk Tejs Knudsen Opgaver og løsninger til 2. runde af DDD 2015. 1 4. 19. februar, 2015 linetest DK v1.0 Line Test Sigurd er begyndt i gymnasiet og
Læs mereRegulære udtryk, 2. del
Denne guide er oprindeligt udgivet på Eksperten.dk Regulære udtryk, 2. del Artiklen uddyber mange af de begreber, som blev introduceret i den 1. artikel. Den burde dog kunne læses alene, hvis man allerede
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 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 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 mereMASO Uge 5. Topologi i euklidiske rum. Jesper Michael Møller. Uge 5. Formålet med MASO. Department of Mathematics University of Copenhagen
MASO Uge 5 Topologi i euklidiske rum Jesper Michael Møller Department of Mathematics University of Copenhagen Uge 5 Formålet med MASO Oversigt Åbne og afsluttede mængder Det indre, det ydre, afslutningen,
Læs meret a l e n t c a m p d k Matematiske Metoder Anders Friis Anne Ryelund 25. oktober 2014 Slide 1/42
Slide 1/42 Hvad er matematik? 1) Den matematiske metode 2) Hvad vil det sige at bevise noget? 3) Hvor begynder det hele? 4) Hvordan vælger man et sæt aksiomer? Slide 2/42 Indhold 1 2 3 4 Slide 3/42 Mængder
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 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 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 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 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 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 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 mereLad os som eksempel se på samtidigt kast med en terning og en mønt:
SANDSYNLIGHEDSREGNING Stokastisk eksperiment Et stokastisk eksperiment er et eksperiment, hvor vi fornuftigvis ikke på forhånd kan have en formodning om resultatet af eksperimentet Til gengæld kan vi prøve
Læs mereOversættere. Vejledende løsninger til Skriftlig eksamen onsdag d. 18. april 2007
Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere Vejledende løsninger til Skriftlig eksamen onsdag d. 18. april 2007 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet ved
Læs mereOversættere Skriftlig eksamen onsdag d. 25. januar 2006
Københavns Universitet Naturvidenskabelig Embedseksamen Oversættere Skriftlig eksamen onsdag d. 25. januar 2006 Eksamenstiden er to timer. Opgavernes vægt i procent er angivet ved hver opgave. Den skriftlige
Læs mereBRP Tal. Om computer-repræsentation og -manipulation. Logaritmer
BRP 13.9.2006 Tal. Om computer-repræsentation og -manipulation. Logaritmer 1. Opgaverne til i dag dækker det meste af stoffet 2. Resten af stoffet logaritmer binære træer 3. Øvelse ny programmeringsopgave
Læs mereLigningssystemer - nogle konklusioner efter miniprojektet
Ligningssystemer - nogle konklusioner efter miniprojektet Ligningssystemet Ax = 0 har mere end en løsning (uendelig mange) hvis og kun hvis nullity(a) 0 Løsningerne til et konsistent ligningssystem Ax
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 mereSortering. Eksempel: De n tal i sorteret orden
Sortering 1 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden
Læs mereChomsky hierarkiet af sprogklasser
Chomsky hierarkiet af sprogklasser Torben Mogensen Juli 2001 I oversætterbogen [Mog01] beskrives to klasser af sprog: De regulære sprog, beskrevet med regulære udtryk og endelige automater samt de kontekstfri
Læs mereSortering af information er en fundamental og central opgave.
Sortering Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,
Læs mereOrdbog over Symboler
Ordbog over Symboler Frank Nasser 20. 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
Læs mereInduktive og rekursive definitioner
Induktive og rekursive definitioner Denne note omhandler matematiske objekter, som formelt er opbygget fra et antal basale byggesten, kaldet basistilfælde eller blot basis, ved gentagen brug af et antal
Læs mereMASO Uge 5. Topologi i euklidiske rum. Jesper Michael Møller. Uge 5. Formålet med MASO. Department of Mathematics University of Copenhagen
MASO Uge 5 Topologi i euklidiske rum Jesper Michael Møller Department of Mathematics University of Copenhagen Uge 5 Formålet med MASO Oversigt Åbne og afsluttede mængder Det indre, det ydre, afslutningen,
Læs mereIt og informationssøgning Forelæsning 7 1. november 2006 Jakob Grue Simonsen. Indlejring og Nedarvning
It og informationssøgning Forelæsning 7 1. november 2006 Jakob Grue Simonsen Indlejring og Nedarvning Downey, Elkner & Meyers: Chapt. 15-16 Andersen & Simonsen: kap. 8 Vi har tidligere set løkker af forskellig
Læs mere{ } { } {( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )}
Stokastisk eksperiment Et stokastisk eksperiment er et eksperiment, hvor vi fornuftigvis ikke på forhånd kan have en formodning om resultatet af eksperimentet. Til gengæld kan vi prøve at sige noget om,
Læs mereSortering. De n tal i sorteret orden. Eksempel: Kommentarer:
Sortering Sortering Input: Output: n tal De n tal i sorteret orden Eksempel: Kommentarer: 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Sorteret orden kan være stigende eller faldende. Vi vil i dette kursus
Læs mereUendelige rækker og Taylor-rækker
Uendelige rækker og Taylor-rækker Thomas Bolander, DTU Informatik Matematik: Videnskaben om det uendelige Folkeuniversitetet i København, efteråret 200 Thomas Bolander, FUKBH 0 s. /24 Forhold mellem endelighed
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 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: Fredag den 25. juni 200, kl. 9.00-.00
Læs mereSkriftlig Eksamen Automatteori og Beregnelighed (DM17)
Skriftlig Eksamen Automatteori og Beregnelighed (DM17) Institut for Matematik & Datalogi Syddansk Universitet Odense Campus Lørdag, den 15. Januar 2005 Alle sædvanlige hjælpemidler (lærebøger, notater
Læs mereForelæsning Uge 2 Mandag
Forelæsning Uge 2 Mandag Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Java syntax og style guide Afleveringsopgave:
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 mereLær Python dag 1 - modul 1
Lær Python dag 1 - modul 1 Introduktion, basis python Steffen Berg Klenow Jonas Bamse Andersen Syddansk Universitet Indhold 1. Velkommen 2. Programmering i python 3. Typer, variabler og udtryk 1 Velkommen
Læs mereLær Python - Dag 3, modul 1 Læse og skrive filer
Lær Python - Dag 3, modul 1 Læse og skrive filer Simon J. Larsen 15. oktober 2017 Institut for Matematik og Datalogi Læse og skrive filer Persistens Vi har ofte brug for at gemme data på disken som ikke
Læs mere18 Multivejstræer og B-træer.
18 Multivejstræer og B-træer. Multivejs søgetræer. Søgning i multivejssøgetræer. Pragmatisk lagring af data i multivejstræer. B-træer. Indsættelse i B-træer. Eksempel på indsættelse i B-træ. Facts om B-træer.
Læs mereAarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00
Page 1/12 Aarhus Universitet, Science and Technology, Computer Science Exam Wednesday 27 June 2018, 9:00-11:00 Allowed aid: None The exam questions are answered on the problem statement that is handed
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 mereNoter om kombinatorik, Kirsten Rosenkilde, Marts Kombinatorik
Noter om kombinatorik, Kirsten Rosenkilde, Marts 006 Kombinatorik Disse noter er en introduktion til kombinatorik og starter helt fra bunden, så en del af det indledende er sikkert kendt for dig allerede
Læs mereSortering. Eksempel: De n tal i sorteret orden
Sortering 1 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden
Læs mereMatematisk modellering og numeriske metoder. Lektion 16
Matematisk modellering og numeriske metoder Lektion 16 Morten Grud Rasmussen 6. november, 2013 1 Interpolation [Bogens afsnit 19.3 side 805] 1.1 Interpolationspolynomier Enhver kontinuert funktion f på
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 mereBaggrundsnote om logiske operatorer
Baggrundsnote om logiske operatorer Man kan regne på udsagn ligesom man kan regne på tal. Regneoperationerne kaldes da logiske operatorer. De tre vigtigste logiske operatorer er NOT, AND og. Den første
Læs mereØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER
ØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER INDHOLDSFORTEGNELSE 0. FORMELSAMLING TIL FORMLER OG LIGNINGER... 2 Tal, regneoperationer og ligninger... 2 Ligning med + - / hvor x optræder 1 gang... 3 IT-programmer
Læs mereRegulære udtryk, 1. del
Denne guide er oprindeligt udgivet på Eksperten.dk Regulære udtryk, 1. del Validere input - udtrække tekst af tekst efter specielle kriterier - efterbehandle tekst. Regulære udtryk kan alt dette og mere
Læs mereSproget Limba. Til brug i G1 og K1. Dat1E 2003
Sproget Limba Til brug i G1 og K1 Dat1E 2003 Abstract Limba er et simpelt imperativt sprog med hoballokerede tupler. Dette dokument beskriver uformelt Limbas syntaks og semantik samt en fortolker for Limba,
Læs mereGrundlæggende Matematik
Grundlæggende Matematik Hayati Balo, AAMS Juli 2013 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 mereRegning. Mike Vandal Auerbach ( 7) 4x 2 y 2xy 5. 2x + 4 = 3. (x + 3)(2x 1) = 0. (a + b)(a b) a 2 + b 2 2ab.
Mike Vandal Auerbach Regning + 6 ( 7) (x + )(x 1) = 0 x + = 7 + x y xy 5 7 + 5 (a + (a a + b ab www.mathematicus.dk Regning 1. udgave, 018 Disse noter er en opsamling på generelle regne- og algebraiske
Læs mereProgrammeringscamp. Implementer funktionerne én for én og test hele tiden.
Programmeringscamp De to opgaver træner begge i at lave moduler som tilbyder services der kan bruges af andre, samt i at implementere services efter en abstrakt forskrift. Opgave 1 beder jer om at implementere
Læs mereIntroduktion til programmering. Uge 38.1 Python 2 Learning Python, kap 8-12.
Introduktion til programmering Uge 38.1 Python 2 Learning Python, kap 8-12. Opsummering Store dele af Python kan forstås gennem følgende simple model: En repræsentation/udtryk står for et objekt/en værdi
Læs mereSortering af information er en fundamental og central opgave.
Sortering 1 / 36 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 6, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,
Læs mereIt og informationssøgning Forelæsning november 2006 Jakob Grue Simonsen. Hypertekst og Python. Andersen & Simonsen: kap. 12
It og informationssøgning Forelæsning 11 29. november 2006 Jakob Grue Simonsen Hypertekst og Python Andersen & Simonsen: kap. 12 I dag gennemgås materiale af uhyre praktisk (og kun i lidet omfang generel)
Læs mereEt udtryk er (som bekendt?) lineært hvis den differentierede er en konstant funktion, dvs. at den ikke afhænger af x. Betragt f lgende værdiprocedurer
Opgave 1 (25%) Simple udtryk med +, - og * over heltal og en enkelt variabel x kan repræsenteres som værdier af f lgende type: Type Expression = Sum(const: Int, x: Unit, plus, minus, times: Arguments)
Læs mereKapitel 4 Løkker i C#
Kapitel 4 Løkker i C# Løkker en vigtig del af alle programmeringssprog, og C# er ikke andeles. En løkke er en måde at udføre en del af koden gentagne gange. Ideen er at du fortsætter med at udføre en opgave
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 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 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 mereRetningslinjer for bedømmelsen. Georg Mohr-Konkurrencen 2010 2. runde
Retningslinjer for bedømmelsen. Georg Mohr-Konkurrencen 2010 2. runde Det som skal vurderes i bedømmelsen af en besvarelse, er om deltageren har formået at analysere problemstillingen, kombinere de givne
Læs mereIndhold 1 Compilerens opbygning 2 Leksikalsk analyse 3 Grammatikker 4 LL-parsing 5 LR-parsing 6 Det abstrakte syntaks-træ 7 Attribut-grammatikker
Indhold 1 Compilerens opbygning 4 1.1 Compilerensfunktion... 4 1.2 Fasericompileringen... 4 1.3 TinyogC-... 7 2 Leksikalsk analyse 9 2.1 Strengeogsprog... 9 2.2 Regulæreudtryk... 10 2.3 Deterministiskeendeligeautomater...
Læs mereForelæsning Uge 2 Torsdag
Forelæsning Uge 2 Torsdag Java syntax og style guide Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Brug
Læs mereØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER
ØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER INDHOLDSFORTEGNELSE 0. FORMELSAMLING TIL FORMLER OG LIGNINGER... 2 Tal, regneoperationer og ligninger... 2 Isolere en ubekendt... 3 Hvis x står i første brilleglas...
Læs mereForelæsning Uge 4 Torsdag
Forelæsning Uge 4 Torsdag Algoritmeskabeloner findone, findall, findnoof, findsumof (i mandags) findbest Levetid for variabler og parametre Virkefeltsregler Hvor kan man bruge de forskellige variabler?
Læs mereNogle grundlæggende begreber
BE2-kursus 2010 Jørgen Larsen 5. februar 2010 Nogle grundlæggende begreber Lidt simpel mængdelære Mængder består af elementer; mængden bestående af ingen elementer er, den tomme mængde. At x er element
Læs mereDATALOGI 1E. Skriftlig eksamen fredag d. 16. januar 2004
Københavns Universitet Naturvidenskabelig Embedseksamen DATALOGI 1E Skriftlig eksamen fredag d. 16. januar 2004 Opgaverne vægtes i forhold til tidsangivelsen herunder, og hver opgaves besvarelse bedømmes
Læs mereIntroduktion. Philip Bille
Introduktion Philip Bille Plan Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3 Algoritmer og datastrukturer Hvad er det? Algoritmisk problem: præcist defineret relation mellem
Læs mere