Macsyma

Macsyma je systém počítačové algebry , který byl vyvíjen od roku 1968 na MIT v laboratoři Project MAC . Byl to první komplexní systém symbolické matematiky a jeden z raných znalostních systémů . Zcela napsaný v programovacím jazyce Lisp (dialekt MacLisp), na svou dobu to byl jeden z největších programů napsaných v Lisp. Portování tohoto systému na novější počítačové platformy podnítilo vytvoření několika systémů Lisp v 70. a 80. letech.

Od roku 1982 je systém distribuován na komerční bázi, v roce 1999 byl jeho vývoj ukončen.

Mnohé z nápadů, které se objevily v Macsymě, byly následně vypůjčeny takovými systémy jako Mathematica , Maple a další. Je předchůdcem svobodného systému počítačové algebry Maxima .

Vývoj

Projekt iniciovali v červenci 1968 Carl Engelman , William  A. Martin ( uživatelské rozhraní, mapování výrazů, polynomiální aritmetika) a Joel Moses ( motor pro zjednodušení výrazů , neurčité integrály: heuristika / Rischův algoritmus ). Bill Martin byl projektovým manažerem do roku 1971 a Moses dalších deset let. Engelman a jeho tým opustili projekt v roce 1969 a vrátili se do MITER Corporation. Následně byli hlavními účastníky vývoje matematického jádra programu:   

Macsyma byla napsána v programovacím jazyce Maclisp vyvinutém v projektu dialektu MAC Lisp . Potřeby Macsyma ovlivnily rysy tohoto dialektu, který se současně rozvinul, zejména přidáním pokročilejších numerických výpočtů a implementací vysoce výkonného kompilátoru. Zpočátku Maclisp a Macsyma pracovali na počítačích PDP-6 a PDP-10 s operačními systémy ITS a TOPS 10/20 , později na počítači GE-600 s Multics OS a také na strojích Lisp . V té době byl Macsyma jedním z největších, ne-li největším, Lisp programů. Potřeba portovat Macsyma na jiné hardwarové platformy vyústila v několik nových dialektů Lisp, pozoruhodně Franz Lisp .

Komercializace

V roce 1981 Moses a Richard Pavelle (také člen MIT a obhájce aplikace Macsyma ve vědě a technologii) navrhli vytvoření společnosti, která by Macsymu komercializovala. Nebylo jim to však umožněno s odvoláním na předpisy zakazující zaměstnancům vydělávat příjmy z vývoje provedeného na MIT. Počátkem roku 1982 MIT udělilo licenci společnosti Macsyma společnosti ADL („Arthur D. Little, Inc.“), která zprostředkovala prodej Macsyma a brzy (koncem roku 1982) ji následně udělila společnosti Symbolics .

Také v roce 1982, pod tlakem člena projektu Richarda Feitmana, tehdy na UC Berkeley , MIT udělilo Macsymu licenci Ministerstvu energetiky Spojených států , jednomu z hlavních sponzorů vývoje systému. Tato verze se jmenovala DOE Macsyma. V důsledku toho Symbolics Macsyma čelila ztrátě vládního trhu, který poskytoval významný podíl na příjmech systému. Tato situace vedla ke sporům v rámci vlády USA, zda má univerzita právo licencovat technologii vyvinutou na univerzitě a financovanou federální vládou třetím stranám. Tato otázka byla vyřešena kladně v roce 1986 výkonným nařízením prezidenta Reagana .

Symbolika

Vývoj Macsyma pokračoval v Symbolics. Zpočátku se systém úspěšně prodával, ale již v letech 1985-86 z něj příjmy klesaly, i když trh rostl a prodeje konkurentů se za stejné období zvyšovaly. Hlavní slabinou Macsymy byla numerická analýza, která byla kritická pro inženýrské a jednoduché vědecké výpočty: aritmetika s plovoucí desetinnou čárkou v Macsymě pro PC byla asi šestkrát pomalejší než ve Fortranu a neefektivní implementace matic snížila rychlost klíčových algoritmů o dalších 5-10. krát . Macsyma neimplementoval mnoho základních algoritmů numerické lineární algebry, jako je rozklad LU , a Gröbnerův algoritmus, vyvinutý v 70. letech na MIT, byl do komerční verze zabudován až v roce 1987.

Navzdory odporu mnoha ze společnosti Symbolics byla Macsyma vydána pro počítače DEC VAX-11 a pracovní stanice Sun Microsystems v letech 1986 a 1987, pro které byl na těchto platformách implementován Franz Lisp .

Ve druhé polovině roku 1986 vystřídal Pavelleho ve funkci vedoucího oddělení Richard Petty. Počet zaměstnanců byl snížen, obchodní a marketingové oddělení bylo rozšířeno, vývojáři se zaměřili na přidávání funkcí, které zákazníci požadovali, v důsledku toho se v roce 1987 zdvojnásobily příjmy z Macsyma. Uživatelské rozhraní bylo vylepšeno, dokumentace a systém nápovědy byly reorganizovány a rozšířeny a názvy některých příkazů byly změněny tak, aby byly lépe zapamatovatelné. Petty se snažil přesvědčit vedení, že Macsyma by měla být strategickým zaměřením společnosti a měla by být financována na základě vlastních úspěchů a potenciálu, ale po začátku prudkého nárůstu tržeb společnost Symbolics přerušila zaměstnance Macsymy. Ve skutečnosti se společnost pokusila použít Macsymu k vyrovnání ztrát z podnikání pracovních stanic, které bylo 30krát větší.

V letech 1987-88 se skupina Macsyma pokusila přenést systém na PC, ale selhala. Symbolics již dříve uzavřel svůj vlastní projekt na sestavení kompilátoru Lisp pro standardní počítače, aby nekonkuroval prodejům strojů Lisp, a ze stejného důvodu odmítl spolupracovat se společností Sun on Lisp. Gold Hill Lisp, který byl vybrán pro port systému na PC, se ukázal být příliš nestabilní a jeho slabá architektura znemožňovala opravu chyb. Toto selhání okradlo Macsymu o trh s osobními počítači, zatímco Mathematica se objevila na počítačích Apple ve stejnou dobu . Verze Macsyma pro Windows , využívající CLOE Lisp od Symbolics, vyšla v srpnu 1989, ale vývojový tým byl příliš malý na implementaci grafiky, rozhraní a numerických schopností jako Mathematica.

V roce 1989 se ukázalo, že Symbolika je v krizi. I přes vysokou úroveň vyráběného softwaru se ukázalo, že je nekonkurenceschopný kvůli závislosti na drahém hardwaru, jehož vývoj nebyl v souladu s potřebami trhu (v polovině 80. let přešel Symbolics na hardwarovou platformu se 40 -bitové slovo místo 36bitového slova bez ekonomického zdůvodnění této velmi nákladné změny). Petty se snažil přesvědčit vedení, aby změnilo strategii, ale čtvrtý prezident společnosti za čtyři roky o tom nechtěl nic slyšet. Kvůli nedostatku interakce s MIT nebylo možné sestavit skupinu, která by odkoupila práva na vývoj Macsyma. Osud Macsymy zůstal nejistý, v roce 1990 Petty opustil Symbolics a založil vlastní společnost.

Společnost Macsyma Inc.

Společnost Macsyma Inc. byla založena v roce 1992 Russell  Noftsker ( předseda představenstva, spoluzakladatel Symbolics ) a Richard Petty. Od společnosti Symbolics koupila práva na Macsymu. V tomto okamžiku již Macsyma ztratila trh: za 5 let od roku 1987 do roku 1992 její podíl na trhu klesl ze 70 % na 1 % a začátkem roku 1993, kdy se růst trhu zpomalil, se Mathematica a Maple staly de facto standardem. Kromě toho od roku 1992 Mathsoft začal distribuovat svůj Mathcad za nízké ceny , které zabíraly většinu zbývající mezery na trhu.

Ve společnosti Macsyma Inc. pracovali světoví vývojáři, včetně Jeffa Goldena ( eng.  Jeff Golden ) (který dělal většinu symbolické matematiky), Billa Gospera ( eng.  Bill Gosper ) (speciální funkce, sumace a další prvky), Howarda Cannona (VP pro vývoj software) a Bill Dubuque (integrace a řešení rovnic). Další vývojáři významně přispěli k numerické analýze , grafice a systému nápovědy. Na začátku roku 1995 byla vydána Macsyma 2.0.5 s následujícími vylepšeními:

  1. Výrazně zvýšená rychlost. Jestliže dříve byla Macsyma nejpomalejší, nyní se stala rychlejší než Mathematica a téměř stejně rychlá jako Maple.
  2. Rozhraní podporovalo zobrazování matematických vzorců, formátovaného textu, hypertextových odkazů. Bylo to lepší než kterákoli konkurence a obecně nejlepší vědecké GUI v matematickém softwarovém průmyslu.
  3. Recenze tvrdily, že Macsyma má nejlepší systém nápovědy v oboru (včetně hypertextu, ukázek, příkladů, šablon funkcí, později podpory pro dotazy v přirozeném jazyce). Výrazně se zlepšila i papírová dokumentace.
  4. Přestože Macsyma 2.0.5 byla v numerických metodách stále velmi pomalá, měla výrazně posílené portfolio numerických analýz a rutin lineární algebry. V roce 1996 k němu byl přidán LAPACK , který výrazně zvýšil rychlost většiny numerických výpočtů lineární algebry. Recenze od PC Magazine uvedla: "Macsyma je lídrem na trhu matematického softwaru."

Navzdory úspěšnému vývoji systému jeho podíl na trhu nikdy nepřesáhl 2 %: v době vydání Macsymy 2.0.5 nebyli téměř žádní noví uživatelé a stávající trh byl již rozdělen mezi konkurenty. Navíc vývojové týmy konkurentů byly 4-8x větší než v Macsyma Inc. a dlouho se jim nedalo konkurovat.

V roce 1999 Macsymu koupila Tenedos LLC, holdingová společnost, která předtím koupila Symbolics. Tenedos Macsymu znovu nevydal ani neprodal. Toto je konec původního systému.

Maxima

Profesor William Schelter z Texaské univerzity v Austinu pokračuje v podpoře a vylepšování verze Macsyma DOE od roku 1982, včetně portování systému na Common Lisp . V roce 1998, se svolením Ministerstva energetiky USA, Shelter zveřejnil zdrojový kód DOE Macsyma pod licencí GNU General Public License a v roce 2000 vytvořil projekt Maxima na SourceForge.net pro údržbu a další rozvoj tohoto systému jako svobodného softwaru. Od Shelterovy smrti v roce 2001 se projekt nadále vyvíjel prostřednictvím zavedené vývojářské komunity.

Maxima je v aktivním vývoji, lze ji zkompilovat pro několik různých implementací Common Lisp a jsou k dispozici sestavení pro GNU/Linux , Microsoft Windows , Mac OS X a další systémy. K dispozici v několika variantách GUI . Maxima obsahuje mnoho změn po rozdělení a nezahrnuje žádné z mnoha vylepšení provedených v komerční verzi Macsyma v letech 1982-1999. Z tohoto důvodu může být vyžadováno značné úsilí k přenesení kódu z Macsyma do Maxima. Vzhledem k otevřenosti systému je základem pro řadu odvozených vývojů, například systém Stack, určený pro automatizované ověřování správnosti matematických výrazů [1] [2] [3] .

Poznámky

  1. Grant Keady, Gary Fitz-Gerald, Greg Gamble, Chris Sangwin,. Počítačem podporované hodnocení v matematických vědách . Archivováno z originálu 11. října 2019.
  2. Aplikace počítačově podporovaného hodnocení ve výuce matematiky Čtvrté finsko-estonské matematické kolokvium a Finské matematické dny 2014 Univerzita Antti Rasila Aalto, Helsinki, Finsko Univerzita Helsinky, 9.–10. ledna 2014
  3. Christopher Sangwin. Computer Aided Assessment of Mathematical Using STACK  //  Vybrané pravidelné přednášky z 12. mezinárodního kongresu o matematickém vzdělávání / Sung Je Cho. — Springer International Publishing, 2015. — S. 695–713 . — ISBN 9783319171869 , 9783319171876 . - doi : 10.1007/978-3-319-17187-6_39 . Archivováno z originálu 4. července 2020.

Odkazy