Računarski algebarski sistem
Računarski algebarski sistem (skraćeno RAS) je aplikacija koja omogućava izračunavanja nad matematičkim izrazima na način sličan onome koji koriste matematičari i naučnici. Razvoj računarskih algebarskih sistema tokom druge polovine dvadesetog veka je deo discipline pod nazivom "simboličko računanje" ("algebarsko računanje"), koje je podstaklo rad sa algoritmima nad matematičkim objektima kao što su npr. polinomi.
Računarski algebarski sistemi se mogu podeliti u dve klase: na specijalizovane i one sa glavnom svrhom. Specijalizovani su namenjeni posebnim oblastima matematike, kao što su teorija brojeva, teorija grupa, ili podučavanju osnova matematike.
Računarski algebarski sistemi sa glavnom svrhom su obično korisni za korisnika koji radi na bilo kom naučnom polju i zahteva manipulaciju matematičkim izrazima. Da bi bio koristan, računarski algebarski sistem sa glavnom svrhom mora da poseduje određena svojstva:
- Korisničko sučelje koje omogućava unos i prikaz matematičkih formula
- programski jezik i interpretator (često se rezultat izračunavanja pojavljuje u nepredvidivoj formi i sa nepredvidivom veličinom; zato je intervencija korisnika često potrebna)
- uprošćivač, sistem prerade za uprošćavanje matematičkih formula
- upravljač memorijom, uključujući đubretara, neophodni zbog ogromne veličine podataka, koji se mogu pojaviti tokom izračunavanja
- aritmetika proizvoljne preciznosti, potrebna zbog ogromnog proja celih brojeva koji se mogu pojaviti
- velika biblioteka matematičkih algoritama
Biblioteka mora da pokrije zahteve kako korisnika, tako i uprošćivača. Na primer, izračunavanje najvećih zajedničkih delilaca polinoma se sistematično koristi za uprošćavanje izraza koje uključuje razlomke.
Ovako velika lista računarskih zahteva objašnjenje je za mali broj računarskih algebarskih sistema sa glavnom svrhom. Glavni prestavnici su: Aksiom, Maksima, Magma, Mejpl, Matematika i Sejdž.
Istorija
[uredi | uredi izvor]Računarski algebarski sistemi su počeli da se pojavljuju tokom 1960. godina, i razvijali su se iz dva vrlo različita izvora—zahteva teorijskih fizičara i istraživanja veštačke inteligencije.
Najbolji primer ovog prvonavedenog je pionirski rad sproveden od strane laureata Nobelove Nagrade u oblasti fizike Martinusa Veltmana, koji je dizajnirao program za simboličku matematiku, a posebno za Fiziku Visoke Energije, pod imenom Shonship (prevod na srpski znači "čist brod") 1963. Još jedan od ranih sistema je i FORMAK.
Koristeći LISP kao osnovu za programiranje, Karl Engelman je stvorio MATLAB 1964. u MITRE korporaciji u okviru okruženja sa veštačkom inteligencijom. Kasnije je MATLAB postao dostupan korisnicima na PDP-6 i PDP-10 Sistemima koje pokreću TOPS-10 ili TENEX na univerzitetima. I dan-danas se može koristiti na SIMH-Emulatorima u okviru PDP-10. MATLAB (MATHLAB) ("matematička laboratorija") se ne treba mešati sa MATLABOM (MATLAB) ("matrična laboratorija"), sistemom za numerička izračunavanja napravljenog 15 godina kasnije na Univerzitetu Novi Meksiko, zbog slučajno sličnog naziva.
Prvi popularni računarski algebarski sistemi su bili muMATH, Reduce, Derive (zasnovan na muMATH-u), i Macsyma; popularna kopileft verzija Maksime pod nazivom Maxima se aktivno održava. Reduce je postao prvi besplatni softver 2008. godine[1] I dan danas, najpopularniji komercijalni sistemi su Mathematica[2] i Maple, koji se redovno koriste od strane matematičara, naučnika i inženjera. Besplatna dostupna alternativa uključuje Sage (koji može da stupi u front-end ulogu).
1987. godine, Hjulet-Pakard je predstavio svoj prvi ručni kalkulator CAS uz HP-28 seriju, i bilo je moguće, po prvi put za jedan kalkulator,[3] rasporediti algebarske izraze, diferencijaciju, ograničenu simboličku integraciju, konstrukciju Tejlorove serije i ,,solver'' za algebarske jednačine. Godine 1999, nezavisno razvijani CAS Enable za HP 48 seriju je zvanično postao integrisani deo firmvera dolazeće HP 49/50 serije, a godinu kasnije i u seriju HP 40, dok je HP Prime preuzeo Xcas sistem 2013. godine.
Kompanija Teksas Instruments je 1995. izbacila na tržište TI-92 kalkulator sa RAS-om zasnovanim na softveru Derive; serija TI-Nspire je zamenila Derive 2007. godine. Serija TI-89, prvi put puštena 1998, takođe sadrži RAS.
Simboličke manipulacije
[uredi | uredi izvor]Podržane simboličke manipulacije obično sadrže:
- uprošćavanje na prostiji izraz ili neku standardnu formu, uključujući automatsko uprošćavanje sa pretpostavkama i uprošćavanje sa ograničenjima
- zamena simbola ili numeričkih vrednosti za pojedine izraze
- promena oblika izraza: proširivanje proizvoda i eksponenata, parcijalna i puna Faktorizacija, prepisivanje kao parcijalne razlomke, zadovoljenje ograničenja, prepravljanje trigonometrijskih funkcija u eksponencijalne, transformacija logičkih izraza, itd.
- Parcijalna diferencijacija i potpuna diferencijacija
- neka beskonačna i konačna integracija (vidi simboličku integraciju), uključujući multidimenzionalne integrale
- simbolička ograničena i neograničena globalna optimizacija
- rešenje linearnih i nekih nelinearnih jednačina nad različitim domenima
- nešenje nekih diferencijalnih i diferencnih jednačina
- određivanje graničnih vrednosti
- transformaciju integrala
- operacije sa redovima kao što su proširivanje, suma and i proizvod
- matrične operacije uključujući proizvod, invertibilne matrice, itd.
- statističko računanje
- Dokazivanje teorema i verifikacija koja je veoma korisna u oblasti eksperimentalne matematike
- optimizovana generacija koda
U gorenavedenom, reč neki znači da se operacija ne može uvek izvršiti.
Dodatne mogućnosti
[uredi | uredi izvor]Mnoge takođe sadrže:
- programski jezik, dopuštajući korisnicima implementaciju sopstvenih algoritama
- numeričke operacije proizvoljne preciznosti
- aritmetika tačnih celih brojeva i funkcionalnost teorije brojeva
- promena matematičkih izraza u dvodimenzionalnoj formi
- crtanje grafika funkcija u dvodimenzionalnom i trodimenzionalnom sistemu i njihova animacija
- crtanje dijagrama
- API, za povezivanje na spoljni program kao što je baza podataka, ili upotreba u programskom jeziku u svrhu korišćenja računarskog algebarskog sistema
- manipulacija niski poput poklapanja i pretrage
- dodaci namenjeni korišćenju u primenjenoj matematici kao što je fizika, bioinformatika, računarska hemija i paketi za računarsku fiziku
Neke sadrže:
- grafički prikaz i izmenu kao što su računarski generisane slike, obrada signala i obrada snimaka
- sintezu zvuka
Neki računarski algebarski sistemi se fokusiraju na usko polje primene; ovi se obično akademski razvijaju i besplatni su. Mogu biti neefikasni pri radu sa numerčkim operacijama u odnosu na numeričke sisteme.
Tipovi izraza
[uredi | uredi izvor]Izrazi kojima manipuliše RAS obično sadrže polinome sa više varijabli; standardne funkcije izraza (sinus, eksponencijalne funkcije, itd.); razne specijalne funkcije (Γ, ζ, erf, Beselove funkcije, itd.); proizvoljne funkcije izraza; optimizacija; izvodi, integrali, uprošćavanje, sume, i rezultati izraza; nepotpuni redovi sa izrazima kao koeficijentima, matrice izraza, i tako dalje. Podržani numerički domeni obično sadrže realne brojeve, cele brojeve, kompleksne brojeve, intervale, razlomke, i algebarske brojeve.
Primena u edukaciji
[uredi | uredi izvor]Kalkulatori sa ugrađenim RAS-om nisu dozvoljeni na testovima poput AKT-a ili PLAN-a, ali mogu biti dozvoljeni na testovima Koledž Borda (na kojima su dozvoljeni kalkulatori), uključujući SAT, neke određene testove iz predmeta na SAT-u i AP Račun, Hemiju, Fiziku i ispite iz statistike.
Matematika korišćena u računarskim algebarskim sistemima
[uredi | uredi izvor]- Simbolička integracija putem npr. Rišovog algoritma ili Riš-Normanovog algoritma
- Hipergeometrijska suma putem npr. Gosperovog algoritma
- Računanje granične vrednosti putem npr. Gruncovog algoritma
- Faktorizacija polinoma putem npr. konačnih polja, Berlekampovog algoritma ili Kantor-Zasenhausovog algoritma.
- Najveći zajednički delilac putem npr. Euklidovog algoritma
- Gausova eliminacija
- Grobnerova osnova putem npr. Buhbergerovog algoritma; generalizacija Euklidovog algoritma i Gausove eliminacije
- Padeova aproksimacija
- Švarc-Cipel lema i testiranje identiteta polinoma
- Teorema kineskog ostatka
- Diofantinove jednačine
- Eliminacija kvantifikatora nad realnim brojevima putem npr. Tarskijevog metoda/Cilindrična algebarska dekompozicija
- Landauov algoritam
- Izvodi osnovnih i posebnih funkcija. (npr. Vidi Nepotpuna Gama funkcija.)
- Cilindrična algebarska dekompozicija
Vidi još
[uredi | uredi izvor]- Spisak računarskih algebarskih sistema
- Računarska nauka
- Statistički paket
- Automatsko dokazivanje teorema
- Veštačka inteligencija
- Logičko ograničeno programiranje
Reference
[uredi | uredi izvor]- ^ "REDUCE Computer Algebra System at SourceForge". reduce-algebra.sourceforge.net.
- ^ Interview with Gaston Gonnet, co-creator of Maple, SIAM History of Numerical Analysis and Computing, March 16, 2005
- ^ Nelson, Richard.
Spoljašnje veze
[uredi | uredi izvor]- Definicija i rad računarskog algebarskog sistema Arhivirano na sajtu Wayback Machine (23. januar 2020)
- Curriculum and Assessment in an Age of Computer Algebra Systems Arhivirano na sajtu Wayback Machine (1. decembar 2009) - From the Education Resources Information Center Clearinghouse for Science, Mathematics, and Environmental Education, Columbus, Ohio.
- Richard J. Fateman. "Essays in algebraic simplification". Technical report MIT-LCS-TR-095, 1972. (Of historical interest in showing the direction of research in computer algebra. At the MIT LCS web site: [1])