Formeel Denken. December 21, 2006



Vergelijkbare documenten
Formeel Denken. Herfst 2004

Formeel Denken 2012 Uitwerkingen Tentamen

Formeel Denken. Herfst 2004

Hoofdstuk 0: algebraïsche formules

Formeel Denken. October 20, 2004

In dit hoofdstuk introduceren we de hoofdrolspelers van het college: eindige automaten.

Formeel Denken. Herfst Contents

Continuïteit en Nulpunten

Voorbereidende opgaven Kerstvakantiecursus

Routeplanning middels stochastische koeling

KATHOLIEKE UNIVERSITEIT LEUVEN SUBFACULTEIT ECONOMIE EN BEDRIJFSWETENSCHAPPEN HUB HANDELSWETENSCHAPPEN

Reguliere Expressies en Automaten: Overzicht

Formeel Denken. Inhoudsopgave

Bespreking Examen Analyse 1 (Juni 2007)

Inhoudsopgave. Inhoud

Voorbereidende opgaven Herkansingscursus. Rekenregels voor vereenvoudigen

Vorig college. IN2505-II Berekenbaarheidstheorie. Intermezzo / kleine opfriscursus. Deterministische eindige automaten (DFA) College 6

Ongelijkheden groep 2

3 Snijpunten. Verkennen. Uitleg

Kennismaken. Wie zitten er bij jou in de klas? 4. Welke afspraken maak jij met je klas? 8

Praktische opdracht Optimaliseren van verpakkingen Inleidende opgaven

Rekenregels van machten

Een feestmaal. Naam: -Ken jij nog een ander speciaal feest? Typ of schrijf het hier. a

Inleiding Natuurwetenschappen

DOEL: Weten wat de gevolgen en risico s kunnen zijn van het plaatsen van (persoonlijke) informatie op internet.

Werkblad TI-83: Over de hoofdstelling van de integraalrekening

1 Vlaamse Wiskunde Olympiade : Eerste Ronde.

Getallenverzamelingen

Het kwadraat van een tweeterm a+b. (a+b)²

is het koppel dat overeenkomt met het eindpunt van λ.op ax by = a a b x y = a b = x y a b ax by bx + ay = a b

Kwadratische reciprociteit

Examen VWO. wiskunde B (pilot) tijdvak 1 woensdag 16 mei uur

1 Vlaamse Wiskunde Olympiade : Tweede Ronde.

Automaten & Complexiteit (X )

Formeel Denken. 15 juli 2014

Parels van studenten tijdens een examen

fonts: achtergrond PostScript Fonts op computers?

6.0 INTRO. 1 a Bekijk de sommen hiernaast en ga na of ze kloppen = = = = = 2...

Grammatica s en Ontleden Deeltentamen 1 (van 2)

ANTWOORDEN EN UITWERKINGEN TENTAMEN QUANTUMMECHANICA 2 VAN 31 MEI 2011

Primitieve en integraal

HOOFDSTUK 1 BASISBEGRIPPEN

Algemeen. Restweefsel voor medischwetenschappelijk onderzoek

Boek 2, hoofdstuk 7, allerlei formules..

opgaven formele structuren procesalgebra

Eigenwaarden en eigenvectoren

Tentamen: Kansrekening en Statistiek P0099

Lineaire formules.

Bekijk onderstaand algoritme recalg. Bepaal recalg(5) en laat zien hoe u het antwoord hebt verkregen.

5.1 Rekenen met differentialen

Hoe plan je een grote taak?

Examen VWO. wiskunde B1,2 (nieuwe stijl)

Het bepalen van een evenwichtstoedeling met behulp van het 1 e principe van Wardrop is equivalent aan het oplossen van een minimaliserings-probleem.

Analyse. Lieve Houwaer Dany Vanbeveren

Voorbereidende opgaven Examencursus

Inhoud college 7 Basiswiskunde

WISKUNDE VOOR DE PROPEDEUSE ENIGINEERING MARITIEME TECHNIEK. A.F. Bloemsma M.A. Litjens C. Ultzen M.D. Poot

1.0 Voorkennis. Voorbeeld 1:

Gehele getallen: vermenigvuldiging en deling

Kansrekening en dynamica als basis voor breed wiskundeonderwijs 2

INHOUDSTABEL. 1. BEWERKINGEN MET RATIONALE GETALLEN (fiche 1) a. TEKENREGELS (fiche 2a)... 5

Studiekeuzecheck wiskunde deeltijd Basisvaardigheden Algebra Hoofdstuk 1 t/m 4

Hoofdstuk 11. Kwadraatresten Inleiding

Keuze van het lagertype

4. Wortels van decimale getallen mag je met het RT uitrekenen. Maar voor opgaven met gehele numerieke factoren wordt een exact resultaat

1.3 Wortels. x x 36 6 = x = 1.5 Breuken. teller teller noemer noemer. Delen: vermenigvuldig met het omgekeerde.

1 Vlaamse Wiskunde Olympiade : Eerste Ronde.

4. LOGARITMISCHE EN EXPONENTIËLE FUNCTIES

1.0 Voorkennis. Voorbeeld 1:

wordt in de natuurkunde vaak door een vector, d.w.z. een pijl van ( ( , voorgesteld. De correspondentie tussen vectoren en paren punten ( a

2. Gegeven is de driehoek van figuur 10.10a. Gevraagd worden hoek β en de zijden a en c.

4. LOGARITMISCHE EN EXPONENTIËLE FUNCTIES

Ontleden? Leuk! Inleiding. Opzet van deze lesbrief. Door Henk Jongsma, hoofdauteur Op Niveau tweede fase

Hertentamen. Elektriciteit en Magnetisme 1. Woensdag 14 juli :00-12:00. Schrijf op elk vel uw naam en studentnummer. Schrijf leesbaar.

Een CVA (beroerte) kan uw leven drastisch veranderen! 2009 Een uitgave van de Nederlandse CVA-vereniging

HANDLEIDING FOKWAARDEN Informatie & Inspiratie document Met uitleg over het hoe en waarom van de fokwaarden

Werkkaarten GIGO 1184 Elektriciteit Set

Grammatica s en Ontleden Deeltentamen 1 (van 2) Dinsdag 18 december 2007 (15:00-17:00)

Onafhankelijk van a. f snijdt de x-as in punt A ( , 0) Voor elke positieve waarde van a is een functie f. gegeven door F ( x) = x e ax.

2 Opgaven bij Hoofdstuk 2

Formeel Denken. 15 juli 2014

F G H I J. 5480

Begripsvragen: Beweging

Inproduct, projectie, terugblik

Deze les krijgen de leerlingen een introductie over ongelijke breuken. Dit met name gericht op het vergelijken met een bemiddelende grootheid.

Hoofdstuk 2: Bewerkingen in R

Vraag 2. a) Geef in een schema weer uit welke onderdelen CCS bestaat. b) Met welke term wordt onderstaande processchema aangeduid.

Logica als een oefening in Formeel Denken

Efficiënt zoeken in grote tekstbestanden

Proeftentamen LAI (tweede deel), voorjaar 2006 Uitwerkingen

1a Een hoeveelheid stof kan maar op één manier veranderen. Hoe?

Handig rekenen met eigenschappen G ( ) + (3 19) = 6 (6 + 14) + (5 + 55) = 80 ( ) + ( ) = 11

Vraag 1. Vraag 2. Vraag 3. Zij gegeven de volgende declaratie in Eiffel. Guido : STUDENT

naam blad : 37 = 299 : 23 = 882 : 63 = 364 : 26 = : 47 = : 43 = 47 kan keer van af kan keer van af 47 = =

Antwoorden Doeboek 21 Kijk op kegelsneden. Rob van der Waall en Liesbeth de Clerck

Correctievoorschrift VWO. Wiskunde B1 (nieuwe stijl)

Examen VWO wiskunde B. tijdvak 1 woensdag 16 mei uur. Bij dit examen hoort een uitwerkbijlage.

Hoe zichtbaar ben jij mobiel? MOBIELpakket. Oplossingen voor ondernemende kappers die kiezen

Begripsvragen: Elektriciteit

Bij wie hoor ik? Wijs op de picto van de familie. Laat je kind de familieleden aanwijzen.

Transcriptie:

Formeel Denken Hermn Geuvers Deels gebseerd op het herfst 2002 dictt vn Henk Brendregt en Bs Spitters, met dnk n het Discrete Wiskunde dictt vn Wim Gielen December 21, 2006 Contents 1 Propositielogic 1 1.1 Formele tl en ntuurlijke tl.......................... 1 1.2 Woordenboek.................................... 1 1.3 Verbindingswoorden................................ 1 1.4 Betekenis en wrheidstbellen.......................... 4 1.5 Modellen en wrheid............................... 5 1.6 Logisch Equivlent................................. 6 1.7 Logisch gevolg................................... 7 2 Predictenlogic 9 2.1 Predicten, relties en individuen......................... 9 2.2 De tl vn de predictenlogic.......................... 11 2.3 De tl vn de predictenlogic met gelijkheid.................. 14 2.4 Wrheid en gevolgtrekking............................ 16 2.5 Wrheid ls spel met twee spelers........................ 16 2.6 Wrheid en de correctheid vn een ontwerp................... 17 3 Tlen 21 3.1 Alfbet, woord, tl................................ 21 3.2 Reguliere Tlen................................... 23 3.3 Contextvrije Grmmtic s............................ 25 3.4 Rechts-lineire grmmtic s........................... 28 3.5 Algemene Grmmtic s [Geen exmenstof]................... 31 4 Combintoriek 33 5 Automten 47 5.1 Automten en Tlen................................ 49 5.2 Nondeterministische Automten......................... 54 5.3 Automten en processen.............................. 58 0

0

1. Propositielogic In dit blok behndelen we de propositielogic, ook wel uitsprkrekening genoemd. 1.1. Formele tl en ntuurlijke tl Ntuurlijke tlen (Nederlnds, Engels, Duits,...) zijn niet erg precies. Kijk bijvoorbeeld mr nr de volgende voorbeelden: Socrtes is een mens. Een mens is sterfelijk. Dus Socrtes is sterfelijk. Ik ben iemnd. Iemnd schilderde de Mon Lis. Dus ik ben de schilder vn de Mon Lis. De eerste redenering klopt, de tweede niet, mr heeft wel een soortgelijke vorm. Is de zin Deze zin is niet wr. nu wr of niet? Om dit soort problemen te voorkomen gebruiken we een formele tl. Dit is een soort lbortorium-model voor de ntuurlijke tl. We zullen zien dt we met een heel eenvoudige kunst-tl, toch heel veel uitsprken en redeneringen heel precies kunnen mken. Dit is bijvoorbeeld erg belngrijk voor het specificeren vn progrmm s, over de specifictie mg geen misverstnd bestn. We zullen nu lten zien hoe we vn het Nederlnds nr een formele tl gn. Om te redeneren combineren we vk een ntl eenvoudige uitsprken, bijvoorbeeld: ls het regent en ik ben buiten, dn word ik nt. Deze uitsprk is opgebouwd uit de eenvoudige uitsprken het regent, ik ben buiten en ik word nt. 1.2. Woordenboek We kunnen dit ook formeler opschrijven met behulp vn een woordenboekje. R Z RB N D Bui Bin het regent de zon schijnt er is een regenboog ik word nt ik blijf droog ik ben buiten ik ben binnen De zin hierboven wordt dn ls R en Bui, dn N. Net zo, kunnen we de volgende zinnen mken: ls RB, dn Z, Z en RB, ls R en Bin, dn D. 1.3. Verbindingswoorden We kunnen ook de verbindingswoorden formeel opschrijven. Dt doen we op de volgende mnier: 1

Formele tl Nederlnds f g f en g f g f of g f g ls f, dn g f g f dn en slechts dn ls g f niet f De zinnetjes hierboven worden dn RB Z, Z RB en (R Bin) D. Nederlnds semi-formeel Formeel ls het regent en ik ben buiten, dn word ik nt ls R en Bui, dn N (R Bui) N ls er een regenboog is, dn schijnt de zon ls RB, dn Z RB Z ik ben binnen of buiten Bin of Bui Bin Bui 1.1. Opgve. Vind zinnen uit de formele tl die hetzelfde betekenen ls de volgende zinnen. 1. Het regent niet, noch schijnt de zon. 2. De zon schijnt, tenzij het regent 3. Of de zon schijnt, of het regent. (We bedoelen dus niet llebei) 4. Er is lleen een regenboog ls de zon schijnt en het regent. 5. Als ik buiten ben, dn word ik nt, mits het regent. We denken bij de voegtekens (zols, ) ntuurlijk n de bekende Nederlndse verbindingswoorden, Ook of is zo n voegwoord, dt vn twee beweringen een nieuwe bewering mkt. De betekenis vn of is in ons tlgebruik echter een beetje onduidelijk: sommige mensen vinden de bewering 1 + 1 = 2 of 2 + 3 = 5 wr, en nderen onwr. Wt vind jij ervn? Als je erover ndenkt merk je, dt de betekenis vn het woordje of in ons tlgebruik dubbelzinnig is. Mr informticstudenten hten dubbelzinnige woordjes, dus wij zullen vn de twee gngbre betekenissen vn of er één kiezen: we spreken f dt A of B wr is in het gevl A en B beide wr zijn. Ons voegwoord of, fgekort tot, heeft dus de volgende wrheidstbel: A B A B 0 0 0 0 1 1 1 0 1 1 1 1 1.2. Opgve. Kun je ook uitdrukken met behulp vn de ndere symbolen? 1.3. Opgve. Vertl de volgende zinnen nr het Nederlnds: 1. R Z 2. RB (R Z) 3. Bui Bin 2

4. Bui Bin 1.4. Definitie. De tl vn de uitsprkrekening (of propositielogic) is de volgende formele tl. Het lfbet bestt uit een oneindige verzmeling vn Atomen, de verzmeling vn Voegtekens en de verzmeling A := {,b,c,d, 1, 2, 3,...} V := {,,,, } H := {(,)} vn Hkjes. Woorden uit deze tl worden ls volgt opgebouwd: 1. Een toom is een woord. 2. Als f en g woorden zijn, dn zijn (f g),(f g),(f g),(f g)en f woorden. 3. Alle woorden worden op deze mnier gevormd. De woorden vn deze tl noemen we proposities. 1.5. Conventie. Meestl lten we de buitenste hkjes weg, dus we schrijven bijvoorbeeld b in plts vn ( b). De binnenste hkjes mogelijk we ntuurlijk niet weg lten: vergelijk (R Z) RB en R (Z RB). We kunnen wel een nottie fspreken wrbij we sommige hkjes weglten en dt doen we ook door middel vn de volgende fsprk: bindt sterker dn bindt sterker dn bindt sterker dn bindt sterker dn Dit betekent dt we Bin RB Bui Z R moeten lezen ls ((Bin RB) Bui) ( Z R) 1.6. Opmerking. (Deze opmerking heeft ps betekenis n het blok Tlen ; bekijk hem dn eens goed.) De formele definitie m.b.v. een contextvrije grmmtic is ls volgt: Σ = A V H, ofwel Σ = {,b,c,....,,,,,,(,), }. ( geeft de vereniging vn twee verzmelingen n). hier mg ieder element vn A zijn. S (SvS) S v 3

1.4. Betekenis en wrheidstbellen De zin ls en b, dn is wr, wt je ook voor en b invult. We zouden nu ook willen zeggen dt de zin b wr is 1, mr we hebben nog niet gedefinieerd wt dt betekent: b is zomr een zin in een tl. We gn nu definiëren wt de betekenis vn een zin is, in het bijzonder, wnneer een zin in de tl vn de logic wr is. Voor de tomen kunnen we n eenvoudige uitsprken denken zols 2=3, Jolly Jumper is een prd of het regent. In de klssieke logic, wr we ons in dit college toe beperken, nemen we n dt lle tomen of wr zijn of niet wr zijn. We mken ons geen zorgen om het feit dt we soms niet weten of de zin wr of niet wr is, zols bij de zin, op 1 jnuri 2050 regent het in Nijmegen. De wrheid vn de tomen wordt bepld door hun interprettie in een model. Bijvoorbeeld 2=3 is niet wr in het model vn de ntuurlijke getllen. Jolly Jumper is een prd is wr in het model vn het stripboek Lucky Luke. De zin het regent ws niet wr in Nijmegen op 17 september 2002. Bekijk nu eens de zin b. We willen dt deze zin lleen wr is in een model ls zowel ls b wr zijn in dt model. Als we nu een lijstje mken met lle mogelijke wrden voor en voor b, dn kunnen we ook beplen wt de mogelijke wrden zijn voor b. In de informtic schrijven we vk 1 voor wr en 0 voor onwr. De logische operties zijn de elementire operties op bits. We krijgen dn de volgende tbel: x y x y 0 0 0 0 1 0 1 0 0 1 1 1 Als, dn is eveneens een methode om vn twee beweringen een nieuwe bewering te mken. Ook hier geeft ons gngbre tlgebruik geen duidelijk ntwoord op de vrg, wnneer ls A, dn B wr is. Lten we bijvoorbeeld eens kijken nr het gevl, dt A onwr is en ook B onwr is. Is ls A, dn B in dt gevl wr? Wt vind je ervn? Denk bijvoorbeeld eens n: ls 1 + 1 = 3, dn 2 + 2 = 6 ls ik vn het Ersmusgebouw spring, dn vernder ik in een vogeltje ls ik hier iets vn snp, dn heet ik Alpje We zullen n lle onduidelijkheid een einde mken door een wrheidstbel f te spreken (we schrijven A B in plts vn ls A, dn B ). Dit stt lleml in de volgende definitie. 1.7. Definitie. De wrheidstbellen voor de logische voegtekens zijn ls volgt x y x y x y x y x x 0 0 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 1 1 1 1 1 1 Let op: b moeten we dus lezen ls ( b) 4

x y x y 0 0 1 0 1 1 1 0 0 1 1 1 x y x y 0 0 1 0 1 0 1 0 0 1 1 1 Met behulp vn de wrheidstbellen kunnen we de wrde vn een complexe propositie uitrekenen ls we de wrde vn de tomen kennen. Zo kunnen we ook voor een complexe propositie een wrheidstbel mken die lle mogelijkheden weergeeft. 1.8. Voorbeeld. De wrheidstbel vn b. b b ( b) 0 0 0 0 1 0 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1.9. Opgve. Schrijf de wrheidstbellen op vn:, ( b), (b ), b, (b ), b. 1.5. Modellen en wrheid In de introductie sprken we over modellen en wrheid in een model. In de wrheidstbellen hebben we gezien dt de wrheid vn een propositie volledig bepld wordt door de wrden die we n de tomen toekennen. Een model in de propositielogic is dn ook eenvoudigweg een toekenning vn wrden ({0,1}) n de tomen. 1.10. Definitie. Een model in de propositielogic is een wrdetoekenning of vlutie vn de tomen: een functie v : A {0,1}. Om de wrde vn een propositie f te beplen hoeven we niet de wrden vn lle tomen te weten, mr lleen vn de tomen die in f voorkomen. We zullen drom een model vk gelijkstellen n een eindige wrdentoekenning. 1.11. Voorbeeld. In het model v met v() = 0 en v(b) = 1 heeft de propositie b de wrde 0. 1.12. Conventie. Als v een model is, dn schrijven we ook wel v(f) voor de wrde vn f. Als deze wrde 1 is zeggen we dt f wr is in het model v. Dus b is niet wr in v ls v() = 0 en v(b) = 1, mr (b ) is wel wr in zo n model. 1.13. Definitie. Als een propositie f wr is in ieder model (dt wil zeggen dt er in de wrheidstbel vn f lleen mr 1-en stn), dn noemen we de propositie logisch wr. Nottie f. Een logisch wre propositie heet ook wel een tutologie. 1.14. Opgve. Welke vn de volgende proposities zijn logisch wr?, ( ),, ( b), (b ), b, (b ), 5

1.15. Opgve. Lt f en g proposities zijn. G n of de volgende uitsprken kloppen: 1. Als f en g, dn f g. 2. Als niet f, dn f. 3. Als f of g, dn f g. 4. Als (ls f, dn g), dn f g. 5. Als f, dn niet f. 6. Als f g, dn f of g. 7. Als f g, dn (ls f, dn g). 8. Als f g, dn ( f dn en slechts dn ls g). 9. Als ( f dn en slechts dn ls g), dn f g. 1.6. Logisch Equivlent 1.16. Definitie. Twee proposities zijn logisch equivlent ls f wr is in een model, dn en slechts dn ls g wr is in dt model. Iets preciezer geformuleerd: f en g zijn logisch eqivlent ls voor ieder model v geldt dt v(f) = 1 dn en slechts dn ls v(g) = 1. Dt wil zeggen dt f en g dezelfde wrheidstbel hebben. Als f en g equivlente proposities zijn schrijven we ook wel f g. Vk kunnen we een propositie vervngen door een eenvoudigere equivlente propositie. Bijvoorbeeld is equivlent met. 1.17. Opgve. Lt zien dt de twee proposities ( b) c en (b c) logisch equivlent zijn. Lt zien dt de twee proposities ( b) c en (b c) logische equivlent zijn. In dit gevl doen de hkjes er dus eigenlijk niet toe. Soms lten we in zo n gevl de hkjes ook wel weg. Let op: de proposities: b en b zijn logisch equivlent. In het Nederlnds is dit niet ltijd eenduidig, met de zin ze trouwde en kreeg een kind bedoelen we wrschijnlijk wt nders dn met de zin ze kreeg een kind en trouwde. De eerste twee vn de volgende equivlenties heten de wetten vn De Morgn. 1. (f g) f g. 2. (f g) f g. 3. f (g h) f g f h. 2 4. f g h (f g) (f h). 1.18. Opgve. Lt f en g proposities zijn. Is de volgende uitsprk wr? f g dn en slechts dn ls = f g. wr is. 2 NB: Volgens de hkjesconventie is dit (f g) (f h). 6

1.7. Logisch gevolg In het Nederlnds volgt uit het regent en de zon schijnt dt de zon schijnt. Net zo willen we dt uit b volgt dt. Dt mken we nu precies. 1.19. Definitie. Een propositie g is een logisch gevolg vn de propositie f ls g wr is in ieder model wr f wr is. Anders gezegd: ls er op lle pltsen wr in de wrheidstbel vn f een 1 stt er in de wrheidstbel vn g ook een 1 stt. Nottie f = g. 1.20. Opgve. Zijn de volgende uitsprken wr? b, b, b, b. 1.21. Stelling. Lt f en g proposities zijn. f g, dn en slechts dn ls f g. Voor meer informtie over logic kun je bijvoorbeeld het boek [vbe] bekijken. 7

8

2. Predictenlogic Een vrouw is gelukkig ls zij vn iemnd houdt en een mn is gelukkig ls iemnd vn hem houdt. We gn het niet hebben over de juistheid vn deze zin, mr over hoe we deze formeel kunnen opschrijven. Dt zl ls voordeel hebben dt we beter kunnen nlyseren of dit soort zinnen inderdd wr zijn. We springen meteen in het diepe en geven de formlisering vn bovenstnde zin. Woordenboek V M H(x,y) G(x) Vertling verzmeling vn (lle) vrouwen verzmeling vn (lle) mnnen x houdt vn y x is gelukkig v V [( x (M V ) H(v,x)) G(v)] m M [( x (M V ) H(x,m)) G(m)]. (1) De stt hier voor voor lle en de stt voor er is een. Als we deze formule (bijn) letterlijk terugvertlen nr ntuurlijke tl stt er Voor iedere vrouw geldt dt ls er een persoon is vn wie zij houdt dn is zij gelukkig en voor iedere mn geldt dt ls er een persoon is die vn hem houdt dn is hij gelukkig. G zelf n dt dit hetzelfde zegt ls de zin wr we mee begonnen en g ook n dt je dit uit de formule kunt flezen. Je ziet dt we ook ndere hkjes [ ] gebruiken. Dt is lleen voor de leesbrheid, zodt je beter kunt zien welk begin-hkje bij welk eind-hkje hoort. Omdt een woordenboek de mogelijkheid geeft om een uitsprk te vertlen, noemen we het ook wel een interprettie. 2.1. Predicten, relties en individuen Toen we nog propositielogic deden konden we de zin ls volgt formliseren. Woordenboek SG KG Vertling Shron is gelukkig Koos is gelukkig Als Shron gelukkig is, dn is Koos niet gelukkig SG KG Mr ls er nu ook nog Joris en Mud zijn, dn krijgen we wel een lng woordenboek met de extr proposities JG en MG. We zetten drom een vergrootgls op de uitsprk 9

Shron is gelukkig en nlyseren deze ls bestnde uit het predict G( ) toegepst op het subject s (Shron) en dt schrijven we ls G(s). Het voordeel is dt we dn meteen kunnen schrijven G(k), G(j), en G(m). Ook voor de subjectnmen gebruiken we het woordenboek om n te geven welk subject er bij welke nm hoort. Bovendien geven we hier n tot welk domein het subject behoort. s Shron vrouwen k Koos mnnen j Joris mnnen m Mud vrouwen Het voordeel is nu nog niet duidelijk. In plts vn vier proposities SG,KG, JG,MG hebben we nu één predict G en vier subjecten s,k,j,m dt is dus in totl vijf symbolen. Mr onze vier spelers kunnen nog meer eigenschppen hebben L(x) K(x) A(x) I(x) x is lng x is knp x is rdig x is intelligent Bovendien zijn er nst de predicten (eigenschppen) ook nog (binire) relties. Bijvoorbeeld: H(x,y) : x houdt vn y. We kunnen nu formliseren Shron is een intelligente knppe vrouw; er is een rdige lnge mn die vn zo n vrouw houdt I(s) K(s) x M(A(x) L(x) y V [H(x,y) K(y) I(y)]). Of bedoelen we I(s) K(s) x M [L(x) A(x) H(x,s)]? Merk op dt we de twee beweringen in de twee zinnen tot één formule mken door er een tussen te zetten. Dt Shron een vrouw is ligt besloten in het woordenboek, dus die informtie hoeven we niet meer toe te voegen (d.m.v. s V o.i.d.). Of we de eerste of de tweede formlistie verkiezen hngt ervn f hoe we de verwijzing zo n vrouw vertlen. (Het kn sln op Shron, mr ook op intelligente knppe 10

vrouw.) Hier gt de logic zelf niet over, mr de logic mkt wel expliciet dt er hier een keuze gemkt moet worden; de mbiguïteit in de ntuurlijke tl wordt expliciet gemkt. 2.1. Opgve. Geef twee mogelijke vertlingen voor de volgende zinnen. Shron houdt vn Mud; een rdige mn houdt vn zo n knppe vrouw. We gn nu de ndere knt op, een formele uitsprk ontcijferen. 2.2. Opgve. Vertl de onderstnde formules nr een zin in het Nederlnds. (i) x M[L(x) v V [K(v) I(v) H(x,v)]] (ii) x M [L(x) v V [K(v) I(v) H(x,v)] w V [I(w) H(w,x)]] 2.2. De tl vn de predictenlogic We definiëren precies wt de tl vn de predictenlogic is. 2.3. Definitie. De tl vn de predicten logic bevt de volgende ingrediënten. 1. Vribelen, meestl x,y,z,x 0,x 1,..., en soms ook v,w,... 2. Individu constnten, of ook wel nmen, meestl, b, c,..., 3. Domeinen, zols M,V,E,..., 4. Reltiesymbolen, met een vste riteit, die we er vk expliciet bij schrijven, zols P 1, R 2, T 3,... Dit betekent dt P 1 één rgument heeft, R 2 twee rgumenten enz. 5. De tomen (of tomire formules ) zijn P 1 (t), R 2 (t 1,t 2 ), T 3 (t 1,t 2,t 3 ) enz., wrbij t, t 1, t 2 en t 3 vribelen of individu constnten zijn. 6. De formules worden ls volgt gevormd. de tomire formules ls f en g formules zijn dn zijn (f g),(f g),(f g),(f g)en f formules. ls f een formule is, x een vribele en D een domein, dn zijn ( x D f) en ( x D f) ook formules. 2.4. Conventie. Net ls bij de propositielogic lten we meestl de buitenste hkjes weg. Om ook wt op de binnenste hkjes te bezuinigen breiden we de hkjesconventie vn de propositie logic (1.5) uit: en binden sterker dn lle ndere voegtekens Dit betekent dus dt we onze eerste formule uit de predictenlogic (1) dus kunnen schrijven ls v V [ x (M V ) H(v,x) G(v)] m M [ x (M V ) H(x,m) G(m)]. 11

2.5. Opmerking. Grmmtic vn de predictenlogic. Net ls bij de propositie kunnen we de tl vn de predictenlogic definiëren ls een formele tl. Dt gt ls volgt. Bekijk deze opmerking nog eens n het stuk over Tlen. Individu := vribele nm Vribele := x,y,z,x 1,y 1,z 1,... Nm :=,b,c,d,e,... Domein := D,E,... Atoom := P 1 (Individu) R 2 (Individu,Individu) T 3 (Individu,Individu,Individu)... Formule := Atoom Formule (Formule Formule) (Formule Formule) (Formule Formule) (Formule Formule) ( vribele Domein Formule) ( vribele Domein Formule) Bekijk de volgende twee formules F 1 F 2 = x D y D K(x,y) = x D y D K(x,y) (Let op hoe we op hkjes bezuinigen.) Wnneer is een formule wr? Wrheid is reltief en hngt f vn een interprettie en een model. We geven hier 3 voorbeelden wrin we de wrheid vn F 1 resp. F 2 kunnen ngn. 1. Model 1 D K(x,y) 2. Model 2 D K(x,y) 3. Model 3 D K(x,y) lle studenten in het lokl x heeft een lger studentnummer dn y lle studenten in het lokl x is niet ouder dn y lle studenten in het lokl x zit nst y We kunnen de wrheid vn F 1, resp. F 2, in deze modellen vst stellen door te kijken of de eigenschp geldt, die door de formule tot uitdrukking wordt gebrcht. 2.6. Opgve. 1. G n dt in het eerste model F 2 niet geldt. Geldt F 1? 2. G n dt in het tweede model F 1 geldt. Geldt F 2 ook? 3. Kijk om je heen en g n of F 1 in het derde model geldt. G ook n of F 2 geldt. 2.7. Definitie. Een interprettie wordt gegeven door het woordenboek, wrin stt 1. Welke verzmelingen er horen bij de domeinen, 12

2. Welke subjecten er horen bij de nmen (en in welke domeinverzmelingen deze zitten), 3. Welke predicten en relties er horen bij de predict- en reltiesymbolen. Een model is het stukje vn de echte wereld wrin de formules een betekenis krijgen vi de interprettie. 2.8. Voorbeeld. In het gevl vn Shron, Koos, Joris en Mud is de interprettie l gegeven in het woordenboek: we weten nu wt we met H(s,k) bedoelen en wt met m M H(m,s). Het model is de feitelijke situtie omtrent deze mensen, wr we kunnen ngn of H(s,k) wr is (i.e. of Shron vn Koos houdt) en of m M H(m,s) wr is (i.e. of er een mn is die vn Shron houdt). We bekijken de formules G 1 en G 2 en we bekijken twee modellen wrin we ze kunnen interpreteren. (Merk het verschil op met F 1 en F 2 boven.) G 1 G 2 = x D y D K(x,y) = x D y D K(y,x) 2.9. Voorbeeld. Interprettie 1. D verzmeling vn ntuurlijke getllen N = {0, 1, 2, 3,...}; K(x,y) x is kleiner dn y (ook: x < y). Interprettie 2. D verzmeling vn rtionle getllen Q (positieve en negtieve breuken, bijvoorbeeld 1 2,3(= 3 1 ),0,...); K(x,y) x is kleiner dn y (ook: x < y). Onder de interprettie 1 is de formule G 1 wr. Immers, voor ieder getl x N is er een getl y N (bijvoorbeeld x + 1) zodt x < y. Onder de interprettie 2 is de formule G 1 wr. Immers, voor ieder getl x Q is er een getl y Q (bijvoorbeeld x + 1) zodt x < y. 2.10. Conventie. Als een formule f wr is in een model M onder interprettie I, schrijven we (M,I) = f Dus we hebben in het voorbeeld de volgende zken ingezien: (N,<,interprettie 1 ) = G 1 (Q,<,interprettie 2 ) = G 1 2.11. Opgve. G n dt G 2 wr is in interprettie 2, mr niet in interprettie 1. Ofwel: (Q,<,interprettie 2 ) = G 2, en (N,<,interprettie 1 ) = G 2 2.12. Opgve. Definieer interprettie 3 ls volgt. D N; K(x,y) x = 2y. Welke vn de formules G 1,G 2 zijn wr? 13

2.13. Opgve. Definieer interprettie 4 ls volgt. D Q; K(x,y) x = 2y. Welke vn de formules G 1,G 2 zijn wr? 2.14. Opgve. We bekijken ls model de lnden vn Europ met de volgende interprettie. Interprettie L n d i G(x,y) D(x, y, z) verzmeling vn lnden vn Europ Nederlnd Duitslnd Ierlnd x grenst n y x, y en z hebben een drielndenpunt met elkr 1. Formliseer de zin Nederlnd en Duitslnd delen een drielndenpunt 2. Welke vn de volgende formules is wr in dit model: G 3 := x L y L[G(x,y)], G 4 := x,y L[( z L D(x,y,z)) G(x,y)], G 5 := x L[G(i,x) y L[D(i,x,y)]]. 2.15. Opgve. Bedenk zelf een model M en een interprettie I zodt (M,I) = x D y E[R(x,y) R(y,x) R(y,y)] 2.16. Opgve. Formliseer de volgende zin. Shron is knp; er is een mn die lekker in zijn vel zit vn wie zij houdt Hierbij wordt gedefinieerd dt iemnd lekker in zijn vel zit ls hij of zij vn zich zelf houdt. 2.17. Opgve. Formliseer de volgende zinnen. Voor iedere x en y geldt: x houdt vn y lleen ls x lekker in zijn vel zit. Voor iedere x en y geldt: x houdt vn lle mensen y die lekker in hun vel zitten. Voor iedere x en y geldt: x houdt precies dn vn y ls y lekker in zijn of hr vel zit. Er is iemnd die vn lle mensen houdt. 2.3. De tl vn de predictenlogic met gelijkheid Soms wordt een formlisering vn het volgende gevrgd. Shron is knp; er is een mn die lleen n hr ndcht geeft 14

Om dit te formliseren hebben we een gelijkheidsreltie nodig. De formlisering wordt dn ls volgt. K(s) x M (A(x,s) y V (A(x,y) y = s)) Om dit ls een formule vn de predictenlogic te kunnen zien moeten we de tl vn de predictenlogic uitbreiden. 2.18. Definitie. predictenlogic met gelijkheid wordt gedefinieerd door n de predictenlogic stndrd een binir predict = toe te voegen. De interprettie vn dit predict in een model is ltijd gelijk n. 2.19. Opgve. Formliseer de volgende zinnen in de predictenlogic met gelijkheid. 2.20. Opgve. Gegeven de interprettie M domein vn de mensen; V (x) x is vrouw; O(x,y) x is ouder vn y. Formliseer de volgende eigenschppen. Iedereen heeft precies één moeder. Iedereen heeft precies twee om s. Iedere getrouwde mn heeft precies één echtgenote. S(x,y): x en y hebben smen een kind gemkt. B(x,y): x is broer vn y (ps op: zie ook volgende item). H(x,y): x is hlfzus vn y. Vertl terug nr de omgngstl. x M y M O(x,y). Geldt dit? z 1 M z 2 M[( x M y 1 M y 2 M O(x,y 1 ) O(y 1,z 1 ) O(x,y 2 ) O(y 2,z 2 )) ( w M(O(z 1,w) O(z 2,w))).] Geldt dit? 2.21. Opgve. Gegeven de interprettie N domein vn de ntuurlijke getllen; P(x,y,z) x + y = z; M(x,y,z) x.y = z. Formliseer x < y. x y (x is deler vn y). x is priemgetl. 15

2.4. Wrheid en gevolgtrekking Lt A een formule vn de predictenlogic (met of zonder gelijkheid) zijn. A heet wr in een model M onder een interprettie (woordenboek) I ls n vertling de formule klopt, nottie: (M,I) = A. 2.22. Definitie. A heet wr zonder meer, nottie = A, ls voor ieder model en interprettie de vertling klopt. 2.23. Voorbeeld. (i) = x D (P(x) P(x)). (ii) = [ x D y D P(x,y)] [ y D x D P(x,y)]. (iii) = [ y D x D P(x,y)] [ x D y D P(x,y)]. Dt formule in (iii) niet wr is zien we door de volgende interprettie te nemen. D := N en P(x, y) := x>y. Onder deze interprettie geldt y D x D P(x, y) (voor ieder getl y N is er een groter getl x N), mr niet x D y D P(x, y) (wnt dn zou er in N een grootste getl moeten bestn en dt is niet zo). 2.24. Definitie. Lten A en B formules uit de predictenlogic zijn. Dn zeggen we dt B uit A volgt, nottie A = B, ls = A B. Dt houdt in dt in iedere situtie wrin A geldt, ook B geldt. Uit (ii) in het vorige voorbeeld volgt dt y D x D P(x,y) uit x D y D P(x, y) volgt. 2.5. Wrheid ls spel met twee spelers Gegeven een formule met de kwntoren (, ) voorop. Als voorbeeld nemen we de formule x,y D z D [K(x,y) (K(x,z) K(z,y))] (+) en de interprettie D := Q, K(x,y) := (x<y). Eén speler speelt voor de dvoct en de ndere speler speelt voor de nklger. De nklger mg bij ieder (rijtje vn) kwntor(en) een element vn het domein keizen; de dvoct bij iedere. Dit gebeurt in de volgorde wrin ze voorkomen (vn links nr rechts). Op het ltst houd je een formule over zonder kwntoren en met de vribelen vervngen door nmen. 2.25. Voorbeeld. De nklger kiest x := 3 en y := 4. Omdt de dvoct nu z := 3 1 2 kn kiezen en het klopt dt 3 < 4 (3 < 3 1 2 31 2 < 4) wint de dvoct en wordt drmee de formule wr onder de interprettie. Onder de interprettie D := N, K(x, y) := (x<y). is de formule (+) niet wr. We zien dt de nklger wint ls hij deze keer weer x := 3 en y := 4 kiest. Wnt wt de dvoct ook zl kiezen voor z, dt getl zl niet tussen 3 en 4 kunnen liggen. Wt gebeurt er ls de nklger x := 4 en y := 3 kiest? Dn heeft de dvoct een mkkie: 4<3 is onwr en dr volgt lles uit, zodt hij voor z bijvoorbeeld 200 kn kiezen: 4<3 (4<200 200<3). Dus een slimme nklger kiest x en y zo dt x<y gt kloppen; lleen dn wordt de dvoct in het nuw gedreven. 16

2.26. Stelling. Lt de formule A = x,y D x 1,y 1 D...B(x,y,x 1,y 1,...). gegeven zijn. Dn is A wr (in een beplde interprettie of lgemeen) ls bij iedere keuze vn de nklger (voor de vribelen) de dvoct zodnig kn kiezen (voor de vribelen) dt de uiteindelijke formule B zonder kwntoren klopt. Als de nklger slim kn kiezen zodt P uiteindelijk niet klopt dn is A onwr (in de gegeven interprettie of lgemeen). 2.27. Opgve. G n of de volgende uitsprken wr zijn of niet. [Hint. Gebruik de speltheoretische methode.] (i) x M y MO(x,y). (ii) x D y D (x = y). (iii) x,y D z D w D[x y z w]. 2.6. Wrheid en de correctheid vn een ontwerp Als we een product ontwerpen doen we dit vk door het smen te stellen uit kleinere componenten wrvn we de werking l kennen. Dit zien we bijvoorbeeld bij een stereo instlltie, die wordt smengesteld uit een versterker, een CD speler, een tuner, boxen en kbels. Deze componenten zelf zijn ook weer smengesteld uit kleinere componenten: trnsistoren, bedrding, het ndrijfmotortje vn de CD speler etc. Als we een ontwerp mken willen we grg het volgende weten Is het ontwerp op hoog niveu correct? Ofwel: is het wr dt het pprt het doet, onder nnme vn de goede werking vn de componenten? Wt doet het pprt dn precies? Ofwel: wt bedoelen we eigenlijk met het correct zijn vn het ontwerp? Wt worden de componenten verondersteld precies te doen? We illustreren dit n de hnd vn de stereo instlltie, wrbij we logic (propositielogic en predictenlogic) gebruiken. De lgemene werkwijze is ls volgt. Bij een ontwerp hoort een formule Een ontwerp is correct ls de bijbehorende formuled wr (bewijsbr) is. Wt is de formule die we willen bewijzen? Uiteindelijk willen we bewijzen CD in speler Strt Muziek uit box wnt dit is de formule wr het ontwerp n moet voldoen. Dit noemen we ook wel de specifictie vn het product dt we willen mken. Deze formule kunnen we uiterrd lleen bewijzen ls we llerlei nnmes doen over de componenten, de versterker, de CD-speler, de boxen en de kbels. De nnmes over de componenten formuleren we ook ls specificties, mr nu zijn dt de specificties wr de componenten n moeten voldoen. We houden het in eerste instntie simpel en kijken strks verder wt we misschien nog nodig hebben. CD speler CD in speler Strt Signl uit speler kbel-1 Signl uit speler Signl in versterker Versterker Signl in versterker Signl uit versterker kbel-2 Signl uit versterker Signl in box Box Signl in box Muziek uit box 17

Om de correctheid vn het ontwerp te bewijzen moeten we nu de volgende formule ntonen. F :=CD speler kbel-1 Versterker kbel-2 Box (CD in speler Strt Muziek uit box) We zien dt een correctheidsformule er in het lgemeen zo uit ziet: ( 1 c 1 )... ( n c n ) (A C) wrbij A C de hoog niveu specifictie is vn het product en de i c i de specificties vn de componenten zijn. Feitelijk is dit een versimpelde situtie, zols we strks zullen zien. In het lgemeen hebben we predictenlogic nodig om een echte specifictie op te schrijven. Wt we nu willen is het volgende 1. Ngn of de formule F wr (bewijsbr) is. 2. Ngn of de componenten wel echt n de specificties voldoen. 3. Ngn of de specifictie eigenlijk wel genoeg zegt. (1) De formule F is wr. Dit is eenvoudig n te gn met een wrheidstbel, mr ook gewoon door middel vn een bewijs (redenering): vn de verschillende componenten wordt de nnme ( i ) steeds wrgemkt door de conclusie (c j ) vn een eerdere component of door de nnme in de globle specifictie (A). Wrheid vn F impliceert dt, ls het pprt niet werkt, dt lleen kn komen doordt één vn de componenten niet n zijn specifictie voldoet. (2) Voldoen de componenten n de gegeven specificties? Als ze niet voldoen kunnen er twee dingen n de hnd zijn: (i) de component is stuk en moet vervngen worden (ii) we hebben iets geëist dt te sterk is. Omdt we de specifictie zo expliciet gemkt hebben kunnen we kijken of de eisen die we n de componenten stellen wel kloppen. Bij de kbels is duidelijk dt, ls ze niet n de specifictie voldoen, we de kbel moeten vervngen. Mr bij de versterker hebben we onze eisen wel erg hoog gesteld: dit is niet wt een versterker doet, wnt om een signl nr de boxen te krijgen moet je ook nog de volume-knop hoog genoeg zetten en je moet het pprt ook n zetten. Dt ltste geldt overigens ook voor de CD speler. Dus we krijgen een verfijning vn de specificties die noodzkelijkerwijs ook leidt tot een verfijning vn de specifictie vn het hele ontwerp (wnt nders is hij niet meer bewijsbr). CD speler Speler n CD in speler Strt Signl uit speler kbel-1 Signl uit speler Signl in versterker Versterker Versterker n Signl in versterker Volume hoog Signl uit versterker kbel-2 Signl uit versterker Signl in box Box Signl in box Muziek uit box F := Versterker n Volume hoog Speler n CD in speler Strt Muziek uit box 18

(3) Zegt deze specifictie wel genoeg? Hij zegt niet dt de muziek die uit de box komt ook ddwerkelijk vn de CD is! Er zijn vele producten mogelijk die n deze specifictie voldoen, mr wr we toch niet tevreden mee zijn (bijvoorbeeld een versterker die continu één lied herhlt, zonder cht te sln op het signl uit de CD speler). Om de specifictie nog preciezer te mken hebben we predictenlogic nodig. CD speler x CD(Speler n x in speler Strt Signl(x) uit speler) kbel-1 x CD(Signl(x) uit speler Signl(x) in versterker) Versterker x CD(Versterker n Signl(x) in versterker Volume hoog Versterker op CD Signl(x) uit versterker) kbel-2 x CD(Signl(x) uit versterker Signl(x) in box) Box x CD(Signl(x) in box Muziek(x) uit box) De hoog-niveu specifictie wordt nu ls volgt: F := x CD(Versterker n Volume hoog Speler n x in speler Strt Muziek(x) uit box) 2.28. Opgve. 1. G n of de correctheidsformule die bij F hoort wr is. 2. G n of de correctheidsformule die bij F hoort wr is. 19

20

3. Tlen Het genereren en beschrijven vn tlen is een belngrijke toepssing vn computers. Een computer kn lleen goed overweg met tlen die een precieze formele definitie hebben, zols bijvoorbeeld een progrmmeertl. Mr ook kn men proberen een ntuurlijke tl n de computer te leren door de regels vn de ntuurlijke tl precies (formeel) te definiëren. Voor nu houden we ons lleen bezig met formeel gedefinieerde tlen. Een tl vtten we op ls een verzmeling woorden. Een woord is een string symbolen uit een vn tevoren vstgelegd lfbet. Met deze definities kunnen we l een heel ntl interessnte vrgen over tlen precies mken en bentwoorden, zols Zit het woord w in de tl L? Zijn de tlen L en L gelijk? Allerlei informtic-problemen die op het eerste gezicht misschien niets met tlen te mken hebben kunnen ls een tlprobleem beschouwd worden. Met behulp vn (formele) tlen kunnen puzzels en belngrijkere zken opgelost worden. 3.1. Alfbet, woord, tl 3.1. Definitie. (i) Een lfbet is een verzmeling Σ vn symbolen. (ii) Een woord over Σ is een eindig rijtje symbolen uit dit lfbet. (iii) λ is het woord dt bestt uit 0 symbolen, ook wel genmd het lege woord. (iv) Σ is de verzmeling vn lle woorden over Σ. (v) Een tl L over Σ is een deelverzmeling vn Σ. 3.2. Voorbeeld. (i) Σ = {, b} is een lfbet. (ii) bb zit in Σ (nottie: bb Σ ). (iii) brcdbr / Σ. (iv) brcdbr Σ 0, met Σ 0 = {,b,c,d,r}. (v) λ het lege woord zit in Σ voor iedere Σ. We kunnen tlen op llerlei mnieren beschrijven. Twee mnieren die we in dit college zullen tegenkomen zijn reguliere expressies en grmmtic s. Mr we kunnen tlen ook gewoon ls verzmelingen beschrijven. We introduceren even wt hndige nottie. 3.3. Nottie. We schrijven n voor... met n keer een. Preciezer gezegd: 0 = λ en n+1 = n. De lengte vn een woord w geven we weer ls w. Als w een woord is, dn is w R het omgekeerde ( reverse ) woord, dus bijvoorbeeld (bbb) R = bbb. 3.4. Voorbeeld. 1. L 1 := {w {,b} w bevt een even ntl s}. 2. L 2 := { n b n n N}. 3. L 3 := {wcv {,b,c} w bevt geen b, v bevt geen en w = v }. 21

4. L 4 := {w {,b} w = w R }. Bedenk bij ieder tweetl tlen uit dit voorbeeld een woord w dt wel in de ene, mr niet in de ndere tl zit. Als we twee tlen L 1 en L 2 hebben kunnen we met de bekende verzmelingsoperties nieuwe tlen definiëren. We brengen wt nottie in herinnering. 3.5. Nottie. Lt L en L tlen over het lfbet Σ zijn. 1. L is het complement vn L: de tl bestnde uit de woorden w die niet in L zitten. (Dus de w Σ wrvoor geldt w / L.) 2. L L is de doorsnijding vn L en L : de tl bestnde uit de woorden w die zowel in L ls in L zitten. 3. L L is de vereniging vn L en L : de tl bestnde uit de woorden w die in L of in L zitten. 3.6. Opgve. 1. Beschrijf L 1 L 2. 2. Beschrijf L 2 L 4. 3. Beschrijf L 3 L 4. Er zijn ook operties die specifiek voor tlen zijn. Die definiëren we nu. 3.7. Nottie. Lt L en L tlen over het lfbet Σ zijn. 1. LL is de conctentie vn L en L : de tl bestnde uit de woorden vn de vorm wv met w L en v L, 2. L R is de tl vn omgekeerde woorden vn L en bestt uit de woorden w R met w L, 3. L is de tl bestnde uit eindige conctenties vn woorden uit L en bestt uit de woorden vn de vorm w 1 w 2... w k met k 0 en w 1,w 2,...,w k L. De tl L heet ook wel de Kleene fsluiting vn L. De tl L bestt uit conctenties vn 0 of meer woorden uit L, dus het is ltijd zo dt λ L. Verder is het zo dt L L voor iedere tl L. G voor jezelf n wt L is ls L = of ls L = {λ}. 3.8. Opgve. (Zie de definities vn L 1 en L 2 in voorbeeld 3.4.) 1. Bewijs dt L 1 = L 1 2. Geldt L 2 L 2 = L 2? Geef een bewijs of een tegenvoorbeeld. 3. Geldt L 1 = L 1? Geef een bewijs of een tegenvoorbeeld. 4. Voor welke tlen uit 3.4 geldt L = L R? (Alleen ntwoord, geen bewijs.) 22

3.2. Reguliere Tlen Een populire mnier om tlen te beschrijven is door middel vn reguliere expressies. Een tl die door een reguliere expressie beschreven kn worden noemen we een reguliere tl. In de informtic worden reguliere tlen gezien ls (reltief) eenvoudig: ls l een reguliere tl is, dn is het niet moeilijk om een progrmmtje te schrijven dt beplt of een gegeven woord w in L zit. Zo n progrmm heet een prser en het oplossen vn de vrg w L heet ook wel prseren. Prsers voor reguliere tlen zijn dus eenvoudig te mken: er zijn zelfs (vele) progrmm s die prsers voor je genereren (ls je er een reguliere expressie in stopt)! De door dit soort prser genertors gegenereerde prsers zijn zelfs bijzonder efficiënt: ze beslissen heel snel of w l dn niet in L zit. We gn het in dit college verder niet hebben over prseren, mr het zl duidelijk zijn dt reguliere tlen een belngrijke klsse vn tlen vormen. Dus die gn we nder bekijken. 3.9. Definitie. Lt Σ een lfbet zijn. De reguliere expressies over Σ zijn ls volgt gedefinieerd. 1. is een reguliere expressie, 2. λ is een reguliere expressie, 3. x is een reguliere expressie voor iedere x Σ, 4. ls r 1 en r 2 reguliere expressies zijn, dn zijn (r 1 r 2 ) en (r 1 r 2 ) ook reguliere expressies, 5. ls r een reguliere expressie is, dn is r ook een reguliere expressie. Dus bijvoorbeeld b, b ( λ), ( b), ( )b en (b b ) zijn reguliere expressies. Een reguliere expressie beschrijft een tl op de volgende mnier. 3.10. Definitie. Bij iedere reguliere expressie r definiëren we de tl vn r, L(r) ls volgt. 1. L( ) :=, 2. L(λ) := {λ}, 3. L(x) := {x} voor iedere x Σ, 4. L(r 1 r 2 ) := L(r 1 ) L(r 2 ), 5. L(r 1 r 2 ) := L(r 1 )L(r 2 ), 6. L(r ) := L(r). Als we ngn wt dt betekent voor de reguliere expressies die we boven ls voorbeeld gven, dn zien we: L(b) = {b}, L(b ( λ)) = {}{b} {,λ} en bestt uit de woorden die beginnen met een, dn een willekeurig ntl b s en dn niets of weer een, L(( b) ) = {,b}, dus dt zijn lle woorden over het lfbet {,b}, 23

L(( )b ) = {}{b}, en dt is dus dezelfde tl ls vn b, L((b b ) ) = ({}{b} {b} {}). Deze tl lijkt wt moeilijker in woorden te beschrijven. In reguliere expressies wordt soms ook de opertor + gebruikt: de reguliere expressie + stt dn voor 1 of meer keer een. We hebben de + echter niet nodig, wnt in plts vn r + kunnen we gewoon rr schrijven, wnt dt betekent precies hetzelfde (eerst een r en dn nog 0 of meer keer een r). 3.11. Opgve. 1. Lt zien dt we de opertor?, wrbij? stt voor 0 of 1 keer niet hoeven toe te voegen n de reguliere expressies, omdt we hem l kunnen mken. 2. Wt is L( b )? 3. Geef een reguliere expressie die de tl L 5 := {w {,b} w bevt minstens één } beschrijft. 4. Geef een reguliere expressie die de tl L 1 uit Voorbeeld 3.4 beschrijft. 5. Lt zien dt L(b(b) ) = L((b) b). We zien dt de reguliere expressie niet zo nuttig is: in plts vn r kunnen we net zo goed r schrijven en r beschrijft. De reguliere expressie wordt lleen gebruik om de lege tl te kunnen beschrijven en we zullen hem verder niet tegenkomen. 3.12. Definitie. Lt Σ een lfbet zijn. We noemen een tl L over Σ regulier ls er een reguliere expressie is die hem beschrijft. (Ofwel: ls er een reguliere expressie r is zodt L(r) = L.) De tl L 1 uit Voorbeeld 3.4 is regulier, zols we in Opgve 3.11 gezien hebben. De tlen L 2, L 3 en L 4 uit Voorbeeld 3.4 zijn niet regulier. Het bewijs vn de niet-regulriteit vn deze tlen voert te ver voor dit college. 3.13. Opgve. Lt zien dt de volgende tlen regulier zijn. 1. L 6 := {w {,b} iedere in w wordt direct gevolgd door een b}, 2. L 7 := de tl vn lle goedgevormde integer-expressies. Deze bestn uit de symbolen 0,1,2,3,4,5,6,7,8,9, mr ze beginnen nooit met een 0 en mogen eventueel worden voorfgegn door een + of een. 3. L 8 := de tl vn lle goedgevormde rekenkundige expressies zonder hkjes. Deze bestn uit ntuurlijke getllen met drtussen de opertoren +, of, bijvoorbeeld 7+3 29 78. (Hint: mk eerst een reg. expr. voor de ntuurlijke getllen; zo n getl begint nooit met een 0.) Als een tl L regulier is dn is de tl L R ook regulier, wnt ls L wordt beschreven door de reguliere expressie e (L = L(e)) wordt L R beschreven door de reguliere expressie e R (L R = L(e R )). Er zijn nog meer mooie eigenschppen vn de klsse vn reguliere tlen: Als L 1 en L 2 regulier zijn, dn zijn L 1 L 2 en L 1 L 2 ook regulier en L 1 is ook regulier. Vn 24

L 1 L 2 is dt eenvoudig in te zien (g het voor jezelf n!), mr vn L 1 L 2 en L 1 niet. Dt komt n de orde in het onderdeel Automten. Men identificeert soms een reguliere tl met een reguliere expressie die hem beschrijft. Men heeft het dn bijvoorbeeld over de tl b (b), terwijl de tl L(b (b) ) bedoeld wordt. We zullen dt in dit college niet doen. 3.14. Opgve. Welke vn de volgende reguliere expressies beschrijven dezelfde tl? Toon het n of geef een string die wel in de ene en niet in de ndere tl zit. b (b). b (b) b. bb (b). 3.3. Contextvrije Grmmtic s Er is ook een ndere mnier om tlen te definiëren. Drbij proberen we niet de tl in één keer te beschrijven mr we geven een voorschrift hoe de woorden uit de tl gegenereerd (of geproduceerd) kunnen worden. Zo n voorschrift heet een grmmtic. 3.15. Voorbeeld. Σ = {,b}. De tl L 9 Σ wordt gedefinieerd door producties vnuit S (strt). S A A Ab Ab λ De mnier om nu woorden te genereren is ls volgt. We beginnen bij S (strt). Dit is het strtsymbool. S en A zijn de hulpsymbolen. We volgen de pijl (één mogelijkheid). Indien er nog een hulpsymbool stt volgen we nog een pijl. Totdt er geen hulpsymbool meer stt en dn hebben we een woord geproduceerd. Voorbeelden vn producties: S Ab Abb bb; S Ab Abb Abbb bbb. Deze mnier vn weergeven vn een tl noemen we een grmmtic. Bovenstnde grmmtic wordt ook wel weergegeven ls S A Ab Ab λ We bedoelen dn dt er vnuit A twee producties mogelijk zijn: A Ab en A λ. Dit levert op ls tl L 9 = {b,bb,bbb, 4 b 4,..., n b n,...}. Anders opgeschreven: L 9 = { n b n n N en n > 0} 3.16. Definitie. Een contextvrije grmmtic G is een drietl < Σ, V, R > bestnde uit (i) Een lfbet Σ 25

(ii) Een verzmeling hulpsymbolen V, wrvn er één specil is, S, het strtsymbool. (iii) Een verzmeling productieregels R vn de vorm X w wrbij X een hulpsymbool is en w een woord bestnde uit letters uit het lfbet en hulpsymbolen. (Anders gezegd: w (Σ V ).) We zullen voor de hulpsymbolen ltijd hoofdletters gebruiken, dus S,A,B etc en voor de letters vn het lfbet kleine letters (,b,c etc.) 3.17. Voorbeeld. (i) De tl L 9 uit 3.15 wordt geproduceerd door een contextvrije grmmtic. (ii) De tl L 10 met Σ = {}, V = {S} en productieregels S S. Deze grmmtic produceert lle woorden bestnde uit een oneven ntl tjes. (iii) De tl L 11 met Σ = {,b}, V = {S,A,B} en productieregels S AB, A A λ, B Bb λ. Deze grmmtic produceert lle woorden bestnde uit eerst een rij tjes en dn een rij b tjes. 3.18. Definitie. Tlen geproduceerd door contextvrije grmmtic s heten contextvrije tlen. Voor de tl die wordt geproduceerd door de grmmtic G schrijven we ook we L(G). Contextvrije tlen worden systemtisch behndeld in het college T1 voor de studierichting Informtic. 3.19. Voorbeeld. De tl vn goedgevormde rekenkundige expressies met hkjes is contextvrij. (Deze tl is niet regulier!) Een grmmtic voor deze tl is de volgende. S B ( E ) O G B S O S E G + P C P 1 2 3 4 5 6 7 8 9 C 0 1 2 3 4 5 6 7 8 9 λ Lt eens zien hoe je (33 + (20 5)) mkt en ((33 + 20) 5). 3.20. Opgve. 1. Lt zien dt de tl vn geblnceerde hkjesexpressies contextvrij is. Dt zijn expressies over {(,)} wrbij ieder openingshkje ltijd een sluithkje heeft, dus bijv. (()(())) en (())() zijn geblnceerd, mr (()())) niet. 2. Lt zien dt L 1 uit Voorbeeld 3.4 contextvrij is. 3. Lt zien dt L 2 uit Voorbeeld 3.4 contextvrij is. (Kijk nr Voorbeeld 3.15.) 4. Lt zien dt L 3 uit Voorbeeld 3.4 contextvrij is. 5. Lt zien dt L 4 uit Voorbeeld 3.4 contextvrij is. 26

3.21. Opgve. Gegeven is de volgende grmmtic voor de tl L 12. S A Sb A λ Abb bb De hulpsymbolen zijn dit keer S en A en Σ = {,b}. 1. Geef de productie vn bb en vn bb. 2. Welke woorden zitten in L 12? Met enige ervring is het wel in te zien welke woorden in de tl L 12 zitten. Mr het is niet eenvoudig om ook echt te bewijzen dt dit ze ook precies lleml zijn. Dit kn (meestl) wel, fhnkelijk vn de moeilijkheid vn de grmmtic, mr dt voert hier te ver. Een iets eenvoudiger vrg is de volgende. Lt zien dt b niet in L 12 zit. Hoe zou je dt npkken? Om te lten zien dt een woord wel geproduceerd kn worden door een grmmtic moet je gewoon op zoek nr een productie, en ls die er is vind je die (meestl) wel. Mr hoe lt je zien dt een woord niet geproduceerd kn worden? In de informtic is drvoor het begrip invrint geïntroduceerd. Een invrint is een eigenschp P die geldt voor lle woorden die geproduceerd kunnen worden door de grmmtic G. Dt P geldt voor lle w L(G) bewijs je door te lten zien dt P voor S geldt en dt P invrint is onder de productieregels, dwz: ls P geldt voor een woord v en ik kn v produceren uit v, dn geldt P ook voor v. Als een woord w niet n P voldoet, kun je concluderen dt w niet geproduceerd kn worden. Dus om te werken met invrinten moet je het volgende doen. Een goede eigenschp P verzinnen, Lten zien dt P invrint is onder de productieregels, Lten zien dt w niet n P voldoet. En nu de prktijk: we willen ntonen dt b / L 12. Wt is een goede invrint? We nemen P(w) := het ntl b s in w het ntl s in w. Dit is een invrint, wnt P geldt voor S Als P(v) en v v, dn ook P(v ). (G dit n voor iedere productieregel: of er komt een en een b bij, of een en 2 b s, of geen en geen b.) Dus: P(w) geldt voor lle w L 12. Conclusie: b / L 12. 3.22. Opgve. 1. Lt op dezelfde mnier ls hierboven (mbv een invrint) zien dt bb / L 12. 27

2. Lt mbv een invrint zien dt bbb niet geproduceerd kn worden mbv de grmmtic voor L 3 die je in opgve 3.20 gemkt hebt. 3. Lt mbv een invrint zien dt bbb niet geproduceerd kn worden mbv de grmmtic voor L 4 die je in opgve 3.20 gemkt hebt. Contextvrije grmmtic s heten contextvrij omdt in de productieregels n de linker knt lleen mr hulpsymbolen mogen stn. (De regel S Sb is bijvoorbeeld niet toegestn.) Bij contextvrije grmmtic s hoef je, om een productieregel toe te pssen nooit nr de context (wt er om het hulpsymbool heen stt) te kijken. 3.4. Rechts-lineire grmmtic s Een bekende beperking vn contextvrije grmmtic s zijn de rechts-lineire grmmtic s. 3.23. Definitie. Een rechts-lineire grmmtic is een contextvrije grmmtic wrbij de productie regels de volgende vorm hebben X X wy w wrbij X en Y hulpsymbolen zijn en w Σ. Dus in een rechts-lineire grmmtic mogen hulpsymbolen in de rechterknt lleen n het einde stn. 3.24. Voorbeeld. (i) In Voorbeeld 3.17 is lleen L 10 een rechts-lineire grmmtic. (ii) Soms kunnen we bij een context-vrije grmmtic een equivlente rechts-lineire grmmtic mken. De volgende rechtslineire grmmtic (over Σ = {, b}) produceert de tl L 11 uit voorbeeld 3.17 (iii). S S B, B bb λ. Een diepzinnige stelling zegt dt de klsse vn tlen die geproduceerd kunnen worden met een rechtslineire grmmtic precies de klsse vn reguliere tlen is. 3.25. Stelling. Een tl L is regulier dn en slechts dn ls er een rechts-lineire grmmtic is die hem beschrijft. Een reguliere tl is dus vnzelf ook contextvrij. De stelling bewijzen we niet. Om hr te bewijzen moet je lten zien hoe je bij een reguliere expressie een rechts-lineire grmmtic mkt die dezelfde tl produceert. Omgekeerd moet je bij iedere rechts-lineire grmmtic een reguliere expressie opschrijven die dezelfde tl beschrijft. Het eerste illustreren we met een voorbeeld. 3.26. Voorbeeld. Beschouw de reguliere expressie b (b λ)( bb) Een rechts-lineire grmmtic die dezelfde tl genereert is S A B C A ba B bc C C bbc λ 28

Soms worden rechts-lineire grmmtic s ook weergegeven met zogenmde syntx digrmmen. We lten drvn hier lleen een voorbeeld zien. Dit is het digrm dt hoort bij de grmmtic uit voorbeeld 3.26. S A B C A b B b b b C Een direct gevolg vn stelling 3.25 is dt de volgende twee tlen (over het lfbet {,b}) regulier zijn (zie Voorbeeld 3.17): L 10 = { n n is oneven} en L 11 = {wv w bevt lleen s, v bevt lleen b s}. Probeer voor jezelf een reguliere expressie op te schrijven voor L 10 en ook voor L 11. 3.27. Opgve. (i) Bekijk de volgende grmmtic over lfbet {, b, c}: S A B, A bs λ, B bcs λ. G n of je de volgende woorden kunt produceren met deze grmmtic: bb, bcbbc, bb. Omschrijf de reguliere tl L 12 die deze grmmtic produceert. (ii) Mk een rechtslineire grmmtic voor de tl L 13 bestnde uit woorden vn de vorm b... b (dus s en b s om en om met voorn en chtern een ; zorg dt je ook krijgt). 3.28. Opgve. Geef rechts-lineire grmmtic s voor de tlen uit opgve 3.13: 1. L 6 := {w {,b} iedere in w wordt direct gevolgd door een b}, 2. L 7 := de tl vn lle goedgevormde integer-expressies. Deze bestn uit de symbolen 0,1,2,3,4,5,6,7,8,9, mr ze beginnen nooit met een 0 en mogen eventueel worden voorfgegn door een + of een. 29

3. L 8 := de tl vn lle goedgevormde rekenkundige expressies zonder hkjes. Deze bestn uit ntuurlijke getllen met drtussen de opertoren +, of, bijvoorbeeld 7+3 29 78. (Hint: mk eerst een reg. expr. voor de ntuurlijke getllen; zo n getl begint nooit met een 0.) We geven een grmmtic voor een klein gedeelte vn het Engels. S = zin onderwerpvorm werkwoordvorm zin onderwerpvorm werkwoordvorm lijdendvoorwerpvorm onderwerpvorm eigennm lidwoord zelfstndignmwoord eigennm John Jill zelfstndignmwoord bicycle mngo lidwoord the werkwoordvorm werkwoord bijwoord werkwoord werkwoord ets rides bijwoord slowly frequently bijvoeglijknmwoordlijst bijvoeglijknmwoord bijvoeglijknmwoordlijst λ bijvoeglijknmwoord big juicy yellow lijdendvoorwerpvorm bijvoeglijknmwoordlijst eigennm lijdendvoorwerpvorm lidwoord bijvoeglijknmwoordlijst zelfstndignmwoord 3.29. Opgve. Is deze grmmtic rechts-lineir? Lt zien hoe je de volgende zin produceert. Jill frequently ets big juicy yellow mngo. Mk zelf ndere zinnetjes. 30

3.5. Algemene Grmmtic s [Geen exmenstof] We kunnen veel lgemenere grmmtic s toestn dn lleen contextvrije of rechts-lineire. Op die mnier kunnen we tlen definiëren die niet contextvrij zijn en die worden ook wel bestudeerd, hoewel ze lstiger zijn. 3.30. Definitie. Een grmmtic G is een drietl < Σ,V,R > bestnde uit (i) Een lfbet Σ (ii) Een verzmeling hulpsymbolen V, wrvn er één specil is, S, het strtsymbool. (iii) Een verzmeling productieregels R vn de vorm v w wrbij v en w bestn uit letters uit het lfbet en hulpsymbolen, met de restrictie dt v minstens één hulpsymbool bevt. (Anders gezegd: w (Σ V ) V (Σ V ) en w (Σ V ).) Als voorbeeld beschouwen we de volgende grmmtic G, met Σ := {,b,c} en V = {S,B,T,U}. S BT T btc U buc Ub bu bub U We lten zien hoe je bc kunt produceren. BU λ Ubc Ub bu Ubb U S BT BbT c BbU c BU bc BU bc bc. Lt zelf zien hoe je bbcc produceert. De tl vn G is { n b n c n n 0}. Deze tl is niet contextvrij. (Probeer mr eens een contextvrije grmmtic voor deze tl te mken; het zl je niet lukken en je kunt ook bewijzen dt het onmogelijk is.) Het is duidelijk uit de regels (dit is een invrint) dt in iedere w die je kunt produceren het ntl s, het ntl b s en het ntl c s gelijk zijn. Dt ze uiteindelijk ook in de goede volgorde terecht komen kun je (intuïtief) inzien omdt: Eerst wordt B(b) n Uc n gegenereerd. Dn zorgen de regels voor U ervoor dt lle b s chter lle s komen. Dit eindigt in BU n b n c n en dn nr n b n c n. 31

32

4. Combintoriek Grphen Dit hoofdstuk is een korte inleiding in de grphentheorie. Grphen kom je op llerlei pltsen tegen bijvoorbeeld bij tlen, netwerken, dtstructuren, elektrische circuits, trnsport problemen en stroomschem s. Intuïtief bestt een grph uit een verzmeling P vn punten en een verzmeling L vn lijnen tussen punten. Twee voorbeelden: G 1 G 2 3 4 b d 1 2 c Ntuurlijk zijn er nu llerlei kngende onzekerheden, zols: Wnneer zijn twee grphen gelijk?, Moeten die punten in een plt vlk liggen?, Mogen de lijnen elkr snijden?. Al je twijfels verdwijnen ls sneeuw voor de zon, dnkzij de volgende formele definitie: 4.1. Definitie. Een grph is een pr P,L wrbij P een verzmeling is, en L een verzmeling vn uit twee elementen bestnde deelverzmelingen vn P. (De elementen vn P noemen we punten, de elementen vn L noemen we lijnen ; een lijn noteren we niet ls {,b} mr ls (,b). De lijn (,b) is dus gelijk n de lijn (b,).) De grph G 1 uit ons eerste voorbeeld is dus P,L met P = {1,2,3,4} en L = {(1,4),(2,3), (2,4)}. De grph G 2 is het pr P,L met P = {,b,c,d} en L = {(,c),(,d),(c,d)} NB. Merk op dt de lijnen in onze grphen geen richting hebben: het zijn geen pijlen. Verder is het niet mogelijk dt er tussen twee punten p en q meerdere lijnen zijn. Je zou de definitie vn grph kunnen vernderen en dit wel toestn, mr het blijkt dt we met Definitie 4.1 l genoeg stof tot ndenken hebben en l veel interessnte eigenschppen kunnen beschrijven en bestuderen. 4.2. Definitie. (Hierin is G de grph P,L, en zijn p en q punten) Een buur vn p is een punt x met (p,x) L. De grd (of: vlentie) vn p is het ntl buren vn p. Een pd vn p nr q is een rijtje vn verschillende lijnen (x 0,x 1 ),(x 1,x 2 ),...,(x n 1,x n ) met n > 0, x 0 = p en x n = q. Een kortere nottie voor dit pd: x 0 x 1 x 2 x n. Met G is smenhngend bedoelen we: tussen ieder tweetl punten bestt een pd. Een component vn G is een zo groot mogelijk smenhngend deel vn een grph. Een cykel is een pd vn een punt nr zichzelf. 33