DERFOR: i i<k A[i]=0 Av og A[k]=0 og j<k j =k følger A[j]=0 DERFOR: A[i]=0 og A[k]=0 Av og følger A[j]=0 i i<k j k DERFOR: A[i]=0 og A[k]=0 Av følger A[j]=0 i i<k j k DERFOR: A[i]=0 og A[k]=0 Av følger A[i]=0 i i<k i i k DERFOR: i i<k A[i]=0 A[k]=0 Av følger i i k A[i]=0 DERFOR: ( i i<k A[i]=0) A[k]=0 i i k A[i]=0 Teorem Ferdiglaget formelt bevis Av i i<k A[i]=0 og j<k følger j<k A[j]=0 og A[j]=0 1: Av A[k]= 0 og j = k følger A[j]= 0 2: 1
Nivå 1: Formelspråket. Formelle bevis: språk-nivåer 2: Sekventer, P 1,P 2,...,P Nivå n Q, n 0, omtaler formler. En - er en påstand om logisk konsekvens: at teoremdelen, sekvent formelen Q, følger logisk av antagelsene, formlene P 1,...,P n. S deduksjonsregler) omtaler Bevisregler (inferensregler, 1;S 2 ;...;S m T, m 0, beskriver en type Bevisregelen sekventer. Nivå 3: bevisskritt: at konklusjonen, en sekvent av formen T, formelle anses som bevist dersom hver av premissene, sekventer av kan formene S 1,...,S m, er bevist. - P Q; - P - Q Eksempel: Modus ponens kan uttrykkes slik: 4: Naturlig språk, ispedd matematiske notasjoner, blant Nivå metavariable, brukes til å omtale alt det andre. annet 2
Sekvent-kalkyle (SC) : P - P TRN : RFL 1 - P,, 1, 2 - P, 1 - P ;, 2,P - Q, 1, 2 - Q, - P, x t - P x t AI : VI : hver, angir en mengde antagelser listet opp i vilkårlig hvor Reglene uttrykker egenskapene til logisk konsekvens. rekkefølge. (Reeksivitet): P følger av P (for veldenert formel P ). RFL (Transitivitet): Hvis P følger av antagelser, 1, og Q følger TRN P (og antagelser, 2 ), da følger Q av, 1 (og, 2 ). av (Introduksjon av Antagelse): En logisk konsekvens ødelegges AI av ekstra antagelser. ikke (Variabel-Instansiering): En fri variabel x av type T står for VI en vilkårlig T -verdi. Den kan derfor erstattes av vilkårlig (veldenert) T -uttrykk. Alle frie x-forekomster i sekventen står for samme verdi. 3
er her underforstått at hver premiss kan ha (ekstra) antagelser. x meng- Det Isåfall skal de nedarves til konklusjonen., er av som har fri forekomster av variabelen x. (Antagelseden antagelser fri x i VI nedarves på vanlig måte, dvs. uforandret.) uten Symbolene P, Q,,,x,t er å forstå som metavariable, Merknad: variable på et språknivå høyere enn formelspråket. P, Q står dvs. formler,, for en formelmengde, metavariabelen x står for en for i formelspråket (som ikke behøver å hete x), og t står variabel Forkortede deduksjonsregler - P ; P - Q - Q P - - P,, x - P (, x ) x t - P x t TRN : AI : VI : for et uttrykk (underforstått av samme type som variabelen x). 4
Bevis i predikatkalkylen av funksjoner som opptrer i formelspråket kan fastlegges Betydningen dels ved aksiomer, dels ved bevisregler. Det er tradisjon å uttrykke betydningen av de logiske operatorene ved bevisregler, for mens andre funksjoner blir beskrevet ved aksiomer. deduksjon, ND, (se neste foil) er et slikt sett av bevisregler. Naturlig Det består av regler for introduksjon (I) og eliminasjon (E) av logiske operatorer i teoremdelen av sekventer. Reglene til elementære tankeskritt ved resonnement om formler i svarer ordens predikatkalkyle. 1. uten aksiomer i tillegg er et bevissystem for predikatkalkylen ND sådan. De bevisbare teoremer kalles her tautologier. En som er en formel som er sann for alle kombinasjoner av tautologi for fri variable og for alle tolkninger av funksjoner andre verdier enn logiske operatorer. 5
Naturlig deduksjon (ND) P ; - Q - P Q - - P Q - P - P Q - Q og I : E : P - P Q og - Q - - P Q - P Q; P - R; Q - R - R E : I : P - Q - P Q - P Q; - P - Q E : I : P - x P - x P - P x t - ( ) E : I : P x t - - x P - x P ; P - Q - Q ( ) I : E : - P ; - P - f P - f - P fe : fi : E : - P - P ( ): Bare P og evt. antagelser for første premiss i E kan ha fri x. 6
Bevis for (A B C) (A C) A - A A B C - A B C I A B A - E A B - C, A C I A B - C A C I - (A B C) (A C) er en trestruktur av sekventer, hvor hver bladnode er Beviset trivial-sekvent (en sekvent av formen P - P ), og hvor hver en node fremkommer som konklusjonen i (en instans av) en indre Rotnoden er selve teorem-sekventen. ND-regel. 7
for Bevis P) - - - P) P P P P (P (P P P I - P P P I - P P P fi fi P, P) - (P f P, P) - (P f fe P) - (P P fe P) - (P P fi (P P) - f fe - (P P) E - P P 8
system S er sunt hvis alle formler bevisbare i S er gyldige. S Et komplett hvis alle gyldige formler i formelspråket er bevisbare er Bevisbarhet og gyldighet logisk system (sett av bevisregler og evt aksiomer) S bør svare Et korrekt logisk tenkning basert på den matematiske betydnin- til av formler i formelspråket. En formel F er bevisbar i S om gen nnes et S-bevis for sekventen - F. F er gyldig om den har det t for alle verdikombinasjoner av fri variable, og for alle verdien av andre funksjoner enn de logiske operatorene, som tolkninger tilfredsstiller alle aksiomer. i S. kan vises at ND-systemet, utvidet med sekvent-regelen RFL, Det er sunt og komplett for selve predikatkalkylen, dvs. for tau- både tologier. 9
intet konsistent aksiomsett er sterkt nok til at alle gyldige at om de aktuelle funksjonene kan bevises formelt. Det setninger altså si at intet formelt system kan være komplett for slike vil strukturer. naturlige tall med addisjon, multiplikasjon og likhet er Allerede nok til at intet komplett system kan nnes. komplisert har dette få konsekvenser for resonnementer relevante Heldigvis programutvikling. for Gödel's ufullstendighetsteorem Et aksiomsett uten selvmotsigelser sies å være konsistent. sats avslører en fundamental svakhet ved formallogiske Gödel's Den sier at det nnes matematiske strukturer slik systemer. 10
er systematiske og rimelig enkle. Systematikken består ND-bevis at uttrykk som stammer fra antagelser, brytes ned til mindre i Konstruksjon av bevis ved hjelp av E-regler; som deretter settes sammen til enheter ønskede teoremet ved hjelp av I-regler, samtidig med at an- det tagelsene (som regel alle) blir kastet av. å lage slike bevis møter vi vansker av særlig to slag: For Hvordan ser trivialsekventene ut som det lønner seg å starte med? Det hender at bevis ved selvmotsigelse, dvs. fi fulgt av fe, må benyttes på lite naturlige måter (se beviset for P P ). 11
konstrueres baklengs, der hvor hovedoperatoren i teoremdelebevis bestemmer den I-regel som kan brukes. Bakoverkonstruksjon I-regel introduserer hovedoperatoren i teoremdelen av en Hver Dermed blir strukturen i et ND-bevis i noen grad sekvent. bestemt av strukturen til teoremet. Et stykke på vei kan ND- I-regler bestemmer også premissene entydig ut fra konklusjonen. Noen Det gjelder bl.a. I, I og I. Her er også premissene hvis konklusjonen er det, slik at man ikke ledes inn bevisbare blindgater. (Det siste gjelder ikke for I, som derfor er lite i brukbar til bakoverkonstruksjon.) denerer et system BPC med bevisregler analoge med NDreglene, Vi men bedre egnet for bakoverkonstruksjon. BPC in- T-regler og A-regler som svarer til operatorintroduksjon neholder teoremdelen av en sekvent hhv. i en valgt antagelse. i 12
- P. 13 T : Bakover-konstruksjon: BPC P ; - Q - P Q - A : P,Q - R P Q - R T : P - Q - P Q Q - P - P Q A : - R; P - Q R P - Q R og P - Q - P Q - R; P - Q R P - Q R T : A : T : P - Q Q - P A : Q - P P - Q T : P x x - x P - x ny A : P x t, x - P Q x - P Q T : P x x t P - - x P A : P x x - Q x P - Q x ny er en metaoperator som negerer ved å sette til eller fjerne, Overstrekning at aldri oppstår, hhv. bytte t og f. t svarer til en tom antagelse som slik alltid kan underforståes. Dermed har f.eks. T spesialtilfellet P - f
Bruk av BPC alle reglene i BPC er konstruktive, i den forstand at premissene Nesten er bestemt tekstlig av konklusjonen. Unntakene er T A, hvor uttrykket t ikke fremgår direkte. (Det er imidlertid og å forsøke uttrykk som bygger på variable og funksjoner som nok i konklusjonen og evt. aksiomer, pluss i noen tilfeller forekommer konstanter, høyst en pr. type som opptrer.) ekstra at noen av reglene i BPC introduserer nye antagelser i Merk Ved mekanisk bruk av BPC-regel til bakoverkon- premissen(e). må antagelser i konklusjonen generelt videreføres til struksjon regelens premisser. Dette leder ofte til sekventer med logisk alle redundante antagelser og dermed mindre oversiktlige bevis. beskytter mot blindgater, men ikke mot dumme, BPC-reglene unyttige bakoverskritt, f.eks. operasjon på redundant antag- dvs. else, dårlig valg for t i T eller A, eller operasjon på en P i P -P. 14
AI, A R(x, y) - R(x, y) Bevis konstruert baklengs R(x, y), R(x, y) - R(y, y) T R(x, y) - R(x, y) R(y, y) A y) (R(x, - y)) y) R(y, R(x, AI, T AI, T (R(x, y) R(y, y)) - R(x, x) R(x, y) (R(x, y) R(y, y)) - (R(x, x) R(x, y)) z: T R(x, z) R(z, y) T T (R(x, y) R(y, y)) - z : T R(x, z) R(z, y) T - (R(x, y) R(y, y)) z: T R(x, z) R(z, y) - z : T R(x, z) R(z, y) 15
Generaliserte bevis bakoverkonstruksjon med BPC er det naturlig å generalisere Ved trivialsekvent til å være av formen, - P, hvor enten begrepet Pɛ, eller Q, Qɛ, for en formel Q. å vise andre teoremer enn tautologier trengs aksiomer om For (andre enn logiske operatorer) som inngår. Aksiomer, funksjoner A, er legale bladnoder i et bevis. For å vise en (ny) bevisregel - regelens premisser legale bladnoder. er er tidligere viste teorem-sekventer legale bladnoder, og Generelt ihht. bevist inferensregel er legale. bevisskritt manuell bevisføring anbefales det å benytte BPC til bakoverkonstruksjon Ved et stykke på vei, mens ND benyttes til å trekke slut- fra aksiomer og avleirede antagelser. (Ved å ta aksiomene ninger antagelser for teoremet kan BPC evt. benyttes hele veien.) som 16
kan håndteres formelt v.hj.a. regel for substitusjon, en spesialregel for Likhet over Bool, samt aksiomer om reeksivitet, et for hver type som opptrer. likhet Predikatlogikk med likhet EQ :,α t - P α t ; - t=t, α t - P α t B= : P -Q; Q -P -P=Q α i EQ er en hjelpevariabel som peker ut de forekomstene av t i konklusjonen EAX T : - x:t x=x som skal erstattes av t ved bakoverkonstruksjon. - x:t x=x y =z - y =z x=y - x=y Vi viser at likhetsrelasjonen er symmetrisk og transitiv. E y =y x=y - x=y - EQ, : P t: y=α, x, t y : - x=y y =x T x=y y =x - EQ, : P t: α=z, x, t y : x=y, - y=z x=z A x=y - y=z x=z T x=y y=z x=z - 17
i i<k A[i]=0 - i i<k A[i]=0 (triviell) 1. j<k -j<k (triviell) 2. i i<k A[i]=0 -j<k A[j]=0 (1, E) 3. i i<k A[i]=0, j<k - A[j]=0 (3,2, E) 4. A[k]=0 -A[k]=0 (triviell) 5. j =k - j =k (triviell) 6. A[k]=0, j=k - A[j]=0 (5,6,EQ) 7. i i<k A[i]=0, A[k]=0, j<k j=k - A[j]=0 (4,7, A ) 8. m n (m n)=(m<n m=n) (aksiom) 9. - n (j n)=(j<n j=n) (9, E) 10. - (j k)=(j<k j=k) (10, E) 11. - i i<k A[i]=0, A[k]=0, j k - A[j]=0 (8,11,EQ) 12. i i<k A[i]=0, A[k]=0 -j k A[j]=0 (12, T ) 13. i i<k A[i]=0, A[k]=0 - i i k A[i]=0 (13, T ) 14. ( i i<k A[i]=0) A[k]=0 - i i k A[i]=0 (14, A ) 15. ( i i<k A[i]=0) A[k]=0 i i k A[i]=0 (15, T ) 16. - Hovedeksempel, formelt 18
T, EQ (Aksiom - j, k :Int j k j<k j=k) : T, j<k j=k Vis A[j]=0 Anta av antagelser som en LIFO stakk, er det tilstrekkelig å skrive opp hver listen én gang og angi dens skop ved innrykk. Vi benytter antagelser antagelse ved delbevis forover, uten å bry oss med å skrive opp de tilsvarende direkte trivialsekventene. å føre baklengsskritt nedover arket og forlengs bevis mot høyre oppnår vi Ved skrive detaljene ned i den rekkefølge de opptrer under beviskonstruksjonen. å Forslag til bedre notasjoner Hovedeksempel, ( i i<k A[i]=0) A[k]=0 i i k A[i]=0 Vis A : T, A1: i i<k A[i]=0 og A2: A[k]=0 Anta i i k A[i]=0 Vis A : : E A[j]=0 Anta A1 A[j]=0 j<k = j<k = j : A2 =k = A[j]=0 j=k,eq Anta T/A-regler: bruk av BCP {EQ} baklengs, mens A = B,R C angir angir Her - A; - B et R-skritt forover (R ɛnd {EQ}):. Hvis det er mulig å bruke - C 19
Likhetslogikk likhetslogikk er alle aksiomer kvantorfrie ligninger, evt. av formen I P =t. Formalsystemet har 2 regler, EQ og en regel for å instansiere variable (som svarer til I fulgt av E). Vis m<m+1. Eksempel: A1: - t x t Aksiomer: - x=x t A2: Bevis: - x<y. A3: x<y+1 x=y m =m m<m t m<m t A1 A2 A3 m<m+1 at beviset konstrueres ved å anvende EQ baklengs: teoremet Merk er utgangspunktet, og sluttresultatet svarer til trivialsekventen t - t. Instansiering av aksiomer er derimot forlengs bevisskritt. Bevismåten kalles termomskriving. 20