Hoofdstuk 5 Predikatenrekenen 5.1 Inleiding Om het gedrag van digitale schakelingen te beschrijven, hebben we proposities gebruikt zoals (s ≡ (a 6≡ b)) ∧ (c ≡ a ∧ b) s ≡ (a 6≡ b) en c ≡ a ∧ b zijn daarbij proposities die in de tweewaardige semantiek de waarheidswaarde 0 of 1 kunnen aannemen. Tenzij we het uitdrukkelijk anders vermelden, zullen we vanaf nu aannemen dat we werken binnen die tweewaardige semantiek en dat we de 15 axioma’s en de afleidingsregels uit het vorige hoofdstuk ter beschikking hebben voor het propositierekenen. Er is een gelijkenis tussen bovenvermelde proposities en formules zoals x = x + a en iszero a uit hoofdstuk 2. We willen nu ook over die formules formeel kunnen redeneren met expressies zoals x = x + a ⇒ iszero a Daarom maken we in dit hoofdstuk de stap naar predikatenrekenen. Een predikaat is een functie die enkel de waarden 0 en 1 kan aannemen. Operatoren als ≡, = en iszero kunnen opgevat worden als predikaten. We zullen in dit hoofdstuk vooral veel aandacht besteden aan de predikaten ∀ en ∃ (de zogenaamde kwantoren). In dit hoofdstuk wordt zeer duidelijk dat we naast de calculationele stijl ook kiezen voor een functionele stijl waarbij wiskundige objecten zoveel mogelijk als functies gezien worden. Dat predikaten, en in het bijzonder kwantoren, functies zijn is daar een tekenend voorbeeld van. We zullen dan ook in eerste instantie de nodige aandacht besteden aan het concept “functie”. Een functie wordt volledig gekenmerkt door haar definitieverzameling en haar voorschrift (d.w.z. dat als je definitieverzameling en voorschrift kent, dat je dan de functie kent, en omgekeerd). Zoals de benaming laat vermoeden, is de definitieverzameling de verzameling van waarden waarvoor de functie gedefinieerd is. Daarom zullen we ook eerst het begrip “verzameling” van naderbij bekijken. We maken daarbij gebruik van propositierekenen; dat verklaart waarom we nu pas toekomen aan het rekenen met verzamelingen en functies. Anderzijds zullen we, eens we ook predikatenrekenen ter beschikking hebben, onze batterij rekenregels voor functies nog verder kunnen uitbreiden. Tot nu toe hebben we steeds gewerkt binnen het veilige kader van ´e´en taal waar de zinnen (eenvoudige wiskundige uitdrukkingen, lambdatermen, proposities) slechts een beperkt aantal gedaantes konden aannemen. We hebben elk van deze formele systemen apart behandeld en zijn tot de vaststelling gekomen dat ze elk op zich reeds zeer expressief zijn (denk 73 74 HOOFDSTUK 5. PREDIKATENREKENEN b.v. aan de programmeertaal die we gebouwd hebben in de lambdacalculus). Zoals uit het voorbeeld hierboven al blijkt, zullen we nu verschillende (deel)talen samen gaan gebruiken (in het voorbeeld: wiskundige uitdrukkingen en propositierekenen). Een ander voorbeeld kennen we uit de programmeertaal Haskell, waar we mogen schrijven (\x -> 4+x)3 wat in de ons vertrouwdere notatie staat voor (λx.4 + x)3, m.a.w. een combinatie van wiskundige uitdrukkingen en lambdarekenen. In de overkoepelende taal die op die manier ontstaat zijn er zoveel verschillende mogelijkheden dat het opstellen van een BNF–syntax geen eenvoudige klus meer is. Gelukkig is dit ook niet nodig om in de praktijk te kunnen werken met zinnen uit die taal. We houden de gebruikelijke afspraken aan m.b.t. weglaten van haakjes. Afspraak 12 (Reductie van haakjes) • De buitenste haakjes rond een uitdrukking die op zichzelf staat, mogen weggelaten worden. • Haakjes rond de applicatie van een operator mogen weggelaten worden indien die applicatie optreedt als ´e´en van de argumenten van een binaire operator met lagere prioriteit. • De prioriteiten zijn als volgt geregeld: – Substitutie heeft de hoogste prioriteit. – Unaire operatoren hebben een hogere prioriteit dan binaire operatoren. – De binaire operatoren worden als volgt gerangschikt van hoogste naar laagste prioriteit (op dezelfde lijn betekent dezelfde prioriteit): +−∪∩\ =<>≤≥∈⊆ ∨∧ ⇒⇐ ≡ 6≡ Wanneer we in het vervolg spreken over een expressie, dan bedoelen we een zin uit de overkoepelende taal. Eenvoudige wiskundige uitdrukkingen, lambdatermen en proposities zijn dus allemaal expressies. Ook zinnen uit nieuwe (deel)talen die we verder nog zullen invoeren, zijn expressies. Als notatie voor een willekeurige expressie gebruiken we vaak d of e. De afleidingsregel instantiatie van een stelling blijft algemeen gelden. Voor gelijkheid = en ≡ hebben we bovendien de afleidingsregel van Leibniz (gelijken vervangen door gelijken) en transitiviteit. Voor = hebben we de afleidingsregel voor symmetrie; voor ≡ maken we wat dat betreft gebruik van axioma 2 (x ≡ y ≡ y ≡ x). Ook reflexiviteit van =, m.a.w. e = e voor een willekeurige uitdrukking e is een beschikbare stelling. 5.2 Rekenen met Verzamelingen De taal van de verzamelingen wordt gekenmerkt door de volgende BNF–syntax: verzameling applicatie veranderlijke constante cop 2 ::= ::= ::= ::= ::= veranderlijke | constante | applicatie . (verzameling cop 2 verzameling). X | Y | Z. ∅ | B | N | Z | Q | R | C. ∪|∩|\. 75 5.2. REKENEN MET VERZAMELINGEN De buitenste haakjes rond een applicatie mogen zoals gebruikelijk weggelaten worden. ∪, ∩ en \ hebben dezelfde prioriteit. Om willekeurige verzamelingen aan te duiden, gebruiken we als notatie vaak S en T . Om formeel te kunnen rekenen met verzamelingen, grijpen we terug naar het propositierekenen. De sleutel hiertoe is de lidmaatschapsoperator ∈. Voor een willekeurige expressie e en een willekeurige verzameling S, kunnen we schrijven e∈S We lezen dit als “e behoort tot S”, “e is van het type S” of nog “e is een element van S”. Voorbeeld 42 (x ∧ y) ∈ B π∈R (x ∧ π ∈ R) ∈ B De lidmaatschapsoperator laat ons toe om een aantal definities in te voeren m.b.t. de operatoren uit de verzamelingenleer. We doen dit a.d.h.v. axioma’s. Axioma Axioma Axioma Axioma Axioma Axioma V1 V2 V3 V4 V5 V6 unie doorsnede niet–lidmaatschap verschil lege verzameling singleton x∈X ∪Y x∈X ∩Y x∈ /X x ∈ X\Y x∈ /∅ x ∈ ιy ≡ ≡ ≡ ≡ x∈X ∨x∈Y x∈X ∧x∈Y ¬(x ∈ X) x∈X ∧x∈ /Y ≡ x=y Heel wat gekende stellingen uit de verzamelingenleer kunnen bewezen worden a.d.h.v. deze axioma’s. We geven een voorbeeld en verwijzen naar de opgaven voor andere voorbeelden. Voorbeeld 43 Bewijs van stelling x ∈ X ∩ Y ≡ x ∈ Y ∩ X x∈X ∩Y ≡ ≡ ≡ haxV2, x ∈ X ∩ Y ≡ x ∈ X ∧ x ∈ Y i hst18, x ∧ y ≡ y ∧ xi haxV2, x ∈ X ∩ Y ≡ x ∈ X ∧ x ∈ Y i x∈ X ∧x ∈Y x∈Y ∧x∈X x∈Y ∩X Merk op dat in de tweede stap uit bovenstaand bewijs de volgende concrete invulling van de afleidingsregel voor instantiatie van een stelling gebruikt werd: x∧y ≡ y∧x (x ∧ y ≡ y ∧ x)[x, y := x ∈ X, x ∈ Y ] We willen nu nog een stap verder gaan en bewijzen dat X ∩ Y = Y ∩ X. Daarvoor hebben we gelijkheid van verzamelingen nodig. We voeren dit in a.d.h.v. een axioma en een strikte afleidingsregel. Axioma V7 (Gelijkheid van verzamelingen) X = Y ⇒ (x ∈ X ≡ x ∈ Y ) 76 HOOFDSTUK 5. PREDIKATENREKENEN Afleidingsregel (Extensionaliteit voor verzamelingen) q ⇒ (v ∈ S ≡ v ∈ T ) q⇒S=T met q ⇒ (v ∈ S ≡ v ∈ T ) een stelling en x niet vrij in q, S en T . Op het eerste zicht lijkt het vreemd om ´en een axioma ´en een afleidingsregel in te voeren. Leg voor jezelf uit waarom de expressie X = Y ≡ (x ∈ X ≡ x ∈ Y ) geen goede keuze zou zijn als axioma om de gelijkheid van verzamelingen te defini¨eren. Uit de afleidingsregel van extensionaliteit volgt onmiddellijk een bewijsmethode voor de gelijkheid van verzamelingen. Bewijsmethode 3 Als bewijs voor S = T volstaat een bewijs voor v∈S ≡ v∈T met v niet vrij in S en T . Verklaring Merk op dat v∈S ≡ v∈T ≡ hst50, 1 ⇒ x ≡ xi 1⇒v∈S ≡ v∈T m.a.w. 1 ⇒ v ∈ S ≡ v ∈ T is een stelling, waaruit we met de afleidingsregel voor extensionaliteit kunnen afleiden dat 1 ⇒ (S = T ) een stelling is. Bovendien 1 ⇒ (S = T ) ≡ hst50, 1 ⇒ x ≡ xi S=T waaruit het gestelde. Uit het in Voorbeeld (43) gegeven bewijs voor x ∈ X ∩Y ≡ x ∈ Y ∩X kunnen we dus besluiten dat X ∪ Y = Y ∪ X. A.d.h.v. een achtste axioma voeren we inclusie van verzamelingen in. Axioma V8 (Inclusie) X ⊆Y ≡ Y =X ∪Y X ⊆ Y wordt gelezen als “X is bevat in Y ” of “X is een deelverzameling van Y ”. Voor een v die niet vrij voorkomt in S kunnen we schrijven e ∈ {v : S |p} met de gebruikelijke betekenis e ∈ {v : S | p} ≡ e ∈ S ∧ p[v := e] Voorbeeld 44 m ∈ {n : Z | n > 2006} ≡ m ∈ Z ∧ m > 2006 77 5.3. REKENEN MET FUNCTIES 5.3 Rekenen met functies Een functie is een wiskundig object dat volledig gekenmerkt wordt door haar definitieverzameling of domein en haar voorschrift. Een manier om een functie f te defini¨eren is dan ook door het geven van 2 axioma’s: • een definitieverzamelingaxioma van de vorm D f = S of van de vorm x ∈ D f ≡ p • een voorschriftaxioma van de vorm x ∈ D f ⇒ q Daarbij is S een verzameling en zijn p en q proposities. x komt typisch vrij voor in p en q, terwijl f typisch enkel vrij voorkomt in q. We maken verder gebruik van f en g om willekeurige functies aan te duiden. Indien niet uitdrukkelijk anders opgegeven, gebruiken we de zogenaamde prefixnotatie waarbij de waarde van f in x geschreven wordt als f x. Wanneer de waarheidswaarde van het antecedent in het voorschriftaxioma 0 is, dan is de waarheidswaarde van het volledige axioma 1. Het consequent wordt daarom enkel ge¨evalueerd (d.w.z. de waarde ervan wordt bepaald) wanneer de waarde van het antecedent 1 is. Wanneer de q uit het voorschriftaxioma begint met “f x =,” dan spreekt men van een expliciet voorschrift; in het andere geval van een impliciet voorschrift. Onderstaande voorbeelden illustreren respectievelijk een impliciet en een expliciet voorschrift. Voorbeeld 45 De functie wrtl wordt gedefinieerd door de volgende axioma’s: D wrtl x ∈ D wrtl = ⇒ N wrtl x · wrtl x = x Een alternatief definitieverzamelingaxioma is x ∈ D wrtl ≡ x ∈ Z ∧ x ≥ 0. Voorbeeld 46 De functie id die alle elementen uit X afbeeldt op zichzelf wordt gedefinieerd door de volgende axioma’s: D id = X x ∈ D id ⇒ id x = x Wanneer een expliciet voorschrift voorhanden is, dan kan de functie kortweg genoteerd worden m.b.v. een functie–abstractie die sterk gelijk op de manier waarop functies voorgesteld worden bij lambdarekenen. Definitie 26 (Functie–abstractie) Een functie–abstractie is een expressie van de vorm v : S ∧. p . e waarbij S een verzameling, p een propositie, e een expressie en v een veranderlijke is die niet vrij voorkomt in S. Alle voorkomens van v in e zijn gebonden en dus niet vrij. Deze functie–abstractie is een beknopte notatie voor de volgende axioma’s: x ∈ D (v : S ∧. p . e) x ∈ D (v : S ∧. p . e) ≡ ⇒ x ∈ S ∧ p[v := x] (v : S ∧. p . e)x = e[v := x] Bovendien korten we v : S ∧. 1 . e af tot v:S .e 78 HOOFDSTUK 5. PREDIKATENREKENEN Het hierboven gegeven voorschriftaxioma is expliciet. Het definitieverzamelingaxioma kan ook geschreven worden als (zie opgave 6) D (v : S ∧. p . e) = {v : S | p} Men noemt dit een puntvrije stijl omdat er geen veranderlijke x meer in optreedt. Voorbeeld 47 Gegeven is de functie f gedefinieerd door een functie–abstractie als f = n : Z ∧. n ≥ 0 . 2 · n Men gaat na dat m ∈ Df ≡ ≡ ≡ ≡ hdef. f i hdef. functie–abstractiei hsubstitutiei hdef. Ni m ∈ D (n : Z ∧. n ≥ 0 . 2 · n) m ∈ Z ∧ (n ≥ 0)[n := m] m∈Z∧m≥0 m∈N Met de afleidingsregel voor extensionaliteit leiden we hieruit af dat D f = N. Op gelijkaardige wijze bekomt men (ga dit na) m ∈ Df ⇒ f m = 2·m Voorbeeld 48 De functie uit voorbeeld 46 kan kortweg gedefinieerd worden door de volgende functie–abstractie x:X .x Het voorschriftaxioma van een functie wordt vaak gebruikt om in elementen van de definitieverzamelingen de functiewaarde te evalueren. In voorbeeld 47 kan het voorschriftaxioma m ∈ D f ⇒ f m = 2 · m gebruikt worden om voor een element m uit de definitieverzameling f m te vervangen door 2 · m. Om dit vlot en correct te doen maken we een afspraak die een nieuwe mogelijkheid introduceert in onze bewijzen in calculationele stijl. We beginnen met de bewijsmethode die aan de basis ligt van deze afspraak. Bewijsmethode 4 (Leibniz onder aanname) Als bewijs voor (p ∧ q) ⇒ r[v := d] ≡ (p ∧ q) ⇒ r[v := d′ ] volstaat een bewijs voor p ⇒ d = d′ We noteren dit in een calculationeel bewijs als (p ∧ q) ⇒ r[v := d] ≡ hp ⇒ d = d′ i (p ∧ q) ⇒ r[v := d′ ] 79 5.3. REKENEN MET FUNCTIES Verklaring We verklaren deze methode door gebruik te maken van de bewijsmethode van aanname van het antecedent. Om p ⇒ (r[v := d] ≡ r[v := d′ ]) te bewijzen nemen we eerst p aan en bewijzen dat onder deze aanname r[v := d] ≡ r[v := d′ ] Dit verloopt als volgt 1 ≡ ⇒ haannames p en p ⇒ d = d′ i hst54i p ∧ (p ⇒ d = d′ ) d = d′ Uit stelling 50 volgt dat bovenstaande een bewijs is voor d = d′ onder de aanname p. Met de afleidingsregel van Leibniz leiden we af dat r[v := d] ≡ r[v := d′ ] onder aanname p. We gebruiken dit in de volgende ketting p∧q ⇒ ⇒ hst53bi hzie bovenstaandei p r[v := d] ≡ r[v := d′ ] Uit stelling 40 volgt het gestelde. Merk op dat het hier louter gaat om een bewijsmethode en een bijhorende notatie–afspraak die elegante bewijzen toelaat, en dus niet om de introductie van een nieuw axioma of een nieuwe afleidingsregel! Voorbeeld 49 Zij f zoals in voorbeeld 47. m ∈ D f ∧ m > 0 ⇒ ff m m =1 ≡ hm ∈ D f ⇒ f m = 2 · mi m ∈ D f ∧ m > 0 ⇒ 2·m 2·m =1 In voorbeeld 47 hebben we het gelijkheidsteken gebruikt om gelijkheid van functies aan te geven, namelijk f en n : Z ∧. n ≥ 0 . 2·n. We hebben die gelijkheid verder enkel gebruikt om het principe van Leibniz te kunnen toepassen, d.w.z. om f te vervangen door n : Z ∧. n ≥ 0 . 2 · n en omgekeerd. De betekenis die we willen geven aan gelijkheid van functies is dat 2 functies gelijk zijn indien ze dezelfde definitieverzameling hebben en ze dezelfde waarde toekennen aan dezelfde elementen uit hun definitieverzameling. Net als bij verzamelingen introduceren we gelijkheid van functies a.d.h.v. een axioma en een strikte afleidingsregel. Axioma (Gelijkheid van functies) (f = g) ⇒ (D f = D g ∧ (x ∈ D f ∩ D g ⇒ f x = g x)) 80 HOOFDSTUK 5. PREDIKATENREKENEN Afleidingsregel (Extensionaliteit voor functies) q ⇒ D f = D g ∧ (x ∈ D f ∩ D g ⇒ f x = g x) q⇒f =g met q ⇒ D f = D g ∧ (x ∈ D f ∩ D g ⇒ f x = g x) een stelling en x niet vrij in q, f en g. Een bekendere vorm van gelijkheid van functies kan als stelling bewezen worden eens we de kwantor ∀ ter beschikking hebben (zie opgave 13). Bewijsmethode 5 Als bewijs voor f = g volstaat een bewijs voor Df = Dg gevolgd door • of een bewijs voor x ∈ D f ∩ D g ⇒ f x = g x • of een bewijs voor x ∈ D f ⇒ f x = g x • of een bewijs voor x ∈ D g ⇒ f x = g x Het tweede stuk wordt bovendien vaak bewezen door aanname van het antecedent. Leg voor jezelf uit waarom dit een correcte bewijsmethode is. We geven nog een aantal voorbeelden van functies gedefinieerd a.d.h.v. een functie–abstractie. Definitieverzameling– en voorschriftaxioma zijn er als illustratie bij vermeld. We zullen in het vervolg nog veelvuldig gebruik maken van deze functies. Definitie 27 (Constante functie) X •y = x:X .y Bijhorende definitieverzameling– en voorschriftaxioma’s zijn D (X • y) x ∈ D (X • y) = ⇒ X (X • y) x = y Definitie 28 (Samenstelling) f ◦ g = x : D g ∧. g x ∈ D f . f (g x) Bijhorende definitieverzameling– en voorschriftaxioma’s zijn x ∈ D (f ◦ g) x ∈ D (f ◦ g) ≡ ⇒ x ∈ Dg ∧gx ∈ Df (f ◦ g) x = f (g x) Definitie 29 (Puntsgewijze uitbreiding van een unaire operator) g f =g◦f Bijhorende definitieverzameling– en voorschriftaxioma’s zijn x ∈ D (g f ) x ∈ D (g f ) ≡ ⇒ x ∈ Df ∧f x ∈ Dg (g f ) x = g(f x) 81 5.4. KWANTOREN Definitie 30 (Puntsgewijze uitbreiding van een binaire operator) fb ⋆ g = x : D f ∩ D g ∧. (f x, g x) ∈ D ⋆ . (f x) ⋆ (g x) Bijhorende definitieverzameling– en voorschriftaxioma’s zijn x ∈ D (f b ⋆ g) x ∈ D (f b ⋆ g) ≡ ⇒ x ∈ D f ∩ D g ∧ (f x, g x) ∈ D ⋆ (f b ⋆ g) x = (f x) ⋆ (g x) Definitie 31 (Beperking) f ⌉X = x:Df ∩ X .f x Bijhorende definitieverzameling– en voorschriftaxioma’s zijn x ∈ D (f ⌉ X) x ∈ D (f ⌉ X) 5.4 5.4.1 ≡ ⇒ x ∈ Df ∩X (f ⌉ X) x = f x Kwantoren Definitie en bewijstechnieken Definitie 32 (Predikaat) Een predikaat is een functie die enkel de waarden 0 en 1 aanneemt. We gebruiken P en Q om willekeurige predikaten aan te duiden. Definitie 33 (Kwantoren) De kwantoren ∀ (overal) en ∃ (ergens) zijn gedefinieerd als ∀P ∃P ≡ ≡ P = DP •1 ¬(P = D P • 0) Door de bijzondere keuze P = x : X . p bekomen we puntsgewijze gedaante zoals we die het vaakst tegenkomen in wiskundige werken. ∀P en ∃P dienen gelezen te worden als “overal P ” en “ergens P ” respectievelijk, terwijl ∀(x : X . p) vaak gelezen wordt als “voor alle x in X geldt p” en ∃(x : X . p) als “er bestaat een x in X waarvoor geldt p”. ∀ wordt ook wel eens de universele kwantor genoemd en ∃ de existenti¨ele kwantor. De volgende stelling kan bewezen worden door op ∀P eerst de definitie van ∀P toe te passen en vervolgens het axioma van gelijkheid van functies (ga dit na). Stelling (Invulling) ∀P ⇒ x ∈ D P ⇒ P x met x niet vrij in q en P . In deze stelling hebben we enkel een implicatie en geen equivalentie. Dit komt omdat in het gebruikte axioma voor gelijkheid van functies ook enkel een implicatie optreedt. Voor de omgekeerde richting geeft de afleidingsregel m.b.t. gelijkheid van functies aanleiding tot de volgende bewijsmethode (leg voor jezelf uit waarom): 82 HOOFDSTUK 5. PREDIKATENREKENEN Bewijsmethode (Veralgemening) Als bewijs voor q ⇒ ∀P volstaat een bewijs voor q ⇒ x ∈ D P ⇒ P x (met x niet vrij in q en P ). We noteren dit in een calculationeel bewijs als ⇒ ⇒ q hverantwoordingi hveralgemeningi x ∈ DP ⇒ P x ∀P Uiteraard kan ook hier weer 1 gekozen worden voor q. Het fundamenteel verschil tussen invulling en veralgemening is dat invulling zegt dat ∀P ⇒ x ∈ D P ⇒ P x een stelling is, terwijl veralgemening zegt dat als x ∈ D P ⇒ Px een stelling is, dat dan ook ∀P een stelling is. We kunnen gebruik maken van de stelling “invulling” en de bewijsmethode “veralgemening” om stellingen over ∀ te bewijzen, en vervolgens onderstaande stelling “dualiteit” gebruiken om daaruit de corresponderende stellingen voor ∃ te halen. Stelling (Dualiteit) Voor een willekeurig predikaat P geldt ∀(¬P ) ≡ ¬(∃P ) ∃(¬P ) ≡ ¬(∀P ) We schetsen de hoofdlijn van het bewijs van de eerste equivalentie. Hierbij maken we gebruik van 3 lemma’s die uiteraard op zich ook moeten bewezen worden. We verwijzen hiervoor naar opgave 8. Bewijs van ∀(¬P ) ≡ ¬(∃P ) ∀(¬P ) ≡ ≡ ≡ ≡ ≡ ≡ ≡ hdef ∀i hD (¬P ) = D P i h¬ P = Q ≡ P = ¬ Qi h¬ (D P • 1) = D P • (¬1)i hax4, 0 ≡ ¬1i hst6, ¬¬x ≡ xi hdef ∃i ¬P = D (¬P ) • 1 ¬P = D P • 1 P = ¬(D P • 1) P = D P • (¬1) P = DP •0 ¬¬(P = D P • 0) ¬(∃P ) Voor het bewijs van de tweede equivalentie verwijzen we naar opgave 9. Door toepassing van stelling 5 uit propositierekenen, namelijk ¬x ≡ y ≡ x ≡ ¬y hebben we hieruit ook meteen de volgende stellingen als rekenregels ter beschikking: ∃P ≡ ¬(∀(¬P )) 83 5.4. KWANTOREN ∀P ≡ ¬(∃(¬P )) Die komen in de praktijk goed van pas wanneer we de ∃ kwantor willen “omzetten” in de ∀ kwantor, b.v. omdat we een stelling bewezen hebben voor ∀ en de duale stelling voor ∃ daaruit willen afleiden. Dit is de bewijstechniek die we het meest zullen aanwenden. Soms zullen we echter ook “rechtstreekse” bewijzen leveren voor stellingen met ∃ door gebruik te maken van de stelling “getuige” en de bewijsmethode “vrijwilliger” die we op dezelfde manier bekomen als “invulling” en “veralgemening”, namelijk door het gebruiken van het axioma en de afleidingsregel van functiegelijkheid in de definitie van ∃. Stelling (Getuige) x ∈ D P ∧ P x ⇒ ∃P Bewijs van getuige (∃P ⇒ 0) ≡ ≡ ≡ ⇒ ≡ hdef ∃i hst38, x ⇒ y ≡ ¬y ⇒ ¬xi hst7, ¬0 ≡ 1, st50, 1 ⇒ x ≡ x, st6, ¬¬x ≡ xi hax gelijkheid functies; def • i hax4, 0 ≡ ¬1; st5, ¬x ≡ y ≡ x ≡ ¬yi ¬(P = D P • 0) ⇒ 0 ¬0 ⇒ ¬¬(P = D P • 0) P = DP •0 x ∈ D P ⇒ Px ≡ 0 x ∈ D P ⇒ ¬(P x) Verder hebben we (∃P ⇒ 0) ⇒ (x ∈ D P ⇒ ¬(P x)) ≡ ≡ ≡ ≡ hst51, x ⇒ 0 ≡ ¬xi hst38, x ⇒ y ≡ ¬y ⇒ ¬xi hst36, x ⇒ y ≡ ¬x ∨ y, st6, ¬¬x ≡ xi hst29b, ¬(x ∨ y) ≡ ¬x ∧ ¬y, st6, ¬¬x ≡ xi ¬(∃P ) ⇒ (x ∈ D P ⇒ ¬(P x)) ¬(x ∈ D P ⇒ ¬(P x)) ⇒ ¬¬(∃P ) ¬(x ∈ / D P ∨ ¬(P x)) ⇒ ∃P (x ∈ D P ∧ P x) ⇒ ∃P Merk op dat m.b.v. aftakking bovenstaande stelling ook kan geschreven worden als x ∈ D P ⇒ P x ⇒ ∃P In de omgekeerde richting bekomen we door toepassen van de afleidingsregel voor gelijkheid van functies de volgende bewijsmethode (ga dit zelf na). Bewijsmethode (Vrijwilliger) Als bewijs voor ∃P ⇒ q volstaat een bewijs voor x ∈ D P ∧ Px ⇒ q (met x niet vrij in P en q). Bemerk ook hier weer het fundamenteel verschil: getuige zegt dat x ∈ D P ⇒ P x ⇒ ∃P 84 HOOFDSTUK 5. PREDIKATENREKENEN een stelling is, terwijl vrijwilliger zegt dat als x ∈ D P ∧ Px ⇒ q een stelling is, dat dan ook ∃P ⇒ q een stelling is. 5.4.2 Rekenregels voor kwantoren Stelling (Interacties) Voor predikaten P en Q met D P = D Q geldt b Q) ≡ ∀P ∧ ∀Q (interactie tussen ∀ en ∧ ) ∀(P ∧ b Q) ⇐ ∀P ∨ ∀Q (interactie tussen ∀ en ∨ ) ∀(P ∨ b Q) ⇒ ∃P ∧ ∃Q (interactie tussen ∃ en ∧ ) ∃(P ∧ b Q) ≡ ∃P ∨ ∃Q (interactie tussen ∃ en ∨ ) ∃(P ∨ De eerste interactie kan bewezen worden met de methode van wederzijdse implicatie. Voor de rest is de werkwijze analoog aan het bewijs voor de tweede interactie dat we hieronder als voorbeeld geven. b Q) ⇐ ∀P ∨ ∀Q Bewijs van ∀(P ∨ ∀P ∨ ∀Q ⇒ ≡ ≡ ≡ ≡ ≡ ≡ ⇒ hinvullingi hst36, x ⇒ y ≡ ¬x ∨ yi hD P = D Q; ax9, x ∨ x ≡ xi hst36, x ⇒ y ≡ ¬x ∨ yi hD P = D Q; X ∩ X = Xi hP en Q zijn predi hdef b i hveralgemeningi (x ∈ D P ⇒ P x) ∨ (x ∈ D Q ⇒ Q x) ¬(x ∈ D P ) ∨ P x ∨ ¬(x ∈ D Q) ∨ Q x ¬(x ∈ D P ) ∨ P x ∨ Q x x ∈ DP ⇒ P x ∨ Qx x ∈ DP ∩DQ ⇒ P x ∨ Qx x ∈ D P ∩ D Q ∧ (P x, Qx) ∈ D ∨ ⇒ P x ∨ Q x b Q) ⇒ (P ∨ b Q)x x ∈ D (P ∨ b ∀(P ∨ Q) De derde interactie kan afgeleid worden uit de tweede interactie gebruik makend van de stelling omtrent dualiteit. We hebben bovendien een lemma nodig waarvan we het bewijs overlaten als oefening (zie opgave 10). b Q) ⇒ ∃P ∧ ∃Q Bewijs van ∃(P ∧ b Q) ∃(P ∧ ≡ ≡ ⇒ ≡ ≡ hdualiteiti b Q) = ¬ P ∨ b ¬ Qi h¬ (P ∧ hinteractie tussen ∀ en ∨; st38, x ⇒ y ≡ ¬y ⇒ ¬xi hst29b, ¬(x ∨ y) ≡ ¬x ∧ ¬yi hdualiteiti b Q)) ¬∀(¬ (P ∧ b ¬ Q)) ¬(∀(¬ P ∨ ¬(∀(¬ P ) ∨ ∀(¬ Q)) ¬(∀(¬ P )) ∧ ¬(∀(¬ Q)) ∃P ∧ ∃Q 85 5.4. KWANTOREN Het bewijs van de vierde interactie verloopt analoog. Om de wisselwerking met ⇒ te kunnen beschrijven, hebben we eerst het begrip “filter” nodig. Definitie 34 (Filter) f ↓ P = x : D f ∩ D P ∧. P x . f x Bijhorende definitieverzameling– en voorschriftaxioma’s zijn x ∈ D (f ↓ P ) x ∈ D (f ↓ P ) ≡ ⇒ x ∈ Df ∩DP ∧P x (f ↓ P ) x = f x Stelling (Ruilen) Voor willekeurig predikaten P en Q geldt ∀(P ↓ Q) ≡ ∀(Q c ⇒ P) b P) ∃(P ↓ Q) ≡ ∃(Q ∧ Bewijs van ∀(P ↓ Q) ≡ ∀(Q c ⇒ P ) met de methode van wederzijdse implicatie ∀(P ↓ Q) ⇒ ≡ ≡ ≡ ≡ ⇒ hinvullingi hdef. ↓i hst42, x ⇒ y ⇒ z ≡ x ∧ y ⇒ zi hP en Q zijn predi hX ∩ Y = Y ∩ X; def. b i hveralgemeningi x ∈ D (P ↓ Q) ⇒ (P ↓ Q)x x ∈ DP ∩ DQ ∧ Qx ⇒ P x x ∈ DP ∩ DQ ⇒ Qx ⇒ P x x ∈ D P ∩ D Q ∧ (Q x, P x) ∈ D (⇒) ⇒ Q x ⇒ P x x ∈ D (Q c ⇒ P ) ⇒ (Q c ⇒ P )x ∀(Q c ⇒ P) Het bewijs van de andere implicatie verloopt volledig analoog. b P ) kan aangetoond worden gebruik De andere equivalentie, namelijk ∃(P ↓ Q) ≡ ∃(Q ∧ makend van de stelling “dualiteit” en 3 lemma’s waarvan we het bewijs laten als oefening (zie opgaven 10 en 11). Voor een volgende paar rekenregels maken we gebruik van transpositie (het omkeren van de volgorde van argumenten). Definitie 35 (Transpositie) Zij f een functie die 2 argumenten neemt, dan is f T gedefinieerd door volgend definitieverzameling– en voorschriftaxioma: y ∈ D fT y ∈ D fT ≡ ⇒ ∀(x : D f . y ∈ D (f x)) D (f T y) = D f ∧ (x ∈ D (f T y) ⇒ f T y x = f x y) 86 HOOFDSTUK 5. PREDIKATENREKENEN Volgend lemma blijkt goed van pas te komen bij het bewijzen van de rekenregels voor dummy wissel: Hulpstelling (Domeinovergang) x ∈ D f ∧ y ∈ D (f x) ≡ y ∈ D f T ∧ x ∈ D (f T y) Voor een bewijs van deze hulpstelling kan gebruik gemaakt worden van stelling 34, namelijk x ∧ y ≡ x ∧ (x ⇒ y). Stelling (Dummy wissel) Voor een willekeurige functie R met domein X zo dat R x een predikaat is voor elke x in X, geldt ∀(∀ ◦ R) ≡ ∀(∀ ◦ RT ) ∃(∃ ◦ R) ≡ ∃(∃ ◦ RT ) ∀(∃ ◦ R) ⇐ ∃(∀ ◦ RT ) Een bewijs voor de eerste wissel kan geleverd worden met de methode van wederzijdse implicatie, gebruik makend van de stelling “invulling” en de bewijsmethode “veralgemening”. Met onderstaand bewijs van de tweede wissel illustreren we het gebruik van “vrijwilliger” en “getuige”. De derde wissel kan bewezen worden door gebruik te maken van invulling, veralgemening, vrijwilliger en getuige samen. Bewijs van ∃(∃ ◦ RT ) ≡ ∃(∃ ◦ R) met de methode van wederzijdse implicatie Als bewijs voor ∃(∃ ◦ RT ) ⇒ ∃(∃ ◦ R) volstaat (wegens bewijsmethode vrijwilliger) een bewijs voor y ∈ D (∃ ◦ RT ) ∧ (∃ ◦ RT )y ⇒ ∃(∃ ◦ R) y ∈ D (∃ ◦ RT ) ∧ (∃ ◦ RT )y ⇒ ∃(∃ ◦ R) ≡ ≡ ≡ hdef ◦i hRT y is predi hst42, x ⇒ y ⇒ z ≡ x ∧ y ⇒ zi y ∈ D RT ∧ RT y ∈ D ∃ ∧ ∃(RT y) ⇒ ∃(∃ ◦ R) y ∈ D RT ∧ RT y ∈ D ∃ ⇒ ∃(∃ ◦ R) ∃(RT y) ⇒ (y ∈ D RT ⇒ ∃(∃ ◦ R)) Als bewijs voor ∃(RT y) ⇒ (y ∈ D RT ⇒ ∃(∃◦R)) volstaat (wegens bewijsmethode vrijwilliger) een bewijs voor x ∈ D (RT y) ∧ (RT y)x ⇒ y ∈ D RT ⇒ ∃(∃ ◦ R) x ∈ D (RT y) ∧ (RT y)x ∧ y ∈ D RT ≡ ⇒ ⇒ ⇒ hdef T ; domeinovergang i hgetuige; Rx is pred i hdef ◦i hgetuigei x ∈ D R ∧ y ∈ D (Rx) ∧ Rxy x ∈ D R ∧ Rx ∈ D ∃ ∧ ∃(Rx) x ∈ D (∃ ◦ R) ∧ (∃ ◦ R)x ∃(∃ ◦ R) Het bewijs van de andere implicatie verloopt volledig analoog. 87 5.4. KWANTOREN 5.4.3 Puntvrij en puntsgewijs Tabel 5.1 geeft een overzicht van de rekenregels voor kwantoren (we gaan ervan uit dat D P = D Q). De notatie uit de tweede kolom wordt puntvrij genoemd omdat er geen veranderlijken in optreden. Door de bijzondere keuze P = x : X . p, Q = x : X . q en R = x : X . (y : Y . r) bekomen we puntsgewijze gedaantes van de rekenregels zoals we ze het vaakst tegenkomen in wiskundige werken (zie de derde kolom). We illustreren de overgang van puntvrij naar puntsgewijs voor de derde rekenregel. We moeten aantonen dat b (x : X . q)) ≡ ∀(x : X . p ∧ q) ∀((x : X . p) ∧ We doen dit door aan te tonen dat de functies die optreden na de kwantoren gelijk zijn. b (x : X . q)) y ∈ D ((x : X . p) ∧ ≡ ≡ ≡ h def b ; x : X . p en x : X . q zijn predi hfunctie–abstractiei hfunctie–abstractiei y ∈ Dx:X .p ∧ y ∈ Dx:X .q y∈X y ∈ D (x : X . p ∧ q) Met de afleidingsregel voor extensionaliteit m.b.t. verzamelingen volgt daaruit de gelijkheid van de definitieverzamelingen. Neem nu y ∈ D (x : X . p ∧ q) dan b (x : X . q))y ((x : X . p) ∧ ≡ ≡ ≡ ≡ h def b i hfunctie–abstractiei hsubstitutiei hfunctie–abstractiei (x : X . p)y ∧ (x : X . q)y p[x := y] ∧ q[x := y] (p ∧ q)[x := y] (x : X . p ∧ q)y 88 HOOFDSTUK 5. PREDIKATENREKENEN ∀(¬P ) ≡ ¬(∃P ) ∃(¬P ) ≡ ¬(∀P ) dualiteit interactie interactie interactie interactie tussen tussen tussen tussen ∀ ∀ ∃ ∃ en en en en ∧ ∨ ∧ ∨ ∀(P ∀(P ∃(P ∃(P b Q) ∧ b Q) ∨ b Q) ∧ b Q) ∨ ≡ ∀P ∧ ∀Q ⇐ ∀P ∨ ∀Q ⇒ ∃P ∧ ∃Q ≡ ∃P ∨ ∃Q ∀(x : X . ¬p) ≡ ¬(∃(x : X . p)) ∃(x : X . ¬p) ≡ ¬(∀(x : X . p)) ∀(x : X . p ∧ q) ∀(x : X . p ∨ q) ∃(x : X . p ∧ q) ∃(x : X . p ∨ q) ≡ ∀(x : X . p) ∧ ∀(x : X . q) ⇐ ∀(x : X . p) ∨ ∀(x : X . q) ⇒ ∃(x : X . p) ∧ ∃(x : X . q) ≡ ∃(x : X . p) ∨ ∃(x : X . q) ruilen ∀(P ↓ Q) ≡ ∀(Q c ⇒ P) b P) ∃(P ↓ Q) ≡ ∃(Q ∧ ∀(x : X ∧. q . p) ≡ ∀(x : X . q ⇒ p) ∃(x : X ∧. q . p) ≡ ∃(x : X . q ∧ p) dummy wissel ∀(∀ ◦ R) ≡ ∀(∀ ◦ RT ) ∃(∃ ◦ R) ≡ ∃(∃ ◦ RT ) ∀(∃ ◦ R) ⇐ ∃(∀ ◦ RT ) ∀(x : X . ∀(y : Y.r)) ≡ ∀(y : Y . ∀(x : X . r)) ∃(x : X . ∃(y : Y.r)) ≡ ∃(y : Y . ∃(x : X . r)) ∀(x : X . ∃(y : Y.r)) ⇐ ∃(y : Y . ∀(x : X . r)) Tabel 5.1: Rekenregels kwantoren — puntvrij en puntsgewijs 89 5.4. KWANTOREN Oefeningen 1. Bewijs de volgende stellingen. (a) X ∪ Y = Y ∪ X (b) (X ∪ Y ) ∪ Z = X ∪ (Y ∪ Z) (c) X ∪ X = X (d) X = X (e) X ∩ Y = Y ∩ X (f) (X ∩ Y ) ∩ Z = X ∩ (Y ∩ Z) (g) X ∩ X = X (h) X ∪ ∅ = X (i) X ∩ ∅ = ∅ (j) X ∩ (X ∪ Y ) = X (k) X ∩ (Y ∪ Z) = (X ∩ Y ) ∪ (X ∩ Z) (l) X ∪ (Y ∩ Z) = (X ∪ Y ) ∩ (X ∪ Z) 2. Bewijs de volgende stellingen. (a) x ∈ X ∨ x ∈ /X (b) ¬(x ∈ X ∧ x ∈ / X) (c) x ∈ X ∨ Y ≡ x ∈ X ∨ (x ∈ / X ∧x∈Y) (d) x ∈ / X\Y ≡ x ∈ / X ∨x∈Y 3. Bewijs de volgende stellingen. (a) X ⊆ X (b) X ∩ Y ⊆ X (c) X ⊆ X ∪ Y (d) X ∩ Y ⊆ X ∪ Y (e) ∅ ≡ X 4. (a) Bewijs dat a ∧ b ⇒ c ≡ (a ⇒ c) ∨ (b ⇒ c). (b) Instantieer deze stelling met a, b, c := x ∈ A, x ∈ B, x ∈ C (c) Zij ⊆ gedefinieerd a.d.h.v. het alternatieve axioma X⊆Y ≡ x∈X⇒x∈Y Bewijs A ∩ B ⊆ C ≡ A ⊆ C ∨ B ⊆ C (d) Kan je deze laatste stelling ook bekomen als je voor ⊆ axioma V8 gebruikt? Geef een bewijs of een tegenvoorbeeld. (e) Waar zit het addertje onder het gras? 90 HOOFDSTUK 5. PREDIKATENREKENEN 5. Als T het universum is van alle verzamelingen, bewijs dan dat R = {X : T |X ∈ / X} geen verzameling is, m.a.w. R ∈ / T . Er bestaat dus niet zoiets als “de verzameling van verzamelingen die zichzelf niet bevatten”. 6. Bewijs dat het definitieverzamelingaxioma van een functie–abstractie ook kan geschreven worden als D (v : S ∧. p | e) = {v : S|p} 7. Bewijs onderstaande lemma’s. (a) ∀(X • 1) ≡ 1 (b) ∃(X • 0) ≡ 0 8. Bewijs onderstaande lemma’s. (a) D (¬P ) = D P (b) ¬ P = Q ≡ P = ¬ Q (c) ¬ (D P • 1) = D P • (¬1) 9. Bewijs ∃(¬P ) ≡ ¬(∀P ) 10. Bewijs onderstaande lemma’s. b Q) = ¬ P ∨ b ¬Q (a) ¬ (P ∧ b Q) = ¬ P ∧ b ¬Q (b) ¬ (P ∨ bQ (c) P c ⇒ Q = ¬P ∨ (d) ¬ ¬ P = P 11. Bewijs ¬ (P ↓ Q) = (¬ P ) ↓ Q 12. Bewijs X = Y ≡ ∀(x : X.x ∈ Y ) ∧ ∀(x : Y.x ∈ X) X en Y zijn verzamelingen. 13. Bewijs onderstaande stellingen. f en g zijn functies. (a) f = g ≡ D f = D g ∧ ∀(x : D f ∩ D g.f x = g x) (b) f = g ≡ D f = D g ∧ ∀(f = b g) 14. (a) Toon aan dat x ∈ N ⇒ (x ∈ N ⇒ x = x) (b) Hierna wordt “bewezen” dat alle natuurlijke getallen gelijk zijn. Leg uit wat er mis is met dit “bewijs”. Als bewijs voor ∀(x : N . ∀(y : N . x = y)) volstaat, wegens veralgemening, een bewijs voor x ∈ N ⇒ ∀(y : N . x = y). Voor dit laatste volstaat, wegens veralgemening, een bewijs voor x ∈ N ⇒ (x ∈ N ⇒ x = x).
© Copyright 2024 ExpyDoc