Macsyma

Macsyma er et computeralgebrasystem, der er blevet udviklet siden 1968 ved MIT i Project MAC- laboratoriet . Det var det første omfattende system af symbolsk matematik og et af de tidlige vidensbaserede systemer . Helt skrevet på Lisp-programmeringssproget (en dialekt af MacLisp), for sin tid var det et af de største programmer skrevet i Lisp. Porteringen af ​​dette system til nyere computerplatforme ansporede til oprettelsen af ​​flere Lisp-systemer i 1970'erne og 1980'erne.

Siden 1982 har systemet været distribueret på kommercielt grundlag, i 1999 blev dets udvikling afsluttet.

Mange af de ideer, der dukkede op i Macsyma, blev efterfølgende lånt af sådanne systemer som Mathematica , Maple og andre. Det er forfaderen til det frie computeralgebrasystem Maxima .

Udvikling

Projektet blev igangsat i juli 1968 af Carl Engelman , William  A. Martin ( brugergrænseflade, udtrykskortlægning, polynomial aritmetik) og Joel Moses ( udtryksforenklingsmotor , ubestemte integraler: heuristik / Rischs algoritme ). Bill Martin var projektleder indtil 1971, og Moses i de næste ti år. Engelman og hans team forlod projektet i 1969 og vendte tilbage til MITER Corporation. Efterfølgende var hoveddeltagerne i udviklingen af ​​den matematiske kerne af programmet:   

Macsyma blev skrevet i programmeringssproget Maclisp , udviklet i MAC Lisp dialektprojektet . Macsymas behov påvirkede funktionerne i denne dialekt, som udviklede sig på samme tid, især tilføjelsen af ​​mere avancerede numeriske beregninger og implementeringen af ​​en meget effektiv compiler. Til at begynde med arbejdede Maclisp og Macsyma på PDP-6- og PDP-10-computere med ITS- og TOPS 10/20- operativsystemer , senere på en GE-600-computer, der kørte Multics OS , samt på Lisp-maskiner . På det tidspunkt var Macsyma et af de største, hvis ikke det største, Lisp-programmer. Behovet for at portere Macsyma til andre hardwareplatforme resulterede i flere nye dialekter af Lisp, især Franz Lisp .

Kommercialisering

I 1981 foreslog Moses og Richard Pavelle (også en MIT-stipendiat og en fortaler for anvendelsen af ​​Macsyma til videnskab og teknologi) oprettelsen af ​​et firma, der skulle kommercialisere Macsyma. Det fik de dog ikke lov til, med henvisning til regler, der forbyder ansatte at tjene indtægter fra udviklinger udført på MIT. I begyndelsen af ​​1982 licenserede MIT Macsyma til ADL ("Arthur D. Little, Inc."), som formidlede Macsyma-salg og snart (slutningen af ​​1982) igen licenserede det til Symbolics .

Også i 1982, under pres fra projektmedlem Richard Feitman, dengang ved UC Berkeley , licenserede MIT Macsyma til United States Department of Energy , en af ​​hovedsponsorerne for systemets udvikling. Denne version blev kaldt DOE Macsyma. Som et resultat stod Symbolics Macsyma over for tabet af det offentlige marked, som gav en betydelig del af systemets indtægter. Denne situation har ført til kontroverser i den amerikanske regering om, hvorvidt universitetet har ret til at licensere teknologi udviklet på universitetet og finansieret af den føderale regering til tredjeparter. Dette spørgsmål blev løst bekræftende i 1986 ved Executive Order fra præsident Reagan .

Symbolik

Udviklingen af ​​Macsyma fortsatte hos Symbolics. I første omgang solgte systemet med succes, men allerede i 1985-86 faldt omsætningen fra det, selvom markedet voksede, og konkurrenternes salg steg i samme periode. Den største svaghed ved Macsyma var numerisk analyse, som var afgørende for tekniske og simple videnskabelige beregninger: flydende kommaaritmetik i Macsyma til pc var omkring seks gange langsommere end i Fortran , og ineffektiv matriximplementering reducerede hastigheden af ​​nøglealgoritmer med yderligere 5-10 gange. Macsyma implementerede ikke mange grundlæggende numeriske lineære algebraalgoritmer, såsom LU-dekomponering , og Gröbners algoritme, udviklet i 1970'erne ved MIT, blev først indbygget i den kommercielle version i 1987.

På trods af modstand fra mange på Symbolics blev Macsyma frigivet til DEC VAX-11 computere og Sun Microsystems arbejdsstationer i 1986 og 1987, hvor Franz Lisp blev implementeret på disse platforme .

I anden halvdel af 1986 blev Pavelle afløst af Richard Petty som leder af afdelingen. Personalet blev reduceret, salgs- og marketingafdelingen blev udvidet, udviklerne var fokuseret på at tilføje de funktioner til systemet, som kunderne krævede, som et resultat, i 1987, fordobledes indtægterne fra Macsyma. Brugergrænsefladen er blevet forbedret, dokumentations- og hjælpesystemet er blevet omorganiseret og udvidet, og navnene på nogle kommandoer er blevet ændret, så de nemmere kan huskes. Petty forsøgte at overbevise ledelsen om, at Macsyma skulle være et strategisk fokus for virksomheden og finansieret ud fra dets egne resultater og potentiale, men efter starten på en kraftig stigning i salget, skåret Symbolics Macsymas personale ned. Faktisk forsøgte virksomheden at bruge Macsyma til at udligne tab fra arbejdsstationsvirksomheden, som var 30 gange større.

I 1987-88 forsøgte Macsyma-gruppen at portere systemet til pc'en, men det lykkedes ikke. Symbolics havde tidligere lukket sit eget projekt om at bygge en Lisp-kompiler til standardcomputere for ikke at konkurrere med salget af Lisp-maskiner, og nægtede at samarbejde med Sun on Lisp af samme grund. Gold Hill Lisp, der blev valgt til at portere systemet til pc'en, viste sig at være for ustabil, og dens svage arkitektur gjorde det umuligt at rette fejl. Denne fiasko frarøvede Macsyma markedet for personlige computere, mens Mathematica dukkede op på Apple -computere på samme tid . En Windows -version af Macsyma , der brugte Symbolics' CLOE Lisp, udkom i august 1989, men udviklingspersonalet var for lille til at implementere grafik, interface og numeriske funktioner som Mathematica.

I 1989 blev det klart, at Symbolics var i krise. På trods af det høje niveau af produceret software, viste det sig at være ukonkurrencedygtigt på grund af afhængighed af dyr hardware, hvis udvikling ikke var tilpasset markedets behov (i midten af ​​1980'erne skiftede Symbolics til en hardwareplatform med en 40 -bit ord i stedet for et 36-bit ord uden at udføre en økonomisk begrundelse for denne meget dyre ændring). Petty forsøgte at overbevise ledelsen om at ændre strategi, men virksomhedens fjerde præsident på fire år ønskede ikke at høre noget om det. På grund af den manglende interaktion med MIT var det ikke muligt at samle en gruppe til at købe rettighederne til at udvikle Macsyma. Macsymas skæbne forblev usikker, i 1990 forlod Petty Symbolics for at danne sit eget firma.

Macsyma Inc.

Macsyma Inc. blev grundlagt i 1992 af Russell  Noftsker ( formand for bestyrelsen, medstifter af Symbolics ) og Richard Petty. Hun købte rettighederne til Macsyma fra Symbolics. På dette tidspunkt havde Macsyma allerede mistet markedet: på 5 år fra 1987 til 1992 faldt dets markedsandel fra 70 % til 1 %, og i begyndelsen af ​​1993, da markedsvæksten aftog, blev Mathematica og Maple de facto-standarden. Derudover begyndte Mathsoft siden 1992 at distribuere sin Mathcad til lave priser , som optog det meste af den resterende markedsniche.

Hos Macsyma Inc. verdensklasse udviklere har arbejdet, herunder Jeff Golden ( eng.  Jeff Golden ) (der lavede det meste af den symbolske matematik), Bill Gosper ( eng.  Bill Gosper ) (særlige funktioner, summering og andre elementer), Howard Cannon (VP for udvikling af software) og Bill Dubuque (integration og ligningsløsning). Andre udviklere har ydet vigtige bidrag til numerisk analyse , grafik og hjælpesystemet. I begyndelsen af ​​1995 blev Macsyma 2.0.5 udgivet med følgende forbedringer:

  1. Væsentlig øget hastighed. Hvis tidligere Macsyma var den langsomste, er den nu blevet hurtigere end Mathematica og næsten lige så hurtig som Maple.
  2. Grænsefladen understøttede visning af matematiske formler, formateret tekst, hyperlinks. Det var bedre end nogen af ​​konkurrenterne og generelt den bedste videnskabelige GUI i matematiksoftwareindustrien.
  3. Anmeldelser hævdede, at Macsyma havde det bedste hjælpesystem i branchen (inklusive hypertekst, demoer, eksempler, funktionsskabeloner, senere understøttelse af naturlige sprogforespørgsler). Papirdokumentationen er også blevet væsentligt forbedret.
  4. Selvom Macsyma 2.0.5 stadig var meget langsom i numeriske metoder, havde den en betydeligt styrket portefølje af numerisk analyse og lineære algebrarutiner. I 1996 blev LAPACK føjet til det , hvilket markant øgede hastigheden af ​​de fleste lineære algebra numeriske beregninger. En anmeldelse fra PC Magazine udtalte: "Macsyma er markedsleder inden for matematiksoftware."

På trods af den succesfulde udvikling af systemet voksede dets markedsandel aldrig over 2%: Da Macsyma 2.0.5 blev udgivet, var der næsten ingen nye brugere, og det eksisterende marked var allerede delt mellem konkurrenterne. Derudover var udviklingsholdene af konkurrenter 4-8 gange større end i Macsyma Inc., og det var i lang tid umuligt at konkurrere med dem.

I 1999 blev Macsyma købt af Tenedos LLC, holdingselskabet, der tidligere havde købt Symbolics. Tenedos genudgav eller videresolgte ikke Macsyma. Dette er slutningen på det originale system.

Maxima

Professor William Schelter fra University of Texas i Austin har fortsat støttet og forbedret DOE-versionen af ​​Macsyma siden 1982, herunder portering af systemet til Common Lisp . I 1998 udgav Shelter med tilladelse fra det amerikanske energiministerium DOE Macsyma-kildekoden under GNU General Public License , og i 2000 oprettede Maxima-projektet på SourceForge.net for at vedligeholde og videreudvikle dette system som fri software. Siden Shelters død i 2001 er projektet fortsat med at udvikle sig gennem det etablerede udviklerfællesskab.

Maxima er under aktiv udvikling, kan kompileres til flere forskellige implementeringer af Common Lisp , og builds er tilgængelige til GNU/Linux , Microsoft Windows , Mac OS X og andre systemer. Tilgængelig i flere GUI- muligheder . Maxima indeholder mange post-split ændringer og inkluderer ikke nogen af ​​de mange forbedringer lavet til den kommercielle version af Macsyma mellem 1982-1999. På grund af dette kan der kræves en betydelig indsats for at portere kode fra Macsyma til Maxima. På grund af systemets åbenhed er det grundlaget for en række afledte udviklinger, for eksempel Stack-systemet, designet til automatiseret verifikation af korrektheden af ​​matematiske udtryk [1] [2] [3] .

Noter

  1. Grant Keady, Gary Fitz-Gerald, Greg Gamble, Chris Sangwin,. Computerstøttet vurdering i matematiske videnskaber . Arkiveret fra originalen den 11. oktober 2019.
  2. Anvendelser af computerstøttet vurdering i matematikundervisning Fjerde finsk-estisk matematikkollokvium og finske matematiske dage 2014 Antti Rasila Aalto Universitet, Helsinki, Finland Helsinki Universitet, 9.-10. januar 2014
  3. Christopher Sangwin. Computer Aided Assessment of Mathematics Using STACK  //  Udvalgte regelmæssige forelæsninger fra den 12. internationale kongres om matematisk uddannelse / Sung Je Cho. — Springer International Publishing, 2015. — S. 695–713 . — ISBN 9783319171869 , 9783319171876 . - doi : 10.1007/978-3-319-17187-6_39 . Arkiveret fra originalen den 4. juli 2020.

Links