INF2820 Datalingvistikk V2012. Jan Tore Lønning & Stephan Oepen

Like dokumenter
INF2820 Datalingvistikk V2014. Jan Tore Lønning

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning

INF2820 Datalingvistikk V2017 Forelesning 2, 23.1 Jan Tore Lønning

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2014. Jan Tore Lønning

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

1/31/2011 SAMMENHENGER FSA OG REGULÆRE UTTRYKK. Regulære språk. Fra FSA til RE. Fra regulært uttrykk til NFA REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2

INF INF1820. Arne Skjærholt. Terza lezione INF1820. Arne Skjærholt. Terza lezione

Typisk: Kan det være både nøkkelord og navn, så skal det ansees som nøkkelord

Typisk: Kan det være både nøkkelord og navn, så skal det ansees som nøkkelord

Skanning del I INF /01/15 1

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

Følger Sipsers bok tett både i stoff og oppgaver.

Syntax/semantics - I INF 3110/ /29/2005 1

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

INF1820: Introduksjon til språk-og kommunikasjonsteknologi

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

INF2080 Logikk og beregninger

Scanning - I Kap. 2. Hva scanneren gjør

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

Skanning del I. Kapittel 2 INF 3110/ INF

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning

Oppgaver til INF 5110, kapittel 5 Fullt svar på oppgave 5.4, og en del andre oppgaver med svar

INF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen

Oppgaver til INF 5110, kapittel 5, med svarforslag Gjennomgått torsdag 26. febr Dette er versjon fra 28/7

2/6/2012. Begrensninger ved regulære språk. INF2820 Datalingvistikk V2012. Formelle språk som ikke er regulære KONTEKSTFRIE GRAMMATIKKER.

INF2820 Datalingvistikk V2018 Forelesning 3, 29. jan. Jan Tore Lønning

3/1/2011. I dag. Recursive descent parser. Problem for RD-parser: Top Down Space. Jan Tore Lønning & Stephan Oepen

INF2820 Datalingvistikk V2015. Forelesning 4, 9.2 Jan Tore Lønning

INF2820 Datalingvistikk V gang, Jan Tore Lønning

INF2820 Datalingvistikk V forelesning, 30.1 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 26.2 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 4.5 Jan Tore Lønning

INF2820 Datalingvistikk V2016. Forelesning 4, 10.2 Jan Tore Lønning

Oppgaver til INF 5110, kapittel 5

3/8/2011. I dag. Dynamic Programming. Example. Example FORMELLE EGENSKAPER VED SPRÅK (KAP. 16) Jan Tore Lønning & Stephan Oepen

2/22/2011. Høyre- og venstreavledninger. I dag. Chomsky-normalform (CNF) Chomsky-normalform (CNF) PARSING. Jan Tore Lønning & Stephan Oepen

Slope-Intercept Formula

INF5820 Natural Language Processing - NLP. H2009 Jan Tore Lønning

INF 2820 V2016: Obligatorisk innleverinsoppgave 1

1/26/2012 LITT PYTHON. INF2820 Datalingvistikk V2012. Hvorfor Pyhton. Python syntaks. Python er objektorientert. Python datatyper.

INF2820 Datalingvistikk V gang, Jan Tore Lønning

TMA4140 Diskret Matematikk Høst 2016

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning

INF2820 Datalingvistikk V2014. Forelesning 4, 6.2 Jan Tore Lønning

INF2820 Datalingvistikk V Gang 19.3 del 1 Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF3110 Programmeringsspråk

2/24/2012. Context-Free Grammars. I dag. Avledning. Eksempel: grammar1 PARSING. Jan Tore Lønning

INF2820 Datalingvistikk V2017 Forelesning 3, 30.1 Jan Tore Lønning

Kap. 5, Del 3: INF5110, fra 1/3-2011

Anatomien til en kompilator - I

Løsningsforslag til obligatorisk oppgave 3 INF1800 Logikk og beregnbarhet, høsten 2009

SVM and Complementary Slackness

UNIVERSITETET I OSLO

Neural Network. Sensors Sorter

INF2820 Datalingvistikk V2012

INF2820 Datalingvistikk V2014. Jan Tore Lønning

Dagens tema Grundig repetisjon og utdyping: Syntaks kontra semantikk

FASMED. Tirsdag 21.april 2015

INF2820 Datalingvistikk V2017 Forelesning 1.1, 16.1 Jan Tore Lønning

Vi definerer en mengde ved å fortelle hva den inneholder. Vi kan definere den på listeform eller ved hjelp av en utsagnsfunksjon.

EN Skriving for kommunikasjon og tenkning

Øvingsforelesning 2. Mengdelære, funksjoner, rekurrenser, osv. TMA4140 Diskret Matematikk. 10. og 12. september 2018

INF2820 Datalingvistikk V2016. Forelesning 4, 10.2 Jan Tore Lønning

INF2820 Datalingvistikk V2012. Jan Tore Lønning

Stoff som i boka står i kap 4, men som er. 10. Februar Ifi, UiO

UNIVERSITETET I OSLO

INF2820 Datalingvistikk V Gang 13.3 Jan Tore Lønning

Enkel og effektiv brukertesting. Ida Aalen LOAD september 2017

INF2820 Datalingvistikk V2016. Jan Tore Lønning

INF2820 Datalingvistikk V2015. Jan Tore Lønning

INF2820 Datalingvistikk V Gang 6.3 Jan Tore Lønning

INF2820 Datalingvistikk V Gang Jan Tore Lønning

INF2820 Datalingvistikk V Gang 9.3 Jan Tore Lønning

Dagens tema: Regulære språk og uttrykk

Hjemmeeksamen 1 i INF3110/4110

UNIVERSITETET I OSLO

Slides til 12.1 Formelt språk og formell grammatikk

Repetisjon. 1 binærtall. INF3110 Programmeringsspråk. Sist så vi ulike notasjoner for syntaks: Jernbanediagrammer. BNF-grammatikker.

UNIVERSITETET I OSLO

1/18/2011. Forelesninger. I dag: Obligatoriske oppgaver. Gruppeundervisning. Jan Tore Lønning & Stephan Oepen

UNIVERSITETET I OSLO

INF2820 Datalingvistikk V2018 Forelesning 1 del 1, 15. jan. Jan Tore Lønning

Hva er syntaks? En overskrift i en norsk avis: Dagens tema Grundig repetisjon og utdyping:

INF2820 V2017 Oppgavesett 6 Gruppe 7.3

INF2820 Datalingvistikk V gang, 27.2 Jan Tore Lønning

Graphs similar to strongly regular graphs

Viktige begrep i kapittel 1.

IN2080. Oppgave 1. Oppgave 2. Eksamen. Vår Den nondeterministiske endelige automaten A er gitt ved (Q, Σ, δ, q 0, F ) der

INF2820 Datalingvistikk V Gang 27.2 Jan Tore Lønning

Oppgave 1a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet.

Transkript:

INF2820 Datalingvistikk V2012 Jan Tore Lønning & Stephan Oepen

ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK 17. januar 2012 2

Naturlige språk En mann kjøpte en bil av en mann som hadde eid bilen i tjue år. Hvor mange ord? 15 ordforekomster ( tokens ) 12 ordformer ( types ) 11 leksem (bil/bilen) * En en en mann mann bil bilen kjøpte år eid hadde av i som tjue. Noen ikke alle sekvenser av ord er Velformet/grammatiske syntaks Meningsfulle semantikk Til ettertanke: Er alle grammatiske sekvenser meningsfulle? Må en sekvens være velformet for å være meningsfull? 17. januar 2012 3

Formelle språk Et formelt språk består av: En endelig mengde A Ø En delmengde L A* Eksempel 1 A = {a, b, c} A* = {ε, a, b, c, aa, ab, ac, ba,, cccc, } L = {x A* x inneholder nøyaktig to a-er} Merk A* er alle mulige strenger over A ε er den tomme strengen (skrives også λ og Λ). Ø er det tomme språket Ø {ε} 17. januar 2012 4

Naturlige språk som formelle språk Formelt språk: Definert av regler/grammatikk Naturlig språk: Definert av bruk Vi bruker formelle språk som modeller for naturlige språk Eksempel 3 A = {a, b, c,, æ, ø, å} A* = {ε, a, b, c, aa, ab, ac, ba,, cccc,, datalingvistikk, } L = mengden av de bokstavstrengene vi ser på som norske ord. Eksempel 2 A = mengden av alle former av alle ord i Bokmålsordboka A* = mengden av alle sekvenser av slike ord L = mengden av de strengene fra A* vi anser som grammatiske norske setninger Eksempel 4 A = {a, b, c,, æ, ø, å, \blank, \.} L = mengden av de strengene vi ser på som norske setninger. 17. januar 2012 5

Mengdeoperasjoner på språk Siden språk er mengder kan vi gjøre mengdeoperasjoner Hvis <A, L> og <A, M> er to språk, så er L M L M A*-L språk (Merk at ε L eller ε A*-L, men ikke begge) Eksempel 5 A = {a, b, c,, æ, ø, å} L = mengden av norske ord. M = mengden av engelske ord. L M er ord som fins i begge språkene, = {i, ad, al, be, by,, cup, union, } A*-L er alle bokstavsekvenser som ikke er norske ord= {bb, bbb, bbbb, } L M er alle bokstavsekvenser som er et ord i minst ett av språkene 17. januar 2012 6

Flere operasjoner Konkatenering Hvis s og t er to strenger skriver vi s t (eller bare st) for konkateneringen av dem Eks s= abc, t=ca, s t=abcca Hvis <A, L> og <A, M> er to språk, så er LM = {s t s L & t M } Kleene-stjerne Hvis <A, L> er et språk, så er L* alle mulige konkateneringer av et endelig antall strenger fra L. Formelt: L* er minste mengde s.a.: ε L* Hvis s L* og t L så er s t L* 17. januar 2012 7

Regulære språk 1. Språkene Ø { ε } { a } for alle a A er regulære 2. Hvis M og L er regulære, er L M LM L* regulære Regulære uttrykk Beskriver språket Ø L(Ø) = Ø ε L(ε) = { ε } a, for alle a A L(a) = { a } Hvis R og S er regulære uttrykk: (R + S) L(R+S)=L(R) L(S) (R T) L(R T) = L(R)L(T) (R*) L(R*)=L(R)* Merk: R S og R S brukes også for R+S λ og Λ brukes også for ε Vi kan sløyfe ( og ) hvis det er entydig Også vanlig med operatorpresedens 17. januar 2012 8

Observasjoner Alle endelige språk er regulære Eks L({abc, bb, ca}) = L(abc) L(bb) L(ca), og L(abc) = L(a)L(b)L(c), osv. Hvis L og M er regulære, så er L M A*-L regulære. Ikke trivielt å vise: Neste gang 17. januar 2012 9

ENDELIGE AUTOMATA 17. januar 2012 10

FSAs as Graphs Takk til Jurafsky og Martin for de engelske foilene + illustrasjoner fra læreboka Let s start with the sheep language from Chapter 2 /baa+!/ a+ samme som aa* 1/17/2012 Speech and Language Processing - Jurafsky and Martin 11

Sheep FSA We can say the following things about this machine It has 5 states b, a, and! are in its alphabet q 0 is the start state q 4 is an accept state It has 5 transitions 1/17/2012 Speech and Language Processing - Jurafsky and Martin 12

Figure 2.15

Navn Brukes om hverandre: Finite state automata - FSA Finite automata FA Finite state machine - FSM Kan beskrives med Diagram Tabell, eller Formelt (neste side) Kan betraktes som Notasjoner for å beskrive språk Notasjon for en automat som leser en tape og skifter tilstand for hvert symbol den leser 1/17/2012 Speech and Language Processing - Jurafsky and Martin 14

DFA deterministisk endelig maskin Q = {q0, q1, q2,, qn-1}

Strengt tatt - Figure 2.14+ Fra definisjonen skal det være en kant ut fra hver tilstand for hvert symbol. Vi kan legge til en ekstra tilstand, men bryr oss ikke alltid om å tegne den. a b!

Recognition Traditionally, (Turing s notion) this process is depicted with a tape. 1/17/2012 Speech and Language Processing - Jurafsky and Martin 17

Recognition Simply a process of starting in the start state Examining the current input Consulting the table Going to a new state and updating the tape pointer. Until you run out of tape. 1/17/2012 Speech and Language Processing - Jurafsky and Martin 18

Key Points Deterministic means that at each point in processing there is always one unique thing to do (no choices). D-recognize is a simple table-driven interpreter The algorithm is universal for all unambiguous regular languages. To change the machine, you simply change the table. Tidsforbruk: Proporsjonalt med lengden av strengen Lagerforbruk: Konstant 1/17/2012 Speech and Language Processing - Jurafsky and Martin 19

Non-Determinism 1/17/2012 Speech and Language Processing - Jurafsky and Martin 20