Propositielogica: Inleiding
Redeneren in het dagelijkse leven
Logica wordt in het dagelijkse leven veel gebruikt.
Restaurant voorbeeld Stel dat je samen met een vriend in een restaurant zit en dat hij vis besteld heeft en jijzelf gevogelte. De kelner komt met twee borden aanlopen. Wat gebeurt er?
Het volgende scenario zal niet vreemd overkomen:. De kelner stelt de vraag wie vis besteld heeft en zet het bord op de juiste plaats aan tafel neer. Zonder verder vragen zal de kelner ook het bord met gevogelte op de juist plek neerzetten. Het antwoord op de vraag volstond voor de kelner om te concluderen waar het bord met gevogelte heen moest. Het door de kelner gehanteerde redeneerschema laat zich, met de speciale notatie van \(v\) voor "vis" en \(g\) voor "gevogelte", opschrijven als: \[v\text{ of } g, \text{niet }v\text{. Dus: }g\text.\] Deze schrijfwijze van de gevolgtrekking, nog formeler in logica taal opgeschreven als \(\bigl((v \lor g)\land \neg\, v\bigl)\rightarrow g\), beschrijft niet alleen het patroon van redeneren van de kelner, maar geldt voor veel meer situaties omdat het doet er niet zo veel toe doet wat de letters \(v\) en \(g\) symboliseren. Een voorbeeld van een soortgelijke logische redenering: een computerscherm valt uit als de verbindingskabel niet goed werkt of het scherm stuk is. Als de verbindingskabel goed functioneert, dan moet het scherm wel stuk zijn.
Maar er is meer aan de hand in dit restaurant voorbeeld: de kelner stelt een vraag om tot een conclusie te komen op basis van het antwoord. De gevolgtrekking is een vorm van rekenen aan informatietoestanden. In het begin zijn er twee mogelijke manieren waarop de twee gerechten over twee personen verdeeld kunnen worden, aangeduid met (\(vg\) en \(gv\)). Het antwoord op de vraag van de kelner reduceert dit tot nog maar één mogelijkheid en de kelner weet wat te doen.
Sudoku Veel personen proberen dagelijks een sudoku puzzel op te lossen. Het eenvoudigst is een \(3\times 3\) sudoku. In deze puzzel heb je een blok van drie keer drie vakjes. In elk vakje hoort een cijfer van 1 tot en met 3 te staan. Je moet een gegeven blok zó invullen dat in elke rij en elke kolom de cijfers 1 tot en met 3 één keer voorkomen. Door logisch redeneren kom je tot de unieke oplossing.
Hoe kan zo'n puzzel opgesteld worden? Logica helpt ook hierbij! Start met een correct ingevuld blok. Kies nu een willekeurig vakje en verwijder het getal hierin. De overblijvende getallen bepalen nog steeds welk getal in het open vakje noodgedwongen moet worden ingevuld; we zeggen "dat is logisch!", maar in feite volgt de invulling uit een logisch geldige redenering. Ga nu door: kies een willekeurig vakje, maak het leeg en ga na of de resterende getallen door logisch redeneren tot maar één invulling kunnen leiden. Herhaal dit tot je geen vakje meer kunt leeghalen. Je hebt nu een minimale puzzel gevonden en omdat je natuurlijk niet verteld hoe je aan dit blok bent gekomen, is het voor een ander inderdaad een logische puzzel geworden.
Patronen in logisch redeneren Gevolgtrekkingen hebben een typerende globale vorm: er zijn één of meer uitgangspunten, meestal hypothesen en premissen genoemd, gevolgd door een conclusie In het restaurant voorbeeld geeft de tekst "Dus:" aan dat er een conclusie wordt getrokken. Een tweede voorbeeld: \[\begin{array}{ll} \text{premisse:} & \text{Als je fiets gestolen is, dan verhef je je stem.}\\ \text{premisse:} & \text{Je verheft je stem niet.}\\ \text{conclusie:} & \text{Dus: Je fiets is niet gestolen.} \end{array}\] Het patroon van redeneren wordt gesymboliseerd door \(\bigl((p\rightarrow q) \land \neg\, q\bigr)\vDash\neg\, p\), waarbij "je fiets is gestolen" en "je verheft je stem" vervangen zijn door de letters \(p\) en \(q\). Het symbool \(\vDash\) geeft aan dat de formule rechts van dit teken logisch volgt uit de formule aan de linkerkant; \(\neg\,\) geeft een ontkenning van een uitspraak aan ("niet" in een natuurlijke taal); de symbolen \(\lor\) en \(\land\) stellen "of" en "en" voor in natuurlijke talen en maken het mogelijk om samenstelde uitspraken te doen. De gevolgtrekking is op deze manier teruggebracht tot een overzichtelijker abstracte vorm.
Een variant van dit voorbeeld is: \[\begin{array}{ll} \text{premisse:} & \text{Als je fiets gestolen is, dan spreek je niet op normaal volume.}\\ \text{premisse:} & \text{Je spreekt op normaal volume.}\\ \text{conclusie:} & \text{Dus: je fiets is niet gestolen.} \end{array}\] Het redeneerschema is nu \(\bigl((p\rightarrow \neg\, q) \land q\bigr)\vDash \neg\, p\), waarbij \(p\) en \(q\) nu letters zijn die respectievelijk "je fiets is gestolen" en "je spreekt op normaal volume" symboliseren.
In de voorbeelden tot nu toe zijn we heel precies geweest omtrent de aard van de veronderstellingen en de conclusie: voor elke bewering is objectief vast te stellen of die waar of onwaar is; een derde mogelijkheid (zeg misschien waar of onwaar, gedeeltelijk waar of onbekend) sluiten we uit. In het restaurant voorbeeld is er een bestelling geweest en moet dus duidelijk zijn wie de vis of het gevogelte krijgt. In het laatste voorbeeld is stemverheffing waarneembaar (tenminste als de waarnemer je goed kent) en doe je dit wel of niet. Een natuurlijke taal maakt het echter mogelijk uitspraken te doen waarvan niet eenvoudig gezegd kan worden of ze waar of niet waar zijn. Van de uitspraak "je bent boos" is door een derde niet objectief vast te stellen of deze bewering waar of onwaar is; je veinst misschien boosheid of andersom je bent wel boos, maar maakt dit op geen enkele wijze kenbaar.
Propositie en waarheid
We spreken van een propositie als het een bewering of uitspraak is, uitgedrukt in een zinvolle volzin die een feit mededeelt, waarvan objectief is vast te stellen of deze waar of onwaar is.
Vaak wordt hierbij impliciet naar een context verwezen.
Voorbeelden en tegenvoorbeelden
- De deur staat open (een ware propositie)
- \(x+1=0\) (geen propositie: het hangt van de waarde van \(x\) af of dit waar of onwaar is)
- \(a^2+b^2=c^2\) (geen propositie: waarheid hangt af van \(a\), \(b\) en \(c\), of van de context.
- \(4\) is een priemgetal (een onware propositie)
- Is Jan een jongensnaam? (geen propositie want geen constaterende zin, maar een vraag)
Validiteit van een redenering Propositielogica houdt zich o.a. bezig met het nagaan of er sprake is van een redenering die logisch geldig of valide is, dat wil zeggen dat in elke situatie waarin men alle premissen voor waar aanneemt, de conclusie ook noodgedwongen voor waar aangenomen moet worden. Een alternatieve, maar equivalente definitie is: een redenering is juist als er geen tegenvoorbeelden zijn, d.w.z. situaties waarin alle premissen waar zijn, maar de conclusie toch onwaar is.
Let wel op: validiteit gaat om de logische correctheid van de redenering, niet om de waarheid van de premissen of de conclusie. Twee voorbeelden: \[\begin{array}{ll} \text{premisse:} & \text{Een mens is onsterfelijk.}\\ \text{premisse:} & \text{Madonna is een mens}\\ \text{conclusie:} & \text{Madonna is onsterfelijk}\end{array}\] Deze redenering is logisch geldig, maar de eerste premisse is onwaar. \[\begin{array}{ll} \text{premisse:} & \text{De berekende uitslag voor jouw vak is 5.5 of meer.}\\ \text{premisse:} & \text{Als de berekende uitslag 5.5 of meer is, dan heb je een voldoende.}\\ \text{conclusie:} & \text{Je hebt een voldoende voor dit vak.}\end{array}\] Als je een voldoende hebt gekregen dan weet je dat jouw berekende uitslag minstens 5.5 is. Als je geen berekende uitslag groter of gelijk aan 5.5 hebt, dan weet je in principe niet of je wel of niet een voldoende gekregen hebt; misschien zijn er wel allerlei redenen waarom de docent toch een voldoende gegeven heeft. Als jouw berekende uitslag wel minstens 5.5 is, maar je toch geen voldoende hebt gekregen, dan voel je je bedrogen en ga je reclameren.
Bij een valide redenering \(p\vDash q\), die bij de laatst beschreven situatie pas, kun je dus alleen het volgende zeggen:
- \(p, p\rightarrow q\vDash q\): Als \(p\) waar is, dan is de conclusie \(q\) ook waar.
- \(\neg\,q, p\rightarrow q\vDash \neg\,p\): Als de conclusie onwaar is, dan is \(p\) ook onwaar.
Redeneren in gewone taal Precieze bewoordingen vinden om een gedachte of redenering exact weer te geven is lang niet altijd eenvoudig. Bovendien heeft iedereen een eigen taalgevoel, wat tot gevolg kan hebben dat degene die een zin uitspreekt hem anders interpreteert dan degene die de zin hoort.
Stel dat een vader tegen zijn kind zegt: "Als je braaf bent, krijg je een snoepje." Bedoelt hij dan ook "Als je niet braaf bent, krijg je geen snoepje"? Hoe braaf moet het kind eigenlijk zijn om iets te krijgen? Wat als het kind een heel klein beetje niet braaf is?
Nog onduidelijker wordt het als de vader tegen het kind zegt: "Als je braaf bent, krijg je een ijsje of frisdrank." Kan het kind als het braaf is een ijs én een frisdrank krijgen? Mag het kind kiezen tussen een ijsje of een frisdrank? Kan het kind ook iets krijgen als het niet braaf is, of is dat uitgesloten?
Dergelijke onduidelijkheden proberen we te vermijden door uitspraken en redeneervormen te onttrekken aan gewone talen en te formaliseren in symbolische of formele logica.
Tot slot: bij logisch redeneren denken velen dat je aan de gegeven uitspraken er steeds meer toevoegt totdat je de conclusie kan rechtvaardigen. Maar even belangrijk als toepassing is het weerleggen van een redenering. Je toont dan aan dat een onware bewering uit de redenering volgt en dat die de gevolgtrekking op losse schroeven zet. Een onware conclusie betekent niet dat alle premissen fout zijn, maar alleen dat minstens één van de premissen onwaar is. Welke van de premissen onjuist is kan nog heel wat werk opleveren.
Oefening Stel dat elke individuele gevolgtrekking hieronder, met kleine letters als symbolen voor beweringen, geldig is. \[\begin{array}{l} &a\land b\land c\rightarrow d\\ &a\rightarrow d\\ &e\rightarrow f\\ & a\rightarrow b\\ & e\land f\land b\rightarrow g\end{array}\] Uit betrouwbare bron weet je dat bewering \(a\) waar is en bewering \(g\) onwaar. Van welke bewering kunnen je de waarheid of onwaarheid vaststellen?
Oplossing
Uit \(a\rightarrow b\) volgt dat de bewering \(b\) waar is. Stel dat de bewering \(c\) waar is, dan volgt uit \(a\land b\land c\rightarrow d\) dat de bewering \(d\) waar is. Dan volgt uit \(a\land d\rightarrow e\) dat de bewering \(e\) waar is. Maar als \(e\) waar is dan is volgens \(e\rightarrow f\) de bewering \(f\) ook waar. Omdat nu \(e\), \(f\) en \(b\) ware beweringen zijn volgt uit \(e\land f\land b\rightarrow g\) dat de bewering \(g\) waar is. Maar we wisten al uit betrouwbare bron dat \(g\) onwaar is. Dit kan niet allebei het geval zijn. Dus: óf de betrouwbare bron is toch niet zo betrouwbaar, óf de bewering \(c\) moet onwaar zijn. Maar dan is de bewering \(d\) onwaar en dientengevolge is de bewering \(e\) onwaar. De deelconclusie \(f\) is dan waar of onwaar; meer weten we niet. Voor de rest weten we dan \(a\) en \(b\) ware beweringen zijn en dat de beweringen \(d\), \(d\), \(e\) en \(g\) onwaar zijn.