Lyhyt MathCheck-ohje (uuteen välilehteen)
Tässä tehtävässä tutustutaan aksiomaattisten teorioiden ajatukseen. Tehtävän asiat auttavat hahmottamaan eri lukujärjestelmien ja samankaltaisten järjestelmien kuten matriisit samanlaisuuksia ja eroja, ja hieman ymmärtämään, minkälaisia asioita symboliseen laskentaan ja siihen perustuvaan tekoälyyn liittyy.
Seuraavassa on esimerkin vuoksi reaalilukujen kaikki aksioomat. Niiden oletetaan pätevän kaikilla reaaliluvuilla x, y ja z. Tarkoitus ei ole, että opettelet ne ulkoa.
(1) | x + 0 = x | nolla |
(2) | x + −x = 0 | vastaluku |
(3) | (x + y) + z = x + ( y + z) | yhteenlaskun liitännäisyys |
(4) | x + y = y + x | yhteenlaskun vaihdannaisuus |
(5) | x ⋅ 1 = x | ykkönen |
(6) | x ≠ 0 → x ⋅ x−1 = 1 | käänteisarvo |
(7) | (x ⋅ y) ⋅ z = x ⋅ ( y ⋅ z) | kertolaskun liitännäisyys |
(8) | x ⋅ y = y ⋅ x | kertolaskun vaihdannaisuus |
(9) | x ⋅ ( y + z) = x ⋅ y + x ⋅ z | osittelulaki |
(10) | ¬(0 = 1) | nolla ei ole ykkönen |
(11) | x ≤ y ∧ y ≤ z → x ≤ z | järjestyksen transitiivisuus |
(12) | x ≤ y ∧ y ≤ x → x = y | järjestyksen antisymmetrisyys |
(13) | x ≤ y ∨ y ≤ x | järjestys on täysi |
(14) | x ≤ y → x + z ≤ y + z | järjestys ja yhteenlasku |
(15) | 0 ≤ x ∧ 0 ≤ y → 0 ≤ x ⋅ y | järjestys ja kertolasku |
(16) | (ei käytetä tässä tehtävässä) | täydellisyysaksiooma |
Tästä linkistä saat aksioomat uuteen ikkunaan. Varoitus: täydellisyysaksiooma saattaa aiheuttaa järkytyksen.
Jotta saisimme päättelyketjuista lyhyempiä, annamme monille johtamillemme tosiasioille numerot. Jatkossa niitä saa käyttää samaan tapaan kuin aksioomien numeroita 1, …, 16.
(17) | x ⋅ 0 = 0 |
Otetaanpa saman tien jatkon helpottamiseksi käyttöön muutama kahdella askeleella johdettavissa oleva laki. Kirjoita laatikoihin niiden johtamisessa käytettyjen aksioomien numerot.
(18) | 0 + x = x | |
(19) | −x + x = 0 | |
(20) | 1 ⋅ x = x | |
(21) | 0 ⋅ x = 0 |
Tämän voi tehdä myös yhtälön ratkaisemisena. Lisäämällä oletuksen x + X = 0 molemmille puolille vasemmalle −x saadaan −x + (x + X) = −x + 0, josta (3), (19) ja (18) muuttavat vasemman puolen muotoon X ja (1) muuttaa oikean puolen muotoon −x. Niinpä X = −x. Paljon työtä jouduttiin tekemään näinkin, koska sievennykset jotka koulussa opetettiin tekemään yhdellä askeleella, vaativat aksiooma tai jo johdettu laki kerrallaan edettäessä useita välivaiheita.
Kun aksioomaa (2) käytetään oikealta vasemmalle, on vaihtoehtoja äärettömästi. Nolla saadaan muutettua muodon x + −x lisäksi muotoon y + −y tai vaikka muotoon (a + b) ⋅ (c + 1) + −((a + b) ⋅ (c + 1)). Todistusta kirjoittavalla ihmisellä on usein suunnitelma, miten todistus viedään läpi. Suunnitelma kertoo, mihin muotoon nolla muutetaan aksioomalla (2) ja jopa senkin, että nyt käytetään aksioomaa (2) eikä esimerkiksi aksioomaa (5). Miten tietokone saataisiin keksimään tällainen suunnitelma on tekoälyn isoja, osittain mutta ei kokonaan ratkaistuja kysymyksiä.
(22) | −−x = x |
(23) | (x + y) ⋅ z = x ⋅ z + y ⋅ z |
(24) | −(x ⋅ y) = (−x) ⋅ y |
Tähän mennessä olemme käyttäneet vain aksioomia, joiden numero on alle 10, emmekä ole käyttäneet numeroa (6). Siitä seuraa, että johtamamme tosiasiat pätevät monessa muussakin järjestelmässä kuin reaaliluvuilla. Esimerkiksi aritmetiikka modulo M, missä M ∈ ℤ+, noudattaa aksioomia (1), …, (5) ja (7), …, (9), joten kaikki tähän mennessä johtamamme pätee siinäkin. Numero (6) rikkoutuu, koska luvulla 2 ei ole käänteisarvoa kun M = 4, ja (10) rikkoutuu kun M = 1. Jos M on alkuluku, modulaarinen aritmetiikka noudattaa aksioomia (1), …, (10). Rubikin kuution pyöräytykset noudattavat aksioomia (1), …, (3).
Tähän mennessä johtamamme tosiasiat ovat niin vaatimattomia, että ehkä ei tunnu kummalliselta, että ne pätevät monissa järjestelmissä. Kenties kummallisempaa on, että on olemassa hyödyllisiä järjestelmiä, joissa osa niistä ei päde. Esimerkiksi matriisilaskenta ei noudata aksioomaa (8).
Se aksiooma, joka erottaa reaaliluvut aritmetiikasta modulo alkuluku, on (14). Kaikki muut toteutuvat, kun relaationa ≤ käytetään lukujen 0, …, M − 1 tavallista suuruusjärjestystä. (Numero (15) on silloin sangen tylsä, koska 0 ≤ x pätee jokaisella x.) Vaikka ero aksioomien tasolla on näin pieni, reaaliluvut ja aritmetiikka modulo alkuluku ovat hyvin erilaisia järjestelmiä! Esimerkiksi aritmetiikassa modulo alkuluku on vain äärellinen määrä eri lukuja, mutta reaalilukuja on ylinumeroituvasti.
Kaiken tämän vaivannäön kautta saimme todistettua 0 ≤ 1! Jotta todistusjärjestelmästä olisi käytännön hyötyä, sen pitää pystyä todistamaan paljon syvällisempiä tuloksia. Käytännössä hyödyllisiä automaattisia todistusjärjestelmiä on kehitetty, mutta aivan helppoa se ei ole ollut.
Jos rajaus x ≠ 0 poistettaisiin aksioomasta (6), 0−1 olisi olemassa ja sille pätisi 0 ⋅ 0−1 = 1. Lisäksi (21) lupaisi, että 0 = 0 ⋅ 0−1. Saataisiin 0 = 1, mikä on ristiriidassa aksiooman (10) kanssa. Ristiriidasta voidaan logiikassa johtaa mitä tahansa, joten ristiriitainen järjestelmä on käyttökelvoton. Siksi aksioomajärjestelmän pitää olla ristiriidaton. Valitettavasti usein on erittäin vaikeaa, kenties jopa mahdotonta, varmistua, että aksioomajärjestelmä on ristiriidaton. Reaalilukujen aksioomajärjestelmän uskotaan olevan ristiriidaton.
Aksioomajärjestelmä on täydellinen, jos ja vain jos jokainen sen kielellä muodostettavissa oleva väittämä voidaan sen avulla osoittaa oikeaksi tai vääräksi. Väittämän osoittaminen vääräksi tarkoittaa väittämän negaation osoittamista oikeaksi. Esimerkiksi väittämästä, jota ei voi muodostaa aksioomien (1), …, (15) kielellä kelpaa sin2 x + cos2 x = 1, koska se käyttää symboleita sin ja cos, joista (1), …, (15) eivät puhu.
Reaalilukujen lisäksi myös rationaaliluvut toteuttavat aksioomat (1), …, (15). Koska ∃ x: x ⋅ x = 1 + 1 pätee reaaliluvuille mutta ei rationaaliluvuille (kakkosen neliöjuuri ei ole rationaalinen), aksioomista (1), …, (15) ei voi todistaa ∃ x: x ⋅ x = 1 + 1 eikä ¬∃ x: x ⋅ x = 1 + 1 (paitsi jos (1), …, (15) on ristiriitainen, mikä on periaatteessa mahdollista mutta erittäin epätodennäköistä). Niinpä (1), …, (15) eivät muodosta täydellistä aksioomajärjestelmää (paitsi jos matematiikka on pahasti rikki).
Aksiooman (16) nimen perusteella voi arvata, miten tilanne muuttuu, jos se otetaan mukaan. Aksiooman (16) tarina on oman tehtävänsä arvoinen. Aksiooman looginen muotoilu on hirveän näköinen, mutta sen ei pidä antaa pelästyttää. Kun looginen muotoilu selitetään, sen takaa paljastuu mielenkiintoinen tarina.