torstai 17. marraskuuta 2016

GeoGebra ja CAS

Edellisessä postauksessani kritisoin GeoGebran CAS-osiota. Hieman laajempaa ongelmaa tutkiessani johduin uudelleen ihmettelemään sen piirteitä. Seuraava on mahdollisimman yksinkertainen esimerkki CAS-osion ja dynaamisen geometrian osion välisistä suhteista. (CAS = Computer Algebra System)

En ole hirveän hyvin perehtynyt GeoGebran sielunelämään. Joku viisaampi voi varmaan kommentoida havaintojani.


Lähtökohtana on piirtonäyttöön piirretty origokeskinen yksikköympyrä, suora $y = x$ ja näiden leikkauspisteet $C$ ja $D$. Kaikki muodostettu dynaamisen geometrian työkaluilla.

Objektit löytyvät myös CAS-puolelta: ympyrän ja suoran yhtälöt objektien nimillä, pisteet samoin. Jälkimmäisille on saatu murtolukuesitys tarkkojen arvojen painikkeella (korostettu sinisellä).

Leikkauspisteet voidaan tietenkin myös löytää ratkaisemalla ympyrän ja suoran yhtälöiden muodostama yhtälöpari. Tätä on yritetty rivillä 5, mutta tulos on omituinen. Jos Solve-komentoon sen sijaan kirjoitetaan yhtälöt niiden nimien sijasta, oikeat ratkaisut löytyvät. Ongelmana lienee, minkä nimiä $c$ ja $f$ oikeastaan ovat. Odottaisin, että nimet kelpaavat symbolisessa laskennassa.

Yhtälöpari voidaan ratkaista myös aktivoimalla rivit 1 ja 2 ja painamalla tarkan ratkaisun painiketta. Saadaan rivin 6 oikea tulos. Tämän perusteella voidaan muodostaa pisteet $C1$ ja $D1$ (rivit 7 ja 8). Nämä ilmestyvät myös piirtonäyttöön (kuvassa ne on piilotettu).

Hämäävää on, että leikkauspisteille on saatu kaksi esitystä, molemmat ns. tarkkoja ratkaisuja. Tämän perusteella täytyisi olla
\[
\frac{\sqrt{2}}{2} = \frac{470832}{665857},
\]
 ts. kakkosen neliöjuuri olisi rationaalinen.

Selitys luonnollisesti on, että leikkauspisteet on laskettu kahdella eri algoritmilla, dynaamisen geometrian numeerisella algoritmilla ja CASin symbolisella. Myös edellistä CAS kuitenkin käsittelee tarkkana arvona.

Dynaamisen geometrian idea, kuvion muunneltavuus, toimii kaikkialla: Jos suoraa muutetaan piirtonäytössä pisteitä $A$ ja $B$ siirtelemällä, kaikki CAS-puolen tulokset muuttuvat vastaavasti, myös pisteiden $C1$ ja $D1$ koordinaatit, joihin ilmestyy tilanteen mukaan mutkikkaita juurilausekkeita.  Tämä ei luonnollisestikaan enää päde, jos rivillä 5 syötetään ympyrän ja suoran yhtälöt Solve-komentoon. Niillähän ei tällöin enää ole kytkentää piirtonäytön objekteihin.

Esimerkki tuo esiin CAS-ohjelmien sudenkuopat. Yhtenäisyyden saavuttaminen ei ole helppoa. Ohjelman kehityksen alussa tehdyt valinnat voivat olla esteenä myöhemmin ilmenevien epäjohdonmukaisuuksien korjaamiseen. Tämä ei ole niinkään harvinaista: tie eteenpäin kulkee usein aloittamalla uusi projekti, jossa luodaan uusi ohjelma ja hyödynnetään tehtyjen virheiden antamat opetukset.

Tavallaan GeoGebrakin on tällainen uusi projekti. Aiemmat (Cabri, Cinderella, ...)  eivät käsittääkseni ole yrittäneetkään symbolilaskennan valtausta.

Ei kommentteja: