Baggrundsnote om logiske operatorer



Relaterede dokumenter
Elementær Matematik. Mængder og udsagn

De rigtige reelle tal

Matematiske metoder - Opgavesæt

Boolsk algebra For IT studerende

Logik. Helge Elbrønd Jensen og Tom Høholdt Fortolket af Michael Elmegård og Øistein Wind-Willassen.

Udsagnslogik. Anker Mørk Thomsen. 6. december 2013

Boolsk algebra For IT studerende

Omskrivningsregler. Frank Nasser. 10. december 2011

Implikationer og Negationer

Opgaver i logik, torsdag den 20. april

t a l e n t c a m p d k Matematiske Metoder Anders Friis Anne Ryelund 25. oktober 2014 Slide 1/42

Funktionsterminologi

Spilstrategier. 1 Vindermængde og tabermængde

01017 Diskret Matematik E12 Alle bokse fra logikdelens slides

Appendiks 6: Universet som en matematisk struktur

Noter til C# Programmering Selektion

Spilstrategier. Indhold. Georg Mohr-Konkurrencen. 1 Vindermængde og tabermængde 2. 2 Kopier modpartens træk 4

Omskrivningsgymnastik

BOSK F2012, 1. del: Prædikatslogik

Løsning af simple Ligninger

Matematiske metoder - Opgaver

Andengradsligninger. Frank Nasser. 12. april 2011

Grundlæggende matematiske begreber del 2 Algebraiske udtryk Ligninger Løsning af ligninger med én variabel

Logik. Af Peter Harremoës Niels Brock

Boolesk Algebra og det binære talsystem - temahæfte informatik. Oprindelse.

Matematik. 1 Matematiske symboler. Hayati Balo,AAMS. August, 2014

Andengradsligninger. Frank Nasser. 11. juli 2011

Grafmanipulation. Frank Nasser. 14. april 2011

BOSK F2011, 1. del: Udsagnslogik

1 < 2 og 1 > 2 (2.1) er begge udsagn. Det første er sandt det andet er falsk. Derimod er

Induktive og rekursive definitioner

Oprids over grundforløbet i matematik

Differentiation af Potensfunktioner

Regning. Mike Vandal Auerbach ( 7) 4x 2 y 2xy 5. 2x + 4 = 3. (x + 3)(2x 1) = 0. (a + b)(a b) a 2 + b 2 2ab.

Ordbog over Symboler

Gruppeteori. Michael Knudsen. 8. marts For at motivere indførelsen af gruppebegrebet begynder vi med et eksempel.

En forståelsesramme for de reelle tal med kompositioner.

Tal. Vi mener, vi kender og kan bruge følgende talmængder: N : de positive hele tal, Z : de hele tal, Q: de rationale tal.

Matematisk induktion

Elementær Matematik. Tal og Algebra

Vinkelrette linjer. Frank Villa. 4. november 2014

Symbolbehandlingskompetencen er central gennem arbejdet med hele kapitlet i elevernes arbejde med tal og regneregler.

Eksempler på elevbesvarelser af gådedelen:

Teoretiske Øvelsesopgaver:

Kursus 02199: Programmering. Kontrol af programudførelsen. afsnit if (indkomst > ) topskat = (indkomst ) * 0.

π er irrationel Frank Nasser 10. december 2011

Tal og algebra. I kapitlet arbejdes med følgende centrale matematiske begreber: algebra variable. Huskeliste: Tændstikker (til side 146) FRA FAGHÆFTET

brikkerne til regning & matematik tal og algebra F+E+D preben bernitt

Algebra - Teori og problemløsning

ØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER

ØVEHÆFTE FOR MATEMATIK C FORMLER OG LIGNINGER

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

De fire elementers kostbare spejl

JavaScript. nedarvning.

Algebra med Bea. Bea Kaae Smit. nøgleord andengradsligning, komplekse tal, ligningsløsning, ligningssystemer, nulreglen, reducering

Affine rum. a 1 u 1 + a 2 u 2 + a 3 u 3 = a 1 u 1 + (1 a 1 )( u 2 + a 3. + a 3. u 3 ) 1 a 1. Da a 2

Lineære differentialligningers karakter og lineære 1. ordens differentialligninger

3 Algebra. Faglige mål. Variable og brøker. Den distributive lov. Potenser og rødder

Brug og Misbrug af logiske tegn

3 Algebraisk Specifikation af Abstrakte Datatyper.

Regneoperationerne plus og minus er hinandens omvendte regneoperation og at gange og dividere er hinandens omvendte regneoperation.

Forløb om undervisnings- differentiering. Elevark

Gödel: Über formal unentschiedbare Sätze der Principia Mathematica und verwandter Systeme I, 1931

Diskrete Matematiske Metoder. Jesper Lützen

Eksempel på den aksiomatisk deduktive metode

OM BEVISER. Poul Printz

Symbolsprog og Variabelsammenhænge

Grundlæggende Matematik

Matricer og lineære ligningssystemer

Eleven kan handle med overblik i sammensatte situationer med matematik. Eleven kan anvende rationale tal og variable i beskrivelser og beregninger

Algebra. Dennis Pipenbring, 10. februar matx.dk

Euklids algoritme og kædebrøker

VisiRegn: En e-bro mellem regning og algebra

Programmering for begyndere Lektion 2. Opsamling mm

Matematik YY Foråret Kapitel 1. Grupper og restklasseringe.

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Polynomier. Indhold. Georg Mohr-Konkurrencen. 1 Polynomier 2. 2 Polynomiumsdivision 4. 3 Algebraens fundamentalsætning og rødder 6

Om brugen af matematiske tegn og objekter i en god matematisk fremstilling

Matematisk argumentation

Egenskaber ved Krydsproduktet

1 Om funktioner. 1.1 Hvad er en funktion?

Ligningsløsning som det at løse gåder

Årsplan i matematik klasse

Alt dette er også grundlaget for digitalteknikken, som er baseret på logiske

og til summer af stambrøker. Bemærk: De enkelte brøker kan opskrives på flere måder som summer af stambrøker.

Oversigt over Forenklede Fælles Mål i forbindelse med kapitlerne i MULTI. Modellering

På en digital indgang kan en computer kun se forskel på, om en kontakt er tændt eller slukket. Men til gengæld er den hurtig og god til at regne.

Matematik - undervisningsplan Årsplan 2015 & 2016 Klassetrin: 9-10.

Transkript:

Baggrundsnote om logiske operatorer Man kan regne på udsagn ligesom man kan regne på tal. Regneoperationerne kaldes da logiske operatorer. De tre vigtigste logiske operatorer er NOT, AND og. Den første NOT har kun ét argument (og svarer til et fortegnsskift). Den er defineret ved sandhedstavlen p TRUE FALSE NOT p FALSE TRUE dvs. den skifter sandhedsværdi: TRUE bliver til FALSE og omvendt. Anvendes den to gange fås derfor identiteten: NOT (NOT p) = p Koder vi sandhedsværdierne med 0 (for FALSE) og 1 (for TRUE) svarer det til regneoperationen NOT p = 1 p De to andre logiske operatorer har begge netop to argumenter (og svarer lidt til regneoperationerne plus og gange). De er defineret ud fra sandhedstavlerne p q p AND q FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE FALSE TRUE TRUE TRUE p q p q FALSE FALSE FALSE FALSE TRUE TRUE TRUE FALSE TRUE TRUE TRUE TRUE dvs. AND er kun sand, når begge udsagnene er sande, ligesom kun er falsk, når begge udsagnene er falske, dvs. er kun sand når mindst et af udsagnene er sandt. Koder vi igen sandhedsværdierne med 0 og 1 svarer det denne gang til regneoperationerne p AND q = p q p q = p + q p q Læg mærke til det ekstra led i regneoperationen svarende til, der altså ikke helt opfører sig som plus! Det ekstra led sikrer netop at 1 1 giver 1. Hvis dette led ikke havde været der, havde de logiske operationer opført sig fuldstændigt som gange og plus. 1

Det er nemt at anvende AND og flere gange I træk. Vi behøver ikke engang sætte parenteser (dvs. de opfylder den associative lov). Det samlede udsagn p 1 AND p 2 AND AND p n er sandt, netop når alle udsagnene er sande. Det samlede udsagn p 1 p 2 p n er falsk, netop når alle udsagnene er falske (og dermed sandt netop når mindst ét af deludsagnene er sande). De har altså så at sige modsat opførsel og kan derfor knyttes sammen via NOT operationen (hvor parenteserne på højre side rent faktisk er overflødige): NOT (p 1 AND p 2 AND AND p n ) = (NOT p 1 ) (NOT p 2 ) (NOT p n ) NOT (p 1 p 2 p n ) = (NOT p 1 ) AND (NOT p 2 ) AND AND (NOT p n ) Det er nemt at formalisere et sammensat udsagn som siger at mindst et af deludsagnene er sandt, idet det sammensatte udsagn p 1 p 2 p n jo netop betyder at mindst ét af udsagnene er sandt. Men det er svært at formalisere et sammensat udsagn som siger at højst et deludsagnene er sandt eller netop et af deludsagnene er sandt. Man kunne tro at det ville hjælpe at indføre den logiske operator X (exclusive or), dvs. enten eller, men ikke dem begge, med sandhedstavlen p q p X q FALSE FALSE FALSE FALSE TRUE TRUE TRUE FALSE TRUE TRUE TRUE FALSE dvs. X er sand netop når de to udsagn har forskellige sandhedsværdier. Koder vi sandhedsværdierne med 0 og 1 svarer det til regneoperationen p X q = p + q 2p q = p (1 q) + (1 p) q. Den virker fint på to udsagn, men anvender vi den på mange udsagn skal vi passe på. Ser vi fx på tre udsagn fås sandhedstavlen (hvor vi regner fra venstre mod højre): 2

p q p X q r p X q X r FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE FALSE TRUE TRUE TRUE FALSE TRUE FALSE TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE FALSE FALSE TRUE TRUE FALSE TRUE TRUE Problemet ligger i den sidste række, hvor tre gange TRUE giver TRUE, fordi de to første giver FALSE! Udvides ræsonnement ser vi at det sammensatte udsagn p 1 X p 2 X X p n er sandt netop når der er et ulige antal sande deludsagn. Det er altså nemt at formalisere en regel om at et lige eller et ulige antal deludsagn er sande eller falske. Men nu var det jo i stedet for regler af typen: højst ét af deludsagnene eller netop ét af deludsagnene, der skulle være sande (eller falske). I stedet må vi så opbygge sådanne sammensatte udsagn fra bunden: Hvis vi fx vil opbygge et udsagn som at netop ét af udsagnene skal være sandt, så svarer det til at hævde følgende påstand: Enten er det p 1 som er sand og de øvrige deludsagn, som er falske eller også er det p 2 som er sand og de øvrige deludsagn som er falske eller også eller også er det p n som er sand og de øvrige deludsagn, som er falske Men det kan vi jo oversætte til følgende logiske udsagn: p 1 AND NOT p 2 AND NOT p 3 AND AND NOT p n or NOT p 1 AND p 2 AND NOT p 3 AND AND NOT p n or or NOT p 1 AND NOT p 2 AND NOT p 3 AND AND p n Hvis det er højst et af udsagnene som skal være sandt så må vi yderligere tilføje udsagnet NOT p 1 AND NOT p 2 AND AND p n der også tillader alle udsagnene at være falske. Læg i øvrigt mærke til, at vi ikke har haft brug for parenteser, fordi det er underforstået at AND binder hårdere end (ligesom gange binder hårdere end plus), ligesom det er underforstået at NOT binder hårdere end AND og. Det sidste varierer dog lidt fra computer algebra system til computer algebra system. Et fortegnsskift burde binde hårdere end gange og plus, men her skal man passe på! Fx vil mange computer algebra systemer give -2 4 = -16, fordi de lader potenser binde hårdere end fortegnsskift. Det samme gælder håndteringen af NOT-operatoren. 3

Ethvert sammensat udsagn kan nu omskrives på standardformen: ( AND AND AND ) ( AND AND AND ) hvor de enkelte argumenter enten er et deludsagn p eller dets negation NOT p. Det svarer til omskrivning af et algebraisk udtryk til en flerleddet størrelse, hvor de enkelte led består af produkter, og hvor leddene er bundet sammen af additioner. Standardformen er bl.a. bekvem fordi enhver sandhedstavle umiddelbart kan oversættes til et logisk udsagn på standardform (med andre ord: Sandhedstavlen er blot en anden repræsentation af standardformen). Vi kan fx se på sandhedstavlen: p q r Sammensat udsagn TRUE TRUE TRUE TRUE TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE Vi starter da med at notere hvilke kombinationer, der giver TRUE (hvis der slet ikke er nogen er vi færdige, for så er der blot tale om det konstante udsagn FALSE): p q r Sammensat udsagn TRUE TRUE TRUE TRUE TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE Til hver række, der giver TRUE knytter vi så et led, idet vi bruger p, hvis deludsagnet p har værdien TRUE og NOT p, hvis deludsagnet p har værdien FALSE osv. Så sandhedstabellen læses således: Det samlede udsagn er sandt, hvis der enten gælder at p er sand og q er sand og r er sand (1. række) p er sand og q er sand og r er falsk (2. række) p er sand og q er falsk og r er sand (3. række) p er falsk og q er falsk og r er sand (7. række) p er falsk og q er falsk og r er falsk (8. række) Men det kan vi jo så oversætte led for led: 4

p q r Sammensat udsagn TRUE TRUE TRUE TRUE p AND q AND r TRUE TRUE FALSE TRUE p AND q AND NOT r TRUE FALSE TRUE TRUE p AND NOT q AND r TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE TRUE TRUE NOT p AND NOT q AND r FALSE FALSE FALSE TRUE NOT p AND NOT q AND NOT r Det sammensatte udsagn er altså givet ved p AND q AND r p AND q AND NOT r p AND NOT q AND r NOT p AND NOT q AND r NOT p AND NOT q AND NOT r De tre logiske operatorer NOT, AND og er altså tilstrækkelige til at opbygge et vilkårligt logisk udsagn. I kraft af identiteterne p q = NOT (NOT p AND Not q) p AND q = NOT (NOT p NOT q) kan man faktisk undvære enten eller AND (men ikke dem begge!). Men hvis man ønsker det kan man også nøjes med en enkelt binær operator, blot ikke AND (eller ). Inden vi viser det kan vi lige danne os et overblik over alle de mulige binære logiske operatorer. Der er præcis fire mulige kombinationer af sandhedsværdierne for p og q. Da hver af dem har netop to mulige sandhedsværdier bliver der i alt 2 4 = 16 mulige binære logiske operationer. Halvdelen af dem er symmetriske, dvs. de afhænger ikke af rækkefølgen for p og q, dvs. de skelner ikke mellem hvem af dem der er sand og hvem af dem der er falsk, idet tilfælde hvor den ene er sand og den anden falsk. p q T AND X N EQ CIMP IMP NOT NOT NAND F p q q p p q q p T T T T F F T T F F T T T T F F F F T F T F T F T F T F T F T F T F T F F T T F T F T F T F F T F T F T F T F F T F F T F T T F T T F F T T F F Her står N og NAND for negationen til og AND. Tilsvarende står EQ for Equivalent, hvilket er negationen til X og hævder at de to udsagn har samme sandhedsværdi (hvor X hævdede de havde modsat sandhedsværdi). Ækvivalensoperatoren EQ har samme problem som den eksklusive enten eller operation: Den kan ikke uden videre udvides til flere argumenter (uden at mi- 5

ste sin umiddelbare betydning, nemlig at alle argumenterne har samme sandhedsværdi). Endelig står IMP for imply (implikation), dvs. medfører kommandoen, hvor vi slutter forlæns fra p til q: Hvis p så q. Tilsvarende står CIMP for Converse implication, hvor vi slutter baglæns fra q til p, dvs. hvis q så p. Implikationen er en fuldstændig central logisk operator (og også den sværeste at tilegne sig), idet den indgår i formaliseringen af et matematisk bevis. Hvis vi fx vil bevise en sætning q kan vi gøre det direkte ved at gå ud fra en kendt sætning p og så vise at p medfører q: DIREKTE BEVIS: p AND (p IMP q) IMP q Tilsvarende kan vi vise en sætning q ved hjælp af et indirekte bevis, idet vi viser at den modsatte sætning NOT q medfører en modstrid med en kendt sætning p. INDIREKTE BEVIS: p AND (NOT q IMP NOT p) IMP q De to sidste operationer har ikke traditionelle navne, men der er selvfølgelig bare tale om negationerne til de to implikationer. Til slut vil vi se lidt på oversættelsen fra dagligdags sprog til logiske udsagn. En sådan oversættelse er behæftet med de samme tvetydigheder som alle andre oversættelser. Her noterer vi os bl.a. at man i almindelige sætninger ikke bruger parenteser som man gør i logiske udsagn, hvorfor rækkefølgen af operationerne kan være tvetydig. Oversættelsen er heller ikke entydig fordi det dagligdags sprog er mere fleksibelt og kan kæde udsagn sammen på flere måder. I stedet for at bruge 'og' kan man fx kæde flere deludsagn sammen ved at adskille dem med kommaer. Endelig er dagligdags ord ofte tvetydige. Fx er det uklart om en sætning af formen enten eller udelukker at begge deludsagnene kan være opfyldt. Vi kunne være tilbøjelige til at mene at brugen af ordet 'enten' typisk skærper sætningen og derfor udelukker at de begge kan være opfyldt, men praksis er ikke entydig. I logik fokuserer vi på (i modsætning til X), fordi den umiddelbart kan udvides til mange deludsagn uden at miste sin grundlæggende betydning. ikke NOT p enten eller p q både og p AND q hverken eller p N q = NOT (p q) hvis så p IMP q medfører p IMP q forudsat p CIMP q = q IMP p med mindre p NEQ q = p X q eller eller p 1 p 2 p 3 og og p 1 AND p 2 AND p 3 6