Systém počítačové algebry - Computer algebra system
Systém počítačové algebry ( CAS ), nebo symbolický algebra systém ( SAS ) je nějaký matematický software se schopností manipulovat matematické výrazy v podobným způsobem jako tradiční manuální výpočty matematiků a vědců . Vývoj systémů počítačové algebry ve druhé polovině 20. století je součástí disciplíny „ počítačová algebra “ nebo „ symbolické počítání “, která urychlila práci v algoritmech nad matematickými objekty, jako jsou polynomy .
Systémy počítačové algebry lze rozdělit do dvou tříd: specializované a obecné. Specializované se věnují konkrétní části matematiky, jako je teorie čísel , teorie grup nebo výuka elementární matematiky .
Univerzální systémy počítačové algebry si kladou za cíl být užitečné pro uživatele pracujícího v jakékoli vědecké oblasti, která vyžaduje manipulaci s matematickými výrazy. Aby byl systém počítačové algebry pro obecné účely užitečný, musí obsahovat různé funkce, jako například:
- uživatelské rozhraní umožňující uživateli zadat a zobrazení matematických vzorců, obvykle z klávesnice, položek menu, myši nebo stylusu.
- programovací jazyk a interpret (výsledek výpočtu má běžně nepředvídatelné formu a nepředvídatelné velikosti, a proto je často potřeba zásahu uživatele),
- Zjednodušovatel , což je přepis systém pro zjednodušení matematické vzorce,
- správce paměti , včetně garbage collector , potřebují obrovské velikosti dat zprostředkujících, které se mohou objevit během výpočtu,
- výpočty s libovolnou přesností , potřebuje obrovské velikosti celých čísel, které mohou nastat,
- velká knihovna matematických algoritmů a speciálních funkcí .
Knihovna musí zajišťovat nejen potřeby uživatelů, ale také potřeby zjednodušovače. Například výpočet polynomiálních největších společných dělitelů se systematicky používá pro zjednodušení výrazů zahrnujících zlomky.
Toto velké množství požadovaných počítačových schopností vysvětluje malý počet systémů počítačové algebry pro všeobecné použití. Mezi hlavní patří Axiom , Maxima , Magma , Maple , Mathematica a SageMath .
Dějiny
Systémy počítačové algebry se začaly objevovat v 60. letech minulého století a vyvinuly se ze dvou zcela odlišných zdrojů - požadavků teoretických fyziků a výzkumu umělé inteligence .
Prvním příkladem prvního vývoje byla průkopnická práce, kterou provedl pozdější laureát Nobelovy ceny za fyziku Martinus Veltman , který v roce 1963 navrhl program pro symbolickou matematiku, zejména fyziku vysokých energií, nazvaný Schoonschip (holandsky „čistá loď“). Dalším raným systémem byl FORMAC .
Používání Lisp jako programového základu, Carl Engelman vytvořil Mathlab v roce 1964 na MITRE rámci výzkumného prostředí umělé inteligence. Později byl MATHLAB zpřístupněn uživatelům na systémech PDP-6 a PDP-10 se systémem TOPS-10 nebo TENEX na univerzitách. Dnes jej lze ještě použít na emulaci SIMH PDP-10. MATHLAB („ matematická ematická laboratorní oratoř“) by neměl být zaměňován s MATLAB („ mat rix lab oratory“), což je systém pro numerické výpočty vybudovaný o 15 let později na univerzitě v Novém Mexiku .
První populární systémy počítačové algebry byly muMATH , Reduce , Derive (založené na muMATH) a Macsyma ; populární verze Macsyma copyleft s názvem Maxima je aktivně udržována. Reduce se stal svobodným softwarem v roce 2008. K dnešnímu dni jsou nejoblíbenější komerční systémy Mathematica a Maple , které běžně používají výzkumní matematici, vědci a inženýři. Mezi volně dostupné alternativy patří SageMath (který může fungovat jako front-end pro několik dalších bezplatných a bezplatných CAS).
V roce 1987 společnost Hewlett-Packard představila první ruční kalkulačku CAS s řadou HP-28 a poprvé v kalkulačce bylo možné uspořádat algebraické výrazy, diferenciaci, omezenou symbolickou integraci, konstrukci Taylorovy řady a řešitel algebraických rovnic. V roce 1999 se nezávisle vyvinutý CAS Erable pro řadu HP 48 stal oficiálně integrovanou součástí firmwaru nově vznikající řady HP 49/50 a o rok později také do řady HP 40 , zatímco HP Prime přijal systém Xcas v roce 2013.
Společnost Texas Instruments v roce 1995 vydala kalkulačku TI-92 s CAS založeným na softwaru Derive ; že řada TI-NSPIRE nahradil pocházet v roce 2007. řady TI-89 , poprvé vydána v roce 1998, obsahuje také CAS.
Společnost Casio vydala svou první CAS kalkulačku s CFX-9970G a uspěla s Algebra FX Series v letech 1999-2003 a aktuální ClassPad Series .
Nověji byly systémy počítačové algebry implementovány pomocí umělých neuronových sítí .
Symbolické manipulace
Mezi podporované symbolické manipulace obvykle patří:
- zjednodušení na menší výraz nebo nějakou standardní formu , včetně automatického zjednodušení s předpoklady a zjednodušení s omezeními
- nahrazení symbolů nebo číselných hodnot určitými výrazy
- změna formy výrazů: rozšiřování produktů a mocností, částečná a plná faktorizace , přepis jako dílčí zlomky , uspokojení omezení , přepis goniometrických funkcí jako exponenciály, transformace logických výrazů atd.
- částečná a celková diferenciace
- nějaká neurčitá a určitá integrace (viz symbolická integrace ), včetně vícerozměrných integrálů
- symbolická omezená a neomezená globální optimalizace
- řešení lineárních a některých nelineárních rovnic v různých oblastech
- řešení některých diferenciálních a diferenciálních rovnic
- brát nějaké limity
- integrální transformace
- sériové operace, jako je expanze, součet a produkty
- maticové operace včetně produktů , inverzí atd.
- statistické výpočty
- dokazování a ověřování teorémů, které je velmi užitečné v oblasti experimentální matematiky
- optimalizované generování kódu
Ve výše uvedeném, slovo někteří naznačuje, že operaci nelze vždy provést.
Další možnosti
Mnoho z nich také zahrnuje:
- programovací jazyk , který umožňuje uživatelům provádět své vlastní algoritmy
- numerické operace s libovolnou přesností
- přesná celočíselná aritmetika a funkce teorie čísel
- Úpravy matematických výrazů v dvojrozměrné formě
- vykreslování grafů a parametrických diagramů funkcí ve dvou a třech dimenzích a jejich animace
- kreslení tabulek a diagramů
- API pro propojení s externím programem, jako je databáze, nebo použití v programovacím jazyce k použití systému počítačové algebry
- manipulace s řetězci, jako je párování a vyhledávání
- doplňky pro použití v aplikované matematice, jako je fyzika, bioinformatika , výpočetní chemie a balíčky pro fyzikální výpočty
Některé zahrnují:
- grafická produkce a úpravy, jako jsou počítačem generované snímky a zpracování signálu jako zpracování obrazu
- syntéza zvuku
Některé systémy počítačové algebry se zaměřují na specializované obory; ty jsou obvykle vyvíjeny v akademickém světě a jsou zdarma. Ve srovnání s numerickými systémy mohou být neúčinné pro numerické operace .
Typy výrazů
Výrazy manipulované CAS obvykle zahrnují polynomy ve více proměnných; standardní funkce výrazů ( sinusový , exponenciální atd.); různé speciální funkce ( Γ , ζ , erf , Besselovy funkce atd.); libovolné funkce výrazů; optimalizace; deriváty, integrály, zjednodušení, součty a součiny výrazů; zkrácené řady s výrazy jako koeficienty, maticemi výrazů atd. Podporované číselné domény obvykle zahrnují reprezentaci reálných čísel s plovoucí desetinnou čárkou , celá čísla (neomezené velikosti), komplexní (reprezentace s plovoucí desetinnou čárkou), intervalovou reprezentaci realů , racionální číslo (přesné znázornění) a algebraická čísla .
Využití ve vzdělávání
Existuje mnoho zastánců zvýšení používání systémů počítačové algebry ve třídách základních a středních škol. Primárním důvodem takové obhajoby je, že systémy počítačové algebry představují matematiku v reálném světě více než matematiku založenou na papíru a tužce nebo ruční kalkulačce. Tento tlak na zvýšení využití počítače v učebnách matematiky podpořily i některé rady pro vzdělávání. V některých regionech to dokonce bylo nařízeno.
Systémy počítačové algebry byly široce používány ve vysokoškolském vzdělávání. Mnoho univerzit nabízí buď konkrétní kurzy o vývoji jejich používání, nebo implicitně očekávají, že je studenti využijí pro práci v kurzu. Společnosti, které vyvíjejí systémy počítačové algebry, tlačily na zvýšení jejich prevalence mezi univerzitními a vysokoškolskými programy.
Kalkulačky vybavené CAS nejsou povoleny v ACT , PLAN a v některých učebnách, ačkoli mohou být povoleny ve všech testech povolených kalkulačkou College Board , včetně SAT , některých SAT Subject Tests a AP Calculus , Chemistry , Zkoušky z fyziky a statistiky .
Matematika používaná v systémech počítačové algebry
- Algoritmus dokončení Knuth – Bendix
- Algoritmy pro hledání kořenů
- Symbolická integrace např. Pomocí Rischova algoritmu nebo Risch -Normanova algoritmu
- Hypergeometrické součty např. Podle Gosperova algoritmu
- Omezte výpočet například pomocí Gruntzova algoritmu
- Polynomiální faktorizace např. Přes konečná pole, Berlekampův algoritmus nebo Cantor – Zassenhausův algoritmus .
- Největší společný dělitel např. Pomocí euklidovského algoritmu
- Gaussova eliminace
- Gröbnerův základ např. Pomocí Buchbergerova algoritmu ; zobecnění euklidovského algoritmu a Gaussova eliminace
- Padé přibližně
- Lemma Schwartz – Zippel a testování polynomiálních identit
- Čínská věta o zbytku
- Diofantické rovnice
- Eliminace kvantifikátoru nad reálnými čísly např. Tarskiho metodou/ Válcový algebraický rozklad
- Landauův algoritmus (vnořené radikály)
- Derivace elementárních funkcí a speciálních funkcí . (např. Viz deriváty neúplné funkce gama .)
- Válcový algebraický rozklad
Viz také
- Seznam systémů počítačové algebry
- Vědecký výpočet
- Statistický balíček
- Automatizované dokazování teorémů
- Algebraický modelovací jazyk
- Programování logiky omezení
- Teorie modulospokojitelnosti
Reference
externí odkazy
- Definice a fungování systému počítačové algebry
- Učební osnovy a hodnocení ve věku počítačových algebraických systémů - z informačního střediska vzdělávacích zdrojů Informační středisko pro vědu, matematiku a environmentální vzdělávání, Columbus, Ohio .
- Richard J. Fateman. „Eseje o algebraickém zjednodušení.“ Technická zpráva MIT-LCS-TR-095, 1972. (Z historického zájmu ukázat směr výzkumu v počítačové algebře. Na webových stránkách MIT LCS: [1] )