1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 6 Mälardalen University 2006.

Slides:



Advertisements
Liknande presentationer
Målvakter Detta talar för Tre Kronor Detta talar för Tre Kronor Detta talar emot Tre Kronor Detta talar emot Tre Kronor Performance-analyserIndividuella.
Advertisements

PTS Bredbandskartläggning
Folkhälsan i Sverige: Årsrapport 2012
Grafer Riks-Stroke årsrapport
Folkbildningspolitikers attityder till studieförbunden 2013
Kalibrering – Dagens kapacitet – något under DG
Kap 1 - Algebra och linjära modeller
Kommunalekonomins utveckling till år 2018 Källa: Basserviceprogrammet samt Kommunförbundets beräkningar.
Joomla © 2009 Stefan Andersson 1. Kontaktformulär  På varje seriös webbplats bör det finnas ett kontaktformulär.  Använd ej maillänkar, risk för spam!
PROJEKT TRAPPSTEGET Bilaga 1 PROJEKT TRAPPSTEGET
Konstföreningen Dragning På sista sidan finns konstnärerna för respektive tavla.
BENÄMNA lätta ord SPRÅKTRÄNING VID AFASIKg VIII
Tillämpning av bolagsstyrningskoden vid årsstämmor 2005 och 2006.
Hela Sverige ska leva Totalrapport. Regeringens bidrag har medverkat till kunskapsförmedling?
Projektföljeforskning
Eddie Arnold - Make The World Go Away Images colorées de par le monde Déroulement automatique ou manuel à votre choix 1 för dig.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Exercise 2 Mälardalen University 2007.
Karolinska Institutet, studentundersökning Studentundersökning på Karolinska Institutet HT 2013.
Bastugatan 2. Box S Stockholm. Blad 1 Läsarundersökning Maskinentreprenören 2007.
| Trycksår Kommun/Områdes-skillnader (inklusive könsdimensionen) Dennis Nordvall Statistiker/Datamanager,
REGIONAL DIGITAL AGENDA Tony Blomqvist VD, IT Norrbotten
Sammanställning genomförd av: Susanne Malmquist, Codeq AB.
Enkätresultat för Grundskolan Elever 2014 Skola:Hällby skola.
Sveriges utrikeshandel (Andelar i procent) ImportExport EU (25) EFTA NAFTA Central- och Östeuropa Asien - Japan - Kina Övriga 59,9.
Information statistik Ej med i statistik: Konradsbergs lokaler (utgår VT13) Sveaplans Aula (merparten bokas endast av en institution) Nya lokalerna i Frescati.
Information statistik Ej med i statistik: Konradsbergs lokaler (utgår VT13) Nya lokalerna i Frescati backe (ej med i gamla systemet) Övrigt: Mätningen.
Information statistik Ej med i statistik: Konradsbergs lokaler (utgår VT13) Nya lokalerna i Frescati backe (ej i bruk förrän VT13) Övrigt: Mätningen är.
Finländarnas uppfattningar om äldrevården Kirsi Markkanen Utvecklingschef Tehy rf.
1 Vänsterskolan Debattartiklar. 2 Aktuell krok 3 Aktuella krokar 1. Direkt krok.
Konsumenter om Svanen och EU Ecolabel Om undersökningen Utförd av: Response Analys, Oslo i dec 2010 Cirka personer från respektive land Totalt.
Kostnader för läkemedelsförmån Utveckling t.o.m. september 2014 Materialet: avser kostnader inklusive moms är ej åldersstandardiserat Lennart Tingvall:
Sveriges utrikeshandel mars Källa: WTO; International Trade Statistics 2009.
Hittarps IK Kartläggningspresentation år 3.
Information statistik Ej med i statistik: Konradsbergs lokaler (utgår VT13) Institutionsägda lokaler Övrigt: Mätningen är gjord terminstiden för VT13 (undantag.
1 Individ Kompetens 60%66%67% Motivation 59%64%60% Ansvar & Initiativ 77%74%68% Befogenheter 82%69%61% Organisation Samarbete 52%66%68% Organisatorisk.
Från Gotland på kvällen (tågtider enligt 2007) 18:28 19:03 19:41 19:32 20:32 20:53 21:19 18:30 20:32 19:06 19:54 19:58 20:22 19:01 21:40 20:44 23:37 20:11.
Arbetspensionssystemet i bilder Bildserie med centrala uppgifter om arbetspensionssystemet och dess funktion
1 Bakgrund & Genomförande MÅLGRUPP Män och kvinnor år, dvs ca 7 miljoner Riksrepresentativt urval från Novus Sverigepanel som är slumpmässigt rekryterad.
Kommunalekonomins utveckling Nordiskt möte i Island 2014 Ilari Soosalu.
TÄNK PÅ ETT HELTAL MELLAN 1-50
/hp Beräkning av kommunernas och samkommunernas utgifter år 2013 Övriga utgifter 0,81 md € Investeringar 4,70 md € Övr. verksamhetskostn. 0,79.
Kouzlo starých časů… Letadla Pár foteček pro vzpomínku na dávné doby, tak hezké snění… M.K. 1 I Norrköping får man inte.
Best pictures on the internet 2007 Awards 1http:// Är vänsteralliansen trovärdig i Norrköping.
För att uppdatera sidfotstexten, gå till menyfliken: Infoga | Sidhuvud och sidfot Fondbolagsträff 2015.
Varumärket Luleå kommun
Best pictures on the internet 2007 Awards 1http:// (s), (v), och (mp) i Norrköping, gillar inte att vi använder grundlagarna.
Resultat sammanhållen vård och omsorg om de mest sjuka äldre i Örebro län Västra länsdelen mätperiod 2014.
Arbetspensionssystemet i bilder Bildserie med centrala uppgifter om arbetspensionssystemet och dess funktion
Källa: FHI, Folkhälsodatabas
Enkätresultat för Grundskolan Föräldrar 2014 Skola - Gillberga skola.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 0 - Intro Mälardalen University 2005.
Förskoleenkät Föräldrar 2012 Förskoleenkät – Föräldrar Enhet:Hattmakarns förskola.
Presskonferens 7 december 2010 Arbetsmarknadsutsikterna Hösten2010 Tord Strannefors.
Sammanhållen vård och omsorg om de mest sjuka äldre i Örebro län Mätperiod – Margit Gehrke Flyckt Projektledare
 Who frågar efter en persons (eller personers) identitet (vem dem är).  Who is he?  Who are they?  Who is coming?
To practise speaking English for 3-4 minutes Genom undervisningen i ämnet engelska ska eleverna ges förutsättningar att utveckla sin förmåga att: formulera.
1-1 Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-1 Programmering 7.5 hp Programmering är... creativ, fascinerande, roligt,
THINGS TO CONSIDER WHILE PLANNING A PARTY Planning an event can take an immense amount of time and planning. Even then, the biggest problem that arises.
Advice from Bronx Best Real Estate Attorney. Jagiani Law office of New York has been successfully working as divorce attorney & Real estate attorney for.
Digitization and Management Consulting
Why you should consider hiring a real estate attorney!
Law abiding grounds of filing a divorce Jagianilaw.com.
Bringapillow.com. Online Dating- A great way to find your love! The words ‘Love’ and ‘Relationship’ are close to every heart. Indeed, they are beautiful!
Course info.
Meeting singles had never been so easy before. The growing dating sites for singles have given a totally new approach to getting into relationships. ‘Singles.
We are the world There comes a time When we head a certain call When the world must come together as one There are people dying And it's time to lend.
Formal Languages, Automata and Models of Computation
How to Buy Engagement Rings for Women Online?. Buying engagement rings for women or tiffany celebration rings from the online market could be a bit challenging.
You Must Take Marriage Advice to Stop Divorce! Dontgetdivorced.com.
Presentationens avskrift:

1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 6 Mälardalen University 2006

2 RECAPITULATION: REGULAR LANGUAGES - Languages, Alphabets and Strings - Operations on Strings - Operations on Languages - Regular Expressions - Finite Automata - Regular Grammars - Pumping lemma INTRODUCTION: CONTEXT FREE LANGUAGES

3 NEXT WEEK! Midterm Exam 1 Regular Languages Place: U2114 Time: Tuesday , 10:15-12:00 It is OPEN BOOK. (This means you are allowed to bring in one book of your choice.) It will cover lectures 1 through 5 (Regular Languages).

4 Med det som vi har lärt oss hittills kan vi klara följande tentauppgifter…

5 Tenta 29 okt 1999; uppgift 2 (L Salling) Konstruera (med motiveringar) vars strängar innehåller samtliga tre tecken! a) Ett reguljärt uttryck över

6 Lösning eller

7 Konstruera (med motiveringar) vars strängar innehåller samtliga tre tecken! b) En minimal DFA för ett språk L över

8

9 Särskiljningsalgoritm

10 c) En reguljär grammatik för L

11 Tenta 24 okt 1994; uppgift 2 (L Salling) Reguljära? vars strängar innehåller ett jämnt antal a:n! a) Språket över Ja, språket är reguljärt och beskrivs med ett reguljärt uttryck:

12 Tenta 24 okt 1994; uppgift 2 (L Salling) b) De välformade aritmetiska uttrycken formade i alfabetet Nej, språket är inte reguljärt: Ta följande sträng: N stycken a adderas Om språket vore reguljärt skulle det kunna pumpas. Men de N avslutande tecknen består enbart av höger- parenteser och kan inte ändras utan att balansen med vänsterparenteserna förstörs.

13 Tenta 15 mars 1995; uppgift 3 (L Salling) Reguljära? c) Ja, språket är reguljärt och beskrivs med ett reguljärt uttryck:

14 Tenta 15 mars 1995; uppgift 3 (L Salling) Reguljära? d) Nej. Strängen vars enda palindromprefix längre än 2 är strängen själv, kan inte pumpas någonstans inuti b-block utan att falla ur språket.

15 Tenta 15 mars 1995; uppgift 3 (L Salling) Reguljära? e) Nej. Om det vore reguljärt skulle även föregående språk vara det (eftersom det är komplementspråk, och regulariteten bevaras under komplementbildning).

16 Pumping Lemma is necessary but not sufficient for RL OBS! The pumping lemma does not give a sufficient condition for a language to be regular! You can not use it to show that language is regular. For example, the language (strings over the alphabet {0,1} consisting of a nonempty even palindrome followed by another nonempty string) is not regular but can still be "pumped" with m = 4: Suppose w=uuRv has length at least 4. If u has length 1, then |v| ≥ 2 and we can take y to be the first character in v. Otherwise, take y to be the first character of u and note that yk for k ≥ 2 starts with the nonempty palindrome yy. For a practical test that exactly characterizes regular languages, see the Myhill-Nerode theorem. The typical method for proving that a language is regular is to construct either a Finite State Machine or a Regular Expression for the language.

17 Minimizing DFA’s By Partitioning (Delmängdskonstruktion)

18 Minimizing DFA Different methods All involve finding equivalent states: States that go to equivalent states under all inputs We will use the Partitioning Method

19 Minimizing DFA’s by Partitioning Consider the following DFA (from Forbes Louis): Accepting states are yellow Non-accepting states are blue Are any states really the same?

20 S 2 and S 7 are really the same: Both Final states Both go to S6 under input b Both go to S3 under an a S 0 and S 5 really the same. Why? We say each pair is equivalent Are there any other equivalent states? We can merge equivalent states into 1 state

21 Partitioning Algorithm First Divide the set of states into Final and Non-final states Partition I Partition II a b S0S0 S1S1 S4S4 S1S1 S5S5 S2S2 S3S3 S3S3 S3S3 S4S4 S1S1 S4S4 S5S5 S1S1 S4S4 S6S6 S3S3 S7S7 *S 2 S3S3 S6S6 *S 7 S3S3 S6S6

22 Partitioning Algorithm Now See if states in each partition each go to the same partition S 1 & S 6 are different from the rest of the states in Partition I (but like each other) We will move them to their own partition a b S0S0 S 1 I S 4 I S1S1 S 5 I S 2 II S3S3 S 3 I S4S4 S 1 I S 4 I S5S5 S 1 I S 4 I S6S6 S 3 I S 7 II *S 2 S 3 I S 6 I *S 7 S 3 I S 6 I

23 Partitioning Algorithm a b S0S0 S1S1 S4S4 S5S5 S1S1 S4S4 S3S3 S3S3 S3S3 S4S4 S1S1 S4S4 S1S1 S5S5 S2S2 S6S6 S3S3 S7S7 *S 2 S3S3 S6S6 *S 7 S3S3 S6S6

24 Partitioning Algorithm Now again See if states in each partition each go to the same partition In Partition I, S 3 goes to a different partition from S 0, S 5 and S 4 We’ll move S3 to its own partition a b S0S0 S 1 III S 4 I S5S5 S 1 III S 4 I S3S3 S 3 I S4S4 S 1 III S 4 I S1S1 S 5 I S 2 II S6S6 S 3 I S 7 II *S 2 S 3 I S 6 III *S 7 S 3 I S 6 III

25 Partitioning Algorithm Note changes in S 6, S 2 and S 7 a b S0S0 S 1 III S 4 I S5S5 S 1 III S 4 I S4S4 S 1 III S 4 I S3S3 S 3 IV S1S1 S 5 I S 2 II S6S6 S 3 IV S 7 II *S 2 S 3 IV S 6 III *S 7 S 3 IV S 6 III

26 Partitioning Algorithm Now S 6 goes to a different partition on an a from S 1 S 6 gets its own partition. We now have 5 partitions Note changes in S 2 and S 7 a b S0S0 S 1 III S 4 I S5S5 S 1 III S 4 I S4S4 S 1 III S 4 I S3S3 S 3 IV S1S1 S5 IS5 I S 2 II S6S6 S 3 IV S 7 II *S 2 S 3 IV S 6 V *S 7 S 3 IV S 6 V

27 Partitioning Algorithm All states within each of the 5 partitions are identical. We might as well call the states I, II III, IV and V. a b S0S0 S 1 III S 4 I S5S5 S 1 III S 4 I S4S4 S 1 III S 4 I S3S3 S 3 IV S1S1 S 5 I S 2 II S6S6 S 3 IV S 7 II *S 2 S 3 IV S 6 V *S 7 S 3 IV S 6 V

28 Partitioning Algorithm a b I III I *II IVV III I II IV V II Here they are: V a a a a a b b b b b b

29 Chomsky Hierarchy

30 Automata theory: formal languages and formal grammars

31 Automata theory: formal languages and formal grammars

32 Regular Languages Context-Free Languages Non-regular languages

33 Formal Definition Grammar Set of variables Set of terminal symbols Start variable Set of production rules

34 Regular Grammars A regular grammar is any right-linear or left-linear grammar Examples

35 A Nonregular Language DFA must have infinite number of states. Statesare distinct for each

36 Context-Free Languages

37 Context-Free Languages Pushdown Automata Context-Free Grammars stack automaton

38 Context-Free Grammars

39 A context-free grammar A derivation Example

40 A context-free grammar Another derivation

41

42 A context-free grammar A derivation Example

43 A context-free grammar Another derivation

44

45 A context-free grammar A derivation Example

46 A context-free grammar A derivation

47

48 Definition: Context-Free Grammars Grammar Productions of the form: is string of variables and terminals VariablesTerminal symbols Start variables

49 Definition: Context-Free Languages A language is context-free if and only if there is a grammar with

50 Derivation Order Leftmost derivation

51 Derivation Order Rightmost derivation

52 Leftmost derivation

53 Rightmost derivation

54 Derivation Trees

55

56

57

58

59 Derivation Tree

60 yield Derivation Tree

61 Partial Derivation Trees Partial derivation tree

62 Partial derivation tree

63 Partial derivation tree sentential form yield

64 Same derivation tree Sometimes, derivation order doesn’t matter Leftmost: Rightmost:

65 Ambiguity

66 leftmost derivation derivation (* denotes multiplication)

67 derivation leftmost derivation

68 Two derivation trees

69 The grammar is ambiguous! Stringhas two derivation trees

70 stringhas two leftmost derivations The grammar is ambiguous:

71 Definition A context-free grammar is ambiguous if some string has two or more derivation trees (two or more leftmost/rightmost derivations)

72 Why do we care about ambiguity? Let’s see the case

73 Why do we care about ambiguity?

74 Why do we care about ambiguity?

75 Correct result:

76 Ambiguity is bad for programming languages We want to remove ambiguity!

77 We fix the ambiguous grammar… …by introducing parentheses () to indicate grouping, (precedence) Non-ambiguous grammar

78

79 Unique derivation tree

80 The grammar is non-ambiguous Every string has a unique derivation tree

81 Inherent Ambiguity Some context free languages have only ambiguous grammars! Example:

82 The string has two derivation trees

83 Compilers

84 Compiler Program v = 5; if (v>5) x = 12 + v; while (x !=3) { x = x - 3; v = 10; } Add v,v,0 cmp v,5 jmplt ELSE THEN: add x, 12,v ELSE: WHILE: cmp x,3... Machine Code

85 Lexical analyzer parser Compiler program machine code input output

86 A parser “knows” the grammar of the programming language

87 Parser PROGRAM STMT_LIST STMT_LIST STMT; STMT_LIST | STMT; STMT EXPR | IF_STMT | WHILE_STMT | { STMT_LIST } EXPR EXPR + EXPR | EXPR - EXPR | ID IF_STMT if (EXPR) then STMT | if (EXPR) then STMT else STMT WHILE_STMT while (EXPR) do STMT

88 The parser finds the derivation of a particular input * 5 Parser E  E + E | E * E | INT E  E + E  E + E * E  10 + E*E  * E  * 5 input derivation

89 derivation derivation tree E  E + E  E + E * E  10 + E*E  * E  * 5 10 E 2 E 5 E E + E *

90 derivation tree mult a, 2, 5 add b, 10, a machine code 10 E 2 E 5 E E + E *

91 Parsing

92 grammar Parser input string derivation

93 Example: Parser derivation input ?

94 Exhaustive Search Phase 1: All possible derivations of length 1 Find derivation of

95

96 Phase 2 Phase 1

97 Phase 2 Phase 3

98 Final result of exhaustive search Parser derivation input (top-down parsing)

99 Context Free Art

100 Context Free Art