4.3. Matemaattinen induktio Matemaattinen induktio: Deduktion laji Soveltuu, kun ominaisuus on osoitettava olevan voimassa luonnollisilla luvuilla. Suppea muoto P(n) : Ominaisuus, joka joka riippuu luvusta n. (=Induktiohypoteesi) Väite: P(n) on voimassa aina kun n = 1, 2, 3,.... Matemaattisen induktion suppea muoto: (1) P(1) (=perusaskel) on voimassa (2) Jos P(k) (induktio-oletus) on voimassa, niin P(k + 1) (=induktioväite)on voimassa aina kun k = 1, 2,....
Esimerkki 4.6. Osoita, että 1 + 2 + 2 2 + 2 3 + + 2 n = 2 n+1 1 aina kun n = 1, 2,.... Ratk. Merkitään P(n) : 1 + 2 + 2 2 + 2 3 + + 2 n = 2 n+1 1 On todistettava: P(n) on voimassa aina kun n = 1, 2,.... (1) Koska 1 + 2 1 = 3 = 2 2 1, niin P(1) on voimassa. (2) Induktio-oletus: P(k) : 1 + 2 + 2 2 + 2 3 + + 2 k = 2 k+1 1 on voimassa. Induktioväite: P(k + 1) : 1 + 2 + 2 2 + 2 3 + + 2 k+1 = 2 k+2 1 on voimassa. Induktioväitteen todistus. 1 + 2 + 2 2 + 2 3 + + 2 k+1 = 1 + 2 + 2 2 + 2 3 + + 2 k + 2 k+1 = 2 k+1 1 + 2 k+1 = 2 2 k+1 1 = 2 k+2 1 P(k + 1) on voimassa. Kohtien (1) ja (2) perusteella on P(n) voimassa aina kun n = 1, 2,....
Matemaattinen induktio deduktiota Huom. Nimestään huolimatta matemaattinen induktio on eräs deduktion laji. Huom. Perusaskel ei välttämättä ole P(1), vaan 1 voidaan korvata pienimmällä kokonaisluvulla, jolla väite on voimassa. Esimerkki 4.7. (Ohjelman oikeaksi todistaminen, Program verification) Osoita, että aina kun x, y R, n = 0, 1, 2,... antaa alla oleva ohjelma vastaukseksi arvon xy n. while(n 0) { x = x y; n = n 1; } Vastaus = x;
Ratkaisu Matemaattinen induktio n:n suhteen. P(n): Aina kun x, y R ja ohjelma aloittaa while-silmukan testimuuttujan arvolla n, niin on voimassa: Jos silmukka ohitetaan (n = 0) tai silmukan käskyt suoritetaan n kertaa (n > 0), niin muuttujan Vastaus arvo on x y n. (1) Jos n = 0, niin testi n 0 on epätosi, Vastaus = x = x y 0 P(0) on voimassa. (2) Induktio-oletus: P(k) on voimassa. Induktioväite: P(k + 1) on voimassa. Induktioväitteen todistus. Olkoon testimuuttujan n arvo k + 1. k + 1 > 0, joten silmukan käskyt suoritetaan ainakin kerran. Kun ohjelman suoritus pääsee toistamiseen while-silmukan alkuun, niin n = k + 1 1 = k ja muuttujan x arvo on kerrottu y:llä. Induktio-oletuksen mukaan while- silmukan suoritus k kertaa alkuarvoina x y ja y antaa muuttujan Vastaus arvoksi luvun x y y k = x y k+1. Siis P(k + 1) on voimassa. Kohtien (1) ja (2) perusteella on P(n) voimassa aina kun n = 0, 1, 2,....
Täydellinen muoto Matemaattisen induktion täydellinen muoto: (1) P(1) (=perusaskel) on voimassa (2) Jos P(i) (induktio-oletus) on voimassa kaikilla i = 1, 2,..., k, niin P(k + 1) (=induktioväite)on tosi aina kun k = 1, 2,.... Esimerkki 4.8. Todista tulos: Jokaisella kokonaisluvulla n 2, n on joko alkuluku tai alkulukujen tulo. Ratk.... Esimerkki 4.9. Tietystä joukosta otettu osajoukko yksilöitä voidaan aina järjestää nousevaksi jonoksi täsmälleen yhdellä tavalla. Tästä joukosta on ensin otettu n yksilöä ja järjestetty nousevaksi jonoksi ja sitten m (muuta) yksilöä ja järjestetty toiseksi nousevaksi jonoksi. Todista, että voidaan rakentaa algoritmi, joka yhdistää näistä kahdesta jonosta uuden n + m yksilön nousevan jonon tekemällä korkeintaan n + m 1 vertailua. Ratk. Olkoon P(m + n):"n:n ja m:n alkion (nousevista) jonoista voidaan muodostaa yksi nouseva jono tekemällä korkeintaan n + m 1 vertailua." Väite: P(n + m) on voimassa aina kun n + m = 1, 2,.... (1) Jos n + m = 1, niin toisessa jonoista on yksi alkio ja toisessa ei yhtään. Tarvitaan 0 vertailua, eli P(1) on voimassa.
(2) Induktio-oletus: P(k) on voimassa Induktioväite: P(k + 1) on voimassa Induktioväitteen todistus: Olkoon n + m = k + 1. Jos n = 0, tai m = 0, niin kaikki alkiot sisältävä jono on yhdistetty jono. Tarvittiin 0 vertailua. Voidaan olettaa, että n 1 ja m 1. Vertaillaan kummankin jonon pienintä yksilöä. Poistetaan niistä pienempi. Tähän tarvittiin 1 vertailu. Jäljelle jääneissä jonoissa on yhteensä n + m 1 = k + 1 1 = k alkiota. Induktio-oletuksen perusteella tarvitaan vielä korkeintaan k 1 vertailua näiden jonojen yhdistämiseen. Sijoittamalla ensimmäinen poistettu alkio yhdistetyn jonon pienimmäksi, saadaan yhdistetty jono korkeintaan 1 + (k 1) = n + m 1 vertailulla. Siis P(k + 1) on voimassa. Kohtien (1) ja (2) perusteella P(m + n) on voimassa aina kun n + m = 1, 2,....
Esimerkki Teknisistä rajoituksista johtuen kone saattoi lähettää joko kolme merkkiä tai viisi merkkiä kerrallaan, mutta ei muunlaisia kertaeriä. Osoita, että jokainen n:n mittainen merkkijono (n 8) voidaan panna kokoon 3:n ja 5:n merkin kerta-annoksista (merkkijono voi sisältää sekaisin 3:n ja 5:n merkin kerta-annoksia eikä jonoon voi lisätä merkkejä, jotta jako kerta-annoksiin menisi tasan). Ratk. Väite: n = 3i + 5j joillakin i 0, j 0 aina kun n = 8, 9,.... Tod. Matemaattinen induktio. Olkoon P(n): n = 3i + 5j joillakin i 0, j 0. Nyt 8 = 3 1 + 5 1, joten P(8) on voimassa. Induktio-oletus: P(k) on voimassa. Induktioväite: P(k + 1) on voimassa. Induktioväitteen todistus:induktio-oletuksen perusteella on k + 1 = 3i + 5j + 1 joillakin i 0, j 0. Kaksi tapausta. (i) Jos j 1, niin k + 1 = 3i + 5j + 1 = 3i + 5 + 5(j 1) + 1 = 3(i + 2) + 5(j 1). (ii) Jos j = 0, niin oltava, k 9, eli i 3. Silloin k + 1 = 3i + 1 = 3(i 3) + 3 3 + 1 = 3(i 3) + 5 2. Kohtien (i) ja (ii) perusteella on Induktioväite voimassa. Siis Väite on voimassa.