fe.math.kobe-u.ac.jpfe.math.kobe-u.ac.jp/mathlibre-doc/ponpoko/maximabook.… · translate this...

1132
じめて Maxima ( α 30 ( よろしく) ) 25 1 5 ( )

Upload: dangdiep

Post on 16-Jun-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • Maxima ( 30())

    25 1 5 ()

  • MATLAB The MathWorks.MapleWaterloo Maple Inc. .MathematicaWolfram Research Inc..VMWareWMWare Inc..Maxima( ) c(2012),, KNOPPIX/Math-Project,,,,..:[email protected]

  • 3

    Maxima 1960 70MITMACSYMA Schelter Common Lisp, GPL. MathematicaMaple,.Maxima,,Octave,, MaximaMaxima. Maxima LISP. SchelterMaxima-5.6, Maxima-5.15. , Maxima,.,Maxima,. ,, , .Maxima,, , . , A4,. ,, ,. , , ., , ,.

    25 1 5 ()

  • i

    1 11.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    1.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.2.2 Prolog . . . . . . . . . . . . . . . . . . . . . . . . . 51.2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    2 92.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.9 FORTRAN TEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    2.10.1 gnuplot Klein . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352.10.2 openmath Klein . . . . . . . . . . . . . . . . . . . . . . . . . . . 352.10.3 Geomview Klein . . . . . . . . . . . . . . . . . . . . . . . . . . 362.10.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

    2.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    3 LISP 413.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.2 , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    3.2.1 LISP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473.4 t nil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

  • ii

    3.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523.10 lambda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533.13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543.14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    4 594.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

    4.2.1 . . . . . . . . . . . . . . . . . . . . . 634.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634.2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644.2.4 . . . . . . . . . . . . . . . . . . . . . . . 654.2.5 R/(x2 + 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674.2.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

    4.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694.3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

    4.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 744.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

    4.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

    4.8.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 854.10 Grobner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894.12 / . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

    4.12.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904.12.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924.12.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924.12.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

    4.13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944.13.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944.13.2 Leibniz 2 + 2 = 4 . . . . . . . . . . . . . . . . . . . . . . . . . 944.13.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

  • iii

    4.13.4 Peano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954.13.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964.13.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 984.13.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994.13.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

    4.14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

    4.15.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014.15.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054.15.3 Dedekind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064.15.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074.15.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074.15.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

    4.16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104.16.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

    4.17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1134.17.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1154.17.2 19 . . . . . . . . . . . . . . . . . . . . . . . . . 1164.17.3 Poincare . . . . . . . . . . . . . . . . . . . . . . . . . . . 1174.17.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1184.17.5 Hilbert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

    4.18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234.18.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234.18.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1284.18.3 Leibniz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1314.18.4 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

    4.19 Frege . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1354.19.1 (Begriffsschrift) . . . . . . . . . . . . . . . . . . . . . . . . 1354.19.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1404.19.3 Frege . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1534.19.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

    4.20 Russell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1664.20.1 ,, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1674.20.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1674.20.3 PM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1674.20.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1684.20.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1694.20.6 . . . . . . . . . . . . . . . . . . . . . 1714.20.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1724.20.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172

  • iv

    4.20.9 PM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1744.21 Hilbert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175

    4.21.1 Hilbert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1754.21.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1754.21.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1764.21.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1784.21.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1794.21.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1794.21.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1814.21.8 Russell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184

    4.22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1854.22.1 ZFC- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1854.22.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

    4.23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1884.23.1 Skolem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1884.23.2 Davis-Putnam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1894.23.3 Herbrand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1904.23.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

    4.24 Godel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1904.24.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1904.24.2 P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1914.24.3 Godel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1934.24.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1934.24.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1944.24.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194

    4.25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1944.25.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1944.25.2 LISPMACSYMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

    5 Maxima 1975.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

    5.1.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1985.1.2 Maxima (symbol) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1995.1.3 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2015.1.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2015.1.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2025.1.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2025.1.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2035.1.8 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2035.1.9 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

  • v

    5.1.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2065.1.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2065.1.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2065.1.13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2075.1.14 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2085.1.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2095.1.16 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2095.1.17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2105.1.18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2115.1.19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2115.1.20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212

    5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2135.2.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2135.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2145.2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2155.2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2165.2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217

    5.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2195.3.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2195.3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2205.3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2225.3.4 . . . . . . . . . . . . . . . . . . . . . . . . . . 2245.3.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2285.3.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2295.3.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325.3.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2335.3.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2345.3.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

    5.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2375.4.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2375.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2375.4.3 put qput . . . . . . . . . . . . . . . . . . . . . . 2375.4.4 declare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2395.4.5 declare . . . . . . . . . . . . . . . . . . . . . . . . . . 2405.4.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2415.4.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2425.4.8 declare . . . . . . . . . . . . . . . . . . . . . . . . . . 2435.4.9 declare . . . . . . . . . . . . . . . . . 2535.4.10 depends gradef . . . . . . . . . . . . . . . . . . . . . . . . . . . 2565.4.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

  • vi

    5.4.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2615.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264

    5.5.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645.5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645.5.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2665.5.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2675.5.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2695.5.6 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2715.5.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2745.5.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275

    5.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2775.6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2775.6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2795.6.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2795.6.4 . . . . . . . . . . . . . . . . . . . . . . . . 2815.6.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2835.6.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2865.6.7 . . . . . . . . . . . . . . . . . . . . . . . . . 2905.6.8 . . . . . . . . . . . . . . . . . . . . . . . . 291

    5.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2935.7.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2935.7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2935.7.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2955.7.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2975.7.5 defrule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2985.7.6 defrule . . . . . . . . . . . . . . . . . . . . . . . . . . . 3025.7.7 tellsimp tellsimpafter . . . . . . . . . . . . . 3035.7.8 let . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3055.7.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308

    5.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3115.8.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . 3115.8.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3115.8.3 ev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3125.8.4 ev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3145.8.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3215.8.6 . . . . . . . . . . . . 322

    5.9 LISP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3245.9.1 Maxima LISP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3245.9.2 Maxima LISP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3245.9.3 LISPMaxima . . . . . . . . . . . . . . . . . . . . . . . . 326

  • vii

    6 Maxima 3276.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328

    6.1.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . 3286.1.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3306.1.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3316.1.4 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3326.1.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3336.1.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3336.1.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3356.1.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3366.1.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3376.1.10 LISP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337

    6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3396.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3396.2.2 CRE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3416.2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3426.2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3436.2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3676.2.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369

    6.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3716.3.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . 3716.3.2 Taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3716.3.3 taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3726.3.4 Taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3736.3.5 Taylor . . . . . . . . . . . . . . . . . . . . . . . . . 373

    6.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3746.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3746.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3746.4.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3766.4.4 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3766.4.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3786.4.6 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . 3786.4.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3796.4.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3816.4.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3836.4.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3866.4.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3886.4.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3946.4.13 TeX FORTRAN . . . . . . . . . . . . . . . . 3956.4.14 FORTRAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397

  • viii

    6.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4006.5.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4006.5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4006.5.3 . . . . . . . . . . . . . . . . . . . . . . . . . 4016.5.4 . . . . . . . . . . . . . . . . . . . . . . . . . 4026.5.5 map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4076.5.6 map . . . . . . . . . . . . . . . . . . . . . . . . . 4086.5.7 map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4086.5.8 apply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4116.5.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411

    6.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4136.6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4136.6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4136.6.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4166.6.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4166.6.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4176.6.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4196.6.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4216.6.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423

    6.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4246.7.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4246.7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427

    6.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4296.8.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4296.8.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4306.8.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4356.8.4 ,, . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4356.8.5 ,, . . . . . . . . . . . . . . . . . . . . . 4376.8.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4396.8.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4426.8.8 . . . . . . . . . . . . . . . . . . . . . . . . . . 4436.8.9 eigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445

    6.9 LAPACK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4496.9.1 BLAS LAPACK . . . . . . . . . . . . . . . . . . . . . . . . . . . 4496.9.2 BLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4496.9.3 . . . . . . . . . . . . . . . . . . . . . . . . . 4506.9.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4516.9.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4536.9.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4556.9.7 BLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456

  • ix

    6.9.8 BLAS 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4576.9.9 BLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . 4586.9.10 BLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . 4656.9.11 LAPACK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4756.9.12 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4776.9.13 LAPACK . . . . . . . . . . . . . . . . . . . . . . . . . 4786.9.14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479

    6.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4816.10.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4816.10.2 . . . . . . . . . . . . . . . . . . . . . . . . . 4836.10.3 stringproc . . . . . . . . . . . . . . . . . . . . . . . . 4876.10.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4896.10.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4906.10.6 . . . . . . . . . . . . . . . . . . . . . 4946.10.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498

    6.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5006.11.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5006.11.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500

    6.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5026.12.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5026.12.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5036.12.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505

    6.13 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5076.13.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5076.13.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509

    7 5117.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512

    7.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5127.1.2 . . . . . . . . . . . . . . . . . . . . . . . . 514

    7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5177.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5177.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . 5207.2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5207.2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . 5227.2.5 distrib,multthru,expand . . . . . . . . . . . . . . . . 5237.2.6 sum . . . . . . . . . . . . . . . . . . . . . . . . 5237.2.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5247.2.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5247.2.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524

  • x

    7.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5267.3.1 Maxima . . . . . . . . . . . . . . . . . . . . 5267.3.2 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5307.3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5317.3.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538

    7.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5397.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5397.4.2 limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5417.4.3 tlimit: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5417.4.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542

    7.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5437.5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5437.5.2 vect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545

    7.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5497.6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5497.6.2 integrate risch . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5497.6.3 integrate risch . . . . . . . . . . . . . . . . 5517.6.4 changevar . . . . . . . . . . . . . . . . . . . . . . . . . 5517.6.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5537.6.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5547.6.7 defint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5567.6.8 Laplace . . . . . . . . . . . . . . . . . . . . . . . . . . . 5577.6.9 . . . . . . . . . . . . . . . . . . . . . . . . . . 5597.6.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5597.6.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5617.6.12 antid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564

    7.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5657.7.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5657.7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5657.7.3 . . . . . . . . . . . . . . . . . . . . . . . 567

    8 5718.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572

    8.1.1 block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5728.1.2 block . . . . . . . . . . . . . . . . . . . . . . . . . . 5738.1.3 if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5738.1.4 do . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5748.1.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5768.1.6 . . . . . . . . . . . . . . . . . . . . . . . . . 578

    8.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579

  • xi

    8.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5798.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5798.2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . 5828.2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5838.2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5848.2.6 . . . . . . . . . . . . . . . . . . . . . . . . . . 5878.2.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5888.2.8 . . . . . . . . . . . . . . . . . . . . . . . . . 5898.2.9 . . . . . . . . . . . . . . . . . . . . . . . . . 589

    8.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5908.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592

    8.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5928.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5928.4.3 LISP . . . . . . . . . . . . . . . . . . . . . . . . . . . 5938.4.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5998.4.5 . . . . . . . . . . . . . . . . . . . . . . . . . . 602

    9 Maxima 6059.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606

    9.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6069.1.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6079.1.3 Bell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6089.1.4 Bernoulli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6089.1.5 B(beta) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6109.1.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6129.1.7 Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6139.1.8 Fibonacci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6139.1.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6149.1.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6169.1.11 Mobius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6179.1.12 numfactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6189.1.13 digamma(polygamma) . . . . . . . . . . . . . . . . . . . . . . . . . 6189.1.14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6199.1.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6219.1.16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6229.1.17 ifactor . . . . . . . . . . . . . . . . . . . . . . . . 6239.1.18 ifactor . . . . . . . . . . . . . . . . . . . . . 6269.1.19 numth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6289.1.20 Kronecker Stiring . . . . . . . . . . . . . . . . . . . . . . . . . . . 630

    9.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632

  • xii

    9.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6329.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6359.2.3 atrig1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6379.2.4 trgsmp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637

    9.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6399.3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6399.3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641

    9.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6459.4.1 Airy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6469.4.2 Bessel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6489.4.3 Hankel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649

    9.5 hypgeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6509.6 orthopoly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650

    9.6.1 Chebyshev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6509.6.2 Hermite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6509.6.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6519.6.4 Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6519.6.5 Laguerre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6519.6.6 Legendre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651

    9.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6529.7.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6529.7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6539.7.3 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6549.7.4 Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6569.7.5 Maxima Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . 6589.7.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661

    9.8 dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6639.8.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6639.8.2 fractal . . . . . . . . . . . . . . . . . . . 6699.8.3 dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . 6729.8.4 dynamics.mac . . . . . . . . . . . . . . . . . . . . . . . . . 6729.8.5 complex dynamics.lisp . . . . . . . . . . . . . . . 6769.8.6 . . . . . . . . . . . . . . . . . . . . . 6789.8.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682

    10 Maxima 68710.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68810.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689

    10.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68910.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689

  • xiii

    10.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69010.3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69110.3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69310.3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698

    10.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69910.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703

    10.5.1 status sstatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70310.5.2 room . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705

    10.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70510.6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70510.6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70610.6.3 timer,untimer timer info . . . . . . . . . . . . . . . . . . . 707

    10.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70710.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70810.9 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70810.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710

    10.10.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71010.10.2 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . 71010.10.3 . . . . . . . . . . . . . . . . . . . . . . . . . . 71210.10.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71310.10.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71410.10.6 . . . . . . . . . . . . . . . . . . . . . . . . . . 71610.10.7 . . . . . . . . . . . . . . . . . . . . . . . . 71910.10.8 maxima-init.mac . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72010.10.9 maxima-init.mac . . . . . . . . . . . . . . . . . . . . . 721

    10.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72210.11.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72210.11.2 bug report build info . . . . . . . . . . . . . . . . . . . . . . . 72410.11.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72510.11.4 LISP trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72610.11.5 . . . . . . . . . . . . . . . . . . . . . . . . . 727

    11 Maxima 72911.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730

    11.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73011.1.2 plot2d plot3d . . . . . . . . . . . . . . . . . . . . . . . 73011.1.3 plot2d plot3d . . . . . . . . 73011.1.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73111.1.5 plot2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73311.1.6 plot3d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736

  • xiv

    11.2 plot options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73711.2.1 plot options . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73711.2.2 plot options . . . . . . . . . . . . . . . . . 73711.2.3 . . . . . . . . . . . . . . . . . . 73811.2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73911.2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74011.2.6 gnuplot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74111.2.7 gnuplot . . . . . . . . . . . . . . . . . . . . . . . 74511.2.8 gnuplot . . . . . . . . . . . . . . . . . . . . . . . . 747

    11.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74711.3.1 openplot curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74711.3.2 contour plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75011.3.3 Postscript . . . . . . . . . . . . . . . . . . . . . . . . . . . . 750

    11.4 plot option . . . . . . . . . . . . . . . . . . . . . . 75111.5 gnuplot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 753

    11.5.1 maxout.gnuplot . . . . . . . . . . . . . . . . . . . . . . . . 75311.5.2 set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75411.5.3 plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75411.5.4 splot . . . . . . . . . . . . . . . . . . . . . . . . . . . 75711.5.5 pm3d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75711.5.6 ticslevel . . . . . . . . . . . . . . . . . . . . . . . . . 76011.5.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76011.5.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76211.5.9 contour pm3d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76411.5.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76511.5.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76611.5.12 cbrange cblabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76711.5.13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76911.5.14 Maxima gnuplot . . . . . . . . . . . . . . . . . 77011.5.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77211.5.16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77311.5.17 . . . . . . . . . . . . . . . . . . . . . . . . 77511.5.18 gnuplot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78011.5.19 gnuplot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78411.5.20 gnuplot . . . . . . . . . . . . . . . . . . . . . . . . 785

    11.6 plot2d plot3d . . . . . . . . . . . . . . . . . . . . . . . . . . 78811.6.1 gnuplot preamble . . . . . . . . . . . . . . . . . . . . . . . . . . . 78811.6.2 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790

    11.7 draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79511.7.1 draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795

  • xv

    11.7.2 . . . . . . . . . . . . . . . . . . . . . 79511.7.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79611.7.4 draw draw2d,draw3d . . . . . . . . . . . . . . . 79911.7.5 draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80011.7.6 draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80111.7.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80411.7.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80911.7.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81011.7.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84011.7.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87111.7.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 871

    11.8 drawutils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87311.8.1 picture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874

    11.9 (worldmap) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87911.9.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87911.9.2 worldmap . . . . . . . . . . . . . . . . . . . . . . . . . . 879

    12 88512.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88612.2 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88612.3 integrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88612.4 integrate use rootsof . . . . . . . . . . . . . . . . . . . . . . . . . . . 892

    13 Maxima 89513.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89513.2 describe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89513.3 describe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89613.4 ponpoko . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89713.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89813.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89913.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . 90013.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 900

    13.8.1 MS-Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90213.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903

    14 Alexander 90514.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90514.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90914.3 Wirtinger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91014.4 Fox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91314.5 Maxima Fox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914

  • xvi

    14.5.1 t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91414.5.2 ZF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91514.5.3 wordp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91514.5.4 Fox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917

    14.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92214.7 Alexander . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923

    14.7.1 Alexander . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92314.7.2 Alexander . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924

    14.8 Alexander . . . . . . . . . . . . . . . . . . . . . . . . 92714.9 Alexander . . . . . . . . . . . . . . . . . . . . . . . . . . . 93014.10 Alexander . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93214.11Alexander . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93314.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947

    15 surf 95115.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95115.2 surf/surfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95115.3 Maxima surf/surfer . . . . . . . . . . . . . . . . . . . . . . . . . . 95215.4 surfMaxima . . . . . . . . . . . . . . . . . . . . . . . . . 953

    15.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95315.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95315.4.3 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . 954

    15.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95615.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95615.7 surfplot.mc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 959

    15.7.1 surfplot.mc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96215.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96215.9 Barth Diec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96415.10Steiner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965

    15.10.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96515.10.2 Steiner . . . . . . . . . . . . . . . . . . . . . . . . . . . 96715.10.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97015.10.4 surf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970

    15.11SINGULAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97215.11.1 SINGULAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97315.11.2 SINGULAR surf . . . . . . . . . . . . . . . . . . . . . . . 975

    15.12Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97615.13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98015.14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983

  • xvii

    16 MATLAB 98716.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98716.2 MATLABMATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98716.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98816.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 989

    16.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98916.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99016.4.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99016.4.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 990

    16.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99216.5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992

    16.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99416.6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99416.6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99516.6.3 . . . . . . . . . . . . . . . . . . . . . . . . . 996

    16.7 MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99916.7.1 . . . . . . . . . . . . . . . . . . . . . . . . . . 99916.7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002

    16.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100316.8.1 for . . . . . . . . . . . . . . . . . . . . . . 100616.8.2 any all . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007

    16.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100716.9.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100716.9.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008

    16.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100916.11M-file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101016.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101216.13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101416.14Octave file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017

    16.14.1 load . . . . . . . . . . . . . . . . . . . . . 101716.14.2 save . . . . . . . . . . . . . . . . . . . . . . . . . . . 101816.14.3 Open Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102116.14.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102116.14.5 . . . . . . . . . . . . . . . . . . . . . . . 1027

    16.15Maxima . . . . . . . . . . . . . . . . . . . . . . . 1028

    17 Maxima 103117.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103117.2 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103217.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1032

  • xviii

    17.3.1 Common Lisp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103217.3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033

    17.4 MS-WindowsMaxima . . . . . . . . . . . . . . . . . . . 103417.4.1 Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103417.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104017.4.3 Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041

    18 KNOPPIX/Math 2010 104318.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104318.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104318.3 VirtualBox KNOPPIX . . . . . . . . . . . . . . . . . . . . . . . . 1044

    18.3.1 VirtualBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104418.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104418.5 VMware Player KNOPPIX . . . . . . . . . . . . . . . . . . . . . 1051

    18.5.1 VMware Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105118.5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1051

    18.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105518.7 KNOPPIX/Math2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056

    18.7.1 Flash memory . . . . . . . . . . . . . . . . . . . . . . . . 105618.7.2 KNOPPIX-Math-Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105718.7.3 JDML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105818.7.4 KNOPPIX/Math . . . . . . . . . . . . . . . . . . . . . . . . 1059

    19 1061

  • 1

    1

    Maxima. . ,,,.

  • 2 1

    1.1

    FAQMaxima,.

    MaximaMaxima. ,

    , , .

    Maxima 1960MIT Project MACMACSYMA(MACs SYmbolicMAnipulation system) 1 DOE() Texas Schelter 2CommonLisp: The language 1(cltl1)GCL3. Schelter Maxima , Schelter Maxima . sourceforge Maxima (http://maxima.sourceforge.net/).

    MaximaMaxima GPL ver. 24

    . Maxima. Maxima http://maxima.sourceforge.net/download.shtml.

    , Maxima . KNOPPIX/Math KNOPPIX/Edu . KNOPPIX CD/DVD Linux, Maxima.

    , SAGE . SAGEMaxima, Maxima. , MS-Windows Ubuntu Linux VMWareVirtualBox. .

    1MacsymaPetti: http://www.math.utexas.edu/pipermail/maxima/2003/005861.html2http://en.wikipedia.org/wiki/Bill Schelter,

    http://www.utexas.edu/faculty/council/2004-2005/memorials/schelter/schelter.html3http://www.ma.utexas.edu/users/wfs/maxima-doe-auth.gif 4GNU GENERAL PUBLIC LICENSE Version 2:

    http://sourceforge.jp/projects/opensource/wiki/ licenses%2FGNU General Public License

    , GPL

    .

  • 1.1. 3

    MaximaCommon Lisp. Common Lisp,,, Solaris , Linux, FreeBSD, MacOS XMS-Windows. ,, Android (Maxima on Android). , Common LispCLISP, SBCL, SAGEMaxima ECL.

    (, configure, make, vi)

    (. )

    MS-Windows (MS-Windows. )

    UNIX, Linux. , LinuxOS, RedHat , Debian , Slackware 3. ,. , RedHat .rpm, Debian .deb, Slackware .tar.gz .tgz. NOPPIX/MathDebian. ,,,Maxima,. , CommonLispMaxima.

    KNOPPIX/Math. KNOPPIX (http://unit.aist.go.jp/itri/knoppix/). , KNOPPIX CD DVD Linux, KNOPPIX/MathKNOPPIX. Linux. . KNOPPIX/Math http://www.knoppix-math.org/ . KNOPPIX/Math, CD/DVD-ROM..

    MS-Windows,, Maxima., . VMware PlayerVirtualBoxMS-WindowsLinux. ,. ,

  • 4 1

    VMware Player VitrualBox KNOPPIX

    , Maxima. . Maxima 4.

    Maxima. .,,,. ,,,,,,.

    . Maxima,,., Maxima, 2, Maxima 5.1,. ,.

    , Maxima,Maxima5. KNOPPIX/Math., , Maxima6.,Maxima. ,.

    MacMac OS X UNIX, FINK

    . Intel Mac KNOPPIX. Mac OSMac Linux(Debian , openSUSEVine), CLISPMacOS X, Maxima Common Lisp. ,Mac.7.

    5http://www.wakaba.jp/moriarty/works/index.html6. ,

    . ,.

    7 MacOS X MachTen, LinuxPPC, MkLinux .

  • 1.2. 5

    1.2

    1.2.1

    FAQ:

    Maxima

    Common LispMaxima

    . Common Lisp. ,.

    ,. CBASIC, C BASIC,,.

    . 1 + 1 C BASIC. 128. x 1 x2 + 2x+ 1. x2 + 2x+ 1, x2 2y + y2 (x y2) (y x)2 (x + 1)(x 1)10 + (4x 2)4 2 cos2 + cos 2 sin cos,,,.

    ,. ,.

    , , ,

    1.2.2 Prolog

    Prolog.

    , 1 x diff.pl:

    1 dx(x ,1).2 dx(Y,0) : atomic(Y),Y \== x.

  • 6 1

    3 dx(Y+Z,DY+DZ) : dx(Y,DY),dx(Z,DZ).4 dx(YZ,DYDZ) : dx(Y,DY),dx(Z,DZ).5 dx(YZ,DYZ+YDZ) : dx(Y,DY),dx(Z,DZ).6 dx(YN,NYN1DY) : integer(N),N1 is N1,dx(Y,DY).

    PrologHorn. , dx(x, 1) x x 1, dx(Y, 0) Y, Y x 0. ,,.

    PrologSWI-Prolog[117]:

    ?- consult(diff).

    % diff compiled 0.00 sec, 2,560 bytes

    Yes

    ?- dx(x2+2*x*y+y2,Y).

    Y = 2*x1*1+ ((0*x+2*1)*y+2*x*0)+2*y1*0

    Yes

    consult diff.pl, dx(x2+2*x*y2, Y). x x2 + 2xy + y2 . 1 0,, x, y,. ,.

    1.2.3

    1/x2 [1, 1]. f (x)F(x), [a, b] f (x) 1.1: b

    af (x)dx = F(b) F(a) (1.1)

    , n N+(N+ 0) 1/xn 1.2:

    1xn

    dx = 1(n 1)xn1 + c (1.2)

    , 1/x2 1.3 2:

  • 1.2. 7

    1(2 1)(1)(21)

    ( 1

    (2 1)(1)(21)

    )= 2 (1.3)

    ,,. . , 1/x2 . , 1/(x)2 = 1/x2 Y. , 1 X (). 0 1/x2 2.

    . , , [, 1]. , 1.1,, F(x) [a, b]. , 1/x2 1.2 1/x. 1/x [, 1], [, 1] 1.1 1/ 1., 0,,,. ,M > 0 1/ 1. , 1/M + 1,, = 1/2(M + 1). 1/ 1 = 2M+ 1, M,, 1/x2 0,. . 1 1/x 0,. , x3/x. , 0 x3/x 0/0, x3/x. , x , 0 x3/x = x2 , 0 x3/x 0,,,. ,. ,.

    ,. ,. ,,.

    1.2.4

    , C C++, LISP. , Prolog, LISP 1980 (AI) Prolog. LISP FORTRAN,. , FORTRAN, Common Lisp Scheme, LISP

  • 8 1

    .

    LISP, LISP. , LISP,8. C FORTRAN, Prolog,.

    Maxima Common Lisp. ,.Maxima, Maxima GNU Plot.

    ,Maxima.

    AXIOM [102], Mathematica [107], Maple [108], MuPAD[110], REDUCE [112] SAGE [115], , TI DERIVE[103],mathcad [106] J[118]. .,. GPL BSDL,.MuPADMATLAB [119],. MATLAB (),. , Octave, Scilab, FreeMat, RLabMATLAB. S (S-PLUS [124] GNU R [123]) .

    8 Ocaml Haskell )

  • 9

    2

    Maxima.Maxima,.

  • 10 2

    2.1 Maxima

    , Maxima,Maxima.HelloComputer!, , +. ,, ()Maxima,.Maximamaxima, GUIwxMaxima xMaxima. GNU Emacs imaxima, KDE Cantor, TeXmacsMaxima. , KNOPPIX/Math.

    wxMaxima: MS-WindowsMaxima, , 2.1:

    2.1: wxMaxima

    wxMaximaMaxima, wxMaximaMaxima.wxMaximaMathematica,. ,wxMaxima,. ,,. ,,,.,Mathematica Shift+Enter .wxMaxima, Maxima TCP/IP. ,. Maxima,, wxMaxima-Maxima.

  • 2.1. Maxima 11

    xMaxima: Maxima,:

    2.2: xMaxima

    xMaxima 2.2, . , ASCII-art. ,,. xMaxima tcl/tk tcl/tk openmath. , plot format openmath,. xMaximawxMaximaMaxima. ,Maxima - xMaxima.

    Cantor : CantorMaxima, , Maxima SAGE, KAlgebraGNU R. Cantor Tab . LaTeX,,. ,Mathematica,., Cantor KDE4.

  • 12 2

    2.3: Cantor

    TeXmacs : WYSWYG, Maxima. gnuplot ,Macaulay2 , Octave , PARI/GP Risa/Asir , Maxima, (Insert) (Session) Maxima .

    2.4: TeXmacs

    , KNOPPIX/Math TeXmacs.

    ,Maxima. ,,.

  • 2.2. 13

    2.2

    Maxima (%i1). . ; ,, $. Maxima,. , Enter .

    . +, , , / C FORTRAN:

    (%i1) 1+2;(%o1) 3(%i2) 2/3+3/5;

    19(%o2)

    15(%i3) display2d : false ;(%o3) false(%i4) 2/3+3/5;(%o4) 19/15(%i5) (%o1)+(%o2)15;(%o5) 22(%i6) quit ();

    , Maxima. . Maxima:

    : (%i ), , %i . (%o ), %o . ,. , %i1 1+2, %oi 3.

    : 2/3 + 3/5,;, Maxima. , (%i2) 2/3+3/5. ;, %o2. Maxima ; $. , ;,, $.

  • 14 2

    : MaximawxMaxima, Cantor TeXmacs,, Maxima xmaxima ASCII. ,. ,. , Maxima display2d false,. display2d false :. ,MaximaMaxima,. C :=, Maxima :. , Maxima :=, =. C FORTRAN.

    , display2d falseMaxima 2/3+3/5; 19/15,. , display2d:true;.

    Maxima,,.

    : Maxima (%o1)+(%o2)*15, (%o1) (%o2) 15. Maxima,. Maxima,.

    Maxima. %. %th %th(n) n. , %th(1) %.

    . ,,. .

    , PC. , (%o10). ,,,. .

    : kill(labels). .

  • 2.2. 15

    . kill(labels), 1. kill(labels), %o1+%o2*15.

    Maxima: quit();Maxima. quit,quit (). Maxima, (). Maxima, , .

    : Maxima, help; :

    (%i1) help ;(%o2) type describe ( topic ); or example(topic ); or ? topic (%i2)

    describe example. describe texinfo, exampleMaxima (*.dem).

    describe. MaximaMaxima. , solve describe(solve); :

    (%i36) describe ( solve );1: fast linsolve : definitions for affine .2: funcsolve : definitions for equations .3: globalsolve : definitions for equations .4: linsolve : definitions for equations .5: linsolve params : definitions for equations .6: linsolvewarn : definitions for equations .7: solve : definitions for equations .8: solve inconsistent error : definitions for equations .9: solvedecomposes : definitions for equations .10: solveexplicit : definitions for equations .11: solvefactors : definitions for equations .12: solvenullwarn : definitions for equations .13: solveradcan : definitions for equations .14: solvetrigwarn : definitions for equations .15: zsolve : definitions for equations .

    enter spaceseparated numbers, all or none:

    7 7:solve. describe info,. ,. Maxima

  • 16 2

    , wxMaxima, xMaxima, Cantor TeXmacs, GNU Emacs.

    describe () ? . ? describe(). ?( SPACE )( Tab ). , Maxima LISP, false.

    , apropos. , int integrate apropos(int) , int:

    (%i11) apropos( int );(%o11) [ int , intanalysis , inte , integer , integerp , integer partitions ,integfactor , integrate , integrate use rootsof , integrationconstant ,integration constant counter , interaction , interpolate , interpolate subr ,

    intersect , intersection , intfaclim , intfactor , intopois , intosum, intp ,intpolabs , intpolerror , intpolrel , int partitions ]

    apropos. , int integer integrate,,.

    2.3

    Maxima C FORTRAN. ,,,, (+, , , /) C, FORTRAN,. ,. ,. ,.

    + , /. , 1+ 2 2+ 1, 1/2 2/1. +, /. ,. ,,.

  • 2.3. 17

    + , +a a,. ,. ,. !. Maxima !!:

    (%i14 ) 2 3+5 / ( 2 ( 4+1 ) ) ;13

    (%o14 ) 2

    (%i15 ) ( x+1+y 2 ) / ( x ( x+y2+1))1 /x ;(%o15 ) 0(%i16 ) 1 1 ! ;(%o16 ) 39916800(%i17 ) 1 1 ! ! ;(%o17 ) 10395(%i18 ) f a c t o r (%o17 ) ;

    3(%o18 ) 3 5 7 11(%i3 ) s tardisp : true$(%i20 ) f a c t o r ( 1 1 ! ! ) ;

    3(%o21 ) 3 5711

    ,, ! !!. factor, 11!! %o17,. Maxima *. * stardisp, false *, true *.

    Maxima. , 1,,,,,Maxima, 2, Maxima,. ,.

    infix mike:

    (%i1 ) i n f i x ( mike ) ;(%o1 ) mike(%i2 ) x mike y:=x y s in ( sqr t ( x2+y 2 ) ) ;

    2 2(%o2 ) x mike y := x y sin ( sqr t ( x + y ) )

  • 18 2

    (%i3 ) 10 mike 5 ;3 /2

    (%o3 ) 50 sin (5 )

    ,. infix(mike) mike infix. ,. ,. infix. := x mike y,,.

    , mike:

    (%i1 ) mike ( x , y ) :=x y s in ( sqr t ( x2+y 2 ) ) ;2 2

    (%o1 ) mike ( x , y ) := x y sin ( sqr t ( x + y ) )(%i2 ) i n f i x ( mike ) ;(%o2 ) mike(%i3 ) 10 mike 5 ;

    3 /2(%o3 ) 50 sin (5 )

    5.3, Maximainfix,nary, (prefix), (postfix),matchfix (nofix). 1,2, matchfix, 0. :

    (%i7 ) pre f ix ( tama ) ;(%o7 ) tama(%i8 ) tama x :=2 x ;

    x(%o8 ) tama x := 2(%i9 ) tama 3 ;(%o9 ) 8(%i10 ) p o s t f i x ( pochi ) ;(%o10 ) pochi

  • 2.3. 19

    (%i11 ) x pochi := x / 1 0 ;x

    (%o11 ) x pochi := 10

    (%i12 ) 2 pochi ;1

    (%o12 ) 5

    (2 35/4) 1, ( ) ((2 (35))/4) 1. Maxima 2*3 5/4-1 ((2 *(35))/4)-11. . 23 4+ 1 ((23) 4)+ 1, 23(4+1). . ,,,,. , 0 200. ,,. Maxima, 180. . , + 100, * 120, , 140 139.

    :

    (%i29 ) pre f ix ( t e s t : ) $(%i30 ) t e s t :2+3 t e s t : ( 2+ 3 ) ;(%o30 ) t e s t : 5 + t e s t : 2 + 3(%i31 ) pre f ix ( t e s t : , 9 0 ) $(%i32 ) t e s t :2+3 t e s t : ( 2+ 3 ) ;(%o32 ) t e s t : 5 t e s t : 5(%i33 ) %t e s t :(5 t e s t : 5 ) ;(%o33 ) 0

    test:,. 180, test:2+3 (test:2)+3Maxima. , prefix 90. test:2+3-test:(2+3) test: 2 +, 2+3. , - test: 2+3. test:2+3-test:(2+3) test:((2+3)-test:(2+3)).

    1,.

  • 20 2

    . , Maxima,.

    2.4

    Maxima C FORTRAN:

    (%i10 ) (1+2+3x ) 2 ( 1+y ) / ( z1) ;2

    (3 x + 3) ( y + 1)(%o10 )

    z 1(%i11 ) a : s in ( x ) cos ( y)x2+2(1+u 2 ) ;

    2 2(%o11 ) s in ( x ) cos ( y ) x u + 1(%i12 ) a 2 ;

    2 2 2(%o12 ) ( s in ( x ) cos ( y ) x u + 1)

    , (), :. , :=, Maxima,. =, C ==. .

    , Maxima, . , Maxima,. , expand ev.

    . , expand:

    (%i13 ) ( x+1) ( x1)+(y+1 ) 2 ;2

    (%o13 ) ( y + 1) + ( x 1) ( x + 1)(%i14 ) expand ( ( x+1) ( x1)+(y+1 ) 2 ) ;

    2 2(%o14 ) y + 2 y + x

    ,, factor, ratsimp:

    (%i8 ) 2x2+4x3+x42x5x 6 ;p 6 5 4 3 2(%o8 ) x 2 x + x + 4 x + 2 x(%i9 ) f a c t o r (%) ;

  • 2.4. 21

    2 2 2(%o9 ) x ( x + 1) ( x 2)(%i10 ) 1 / ( x+1)+x 2 / ( x 2 1) ;

    2x 1

    (%o10 ) + 2 x + 1

    x 1(%i11 ) ratsimp (%) ;

    2x + x 1

    (%o11 ) 2

    x 1

    ,. Maxima, Maxima.

    . expand. . Maxima, . , expand. , , factor. ratsimp,, trigsimp.

    ,,. ,,,. 2. .

    x2.

    x2, x. ,x 0

    x2 x,x 0

    x2 x. ,,,. (context), Maxima assume:

    (%i1 ) assume ( x>0) ;(%o1 ) [ x > 0](%i2 ) sqr t ( x 2 ) ;(%o2 ) x(%i3 ) sqr t ( y 2 ) ;(%o3 ) abs ( y )

    2, 4.19

  • 22 2

    x x>0Maxima sqrt(x2) x, sqrt(y2) y abs(y). Maxima. initial. Maxima,,.

    Maxima. ev.

    , 5.8.3. ev:

    (%i9 ) A: s in ( 3 x)cos ( 3 y ) z ;(%o9 ) s in (3 x ) cos (3 y ) z(%i10 ) ev (A, trigexpand=true , trigexpandtimes=true , eval , z=2) ;

    3 2 3 2(%o10 ) 2 ( cos ( y ) 3 cos ( y ) s in ( y ) ) s in ( x ) + 3 cos ( x ) s in ( x )(%i11 ) B : s in ( 2 x)cos ( 3 y ) ( z+1 ) 3 ;

    3(%o11 ) s in (2 x ) cos (3 y ) ( z + 1)(%i12 ) B , trigexpand=true , trigexpandtimes=true , eval , z=2;

    3 2(%o12 ) 2 cos ( x ) s in ( x ) 27 ( cos ( y ) 3 cos ( y ) s in ( y ) )

    A ev z 2, ev. ev ev( , 1, , n) ,. Maxima ( (%i)) ev.

    ,. Maxima,:

    (%i19 ) matchdeclare ( a , true ) ;(%o19 ) done(%i20 ) l e t ( tama ( a ) 2 , tama ( 2 a )+1 ) ;

    2(%o20 ) tama ( a ) > tama (2 a ) + 1(%i22 ) letsimp ( expand((1+ tama ( x ) ) 2 ) ) ;(%o22 ) tama (2 x ) + 2 tama ( x ) + 2

    tama, tama(x) 2 tama(2*x)+1 let, letsimp. Maxima 5.7.

  • 2.5. 23

    2.5

    Maxima,,,(). 123ASCII 0 9, 2/3 /.

    ,. , 3, 64, (64). Maxima 0 9., , 123.4, 12.34e+1 1.234e2. 12.34b+1 1.234b+2., a, b %i a+b*%iMaxima.

    ,Maxima fpprec fpprintprec. fpprec, fpprintprec. fpprintprec 0 fpprec. 1/3:

    (%i3 ) fpprec ; fpprintprec ;(%o3 ) 16(%o4 ) 0(%i5 ) b f l o a t ( 1 / 3 ) ;(%o5 ) 3.333333333333333b1(%i6 ) fpprec :100 $ b f l o a t ( 1 / 3 ) ;(%o7 ) 3.3333333333333333333333333333333333333333333333333333333333333333333333\33333333333333333333333333333b1(%i8 ) fpprintprec :16 $ b f l o a t ( 1 / 3 ) ;(%o9 ) 3.333333333333333b1

    fpprec 16, fpprintprec 0 fpprec 16. fpprec,, fpprintprec, 100 16. Maxima bfloat.

    ,. ,,,.

    ,

  • 24 2

    . , Maxima, LISP,.

    C FORTRAN, MATLAB. , Maxima, Maxima,. horner. hornerHorner,:

    (%i11 ) expr1 : ( x+2y ) 5 , expand ;5 4 2 3 3 2 4 5

    (%o11 ) 32 y + 80 x y + 80 x y + 40 x y + 10 x y + x(%i12 ) horner ( expr1 ) ;

    2 3 4 5(%o12 ) y ( y ( y ( y (32 y + 80 x ) + 80 x ) + 40 x ) + 10 x ) + x(%i13 ) for t ran (%) ;

    y ( y ( y ( y ( 3 2 y+80x)+80x 2)+40x 3)+10x 4)+x 5(%o13 )

    (x+2y)5 ev expr1horner, fortran FORTRAN. KNOPPIX/Math Octave:

    octave:1> x=10.1; y=12.034;octave:2> a1=time ();32 y5+80xy4+80x 2y3+40x 3y2+10x 4y+x5; time()a1ans = 1.2207 e04octave:3> a1=time (); y(y(y(y (32y+80x)+80x 2)+40x 3)+10 x4)+x 5; time()a1ans = 1.0896 e04

    Horner x=10.1 y=12.034, time. 5, Horner. ,. Maxima:

    (%i2 ) expr1 : expand ( ( x+2y ) 5 ) ;5 4 2 3 3 2 4 5

    (%o2 ) 32 y + 80 x y + 80 x y + 40 x y + 10 x y + x(%i3 ) expr1 , x=101 /10 ,y=12034 /1000;

    1421175975029930351(%o3 )

    30517578125(%i4 ) f l o a t (%) ;(%o4 ) 4.6569094349780754 e+7

    x, y, ev float

  • 2.6. 25

    . ,,. . Octave:

    octave:6> eror1=32y5+80xy4+80x 2y3+\>40x 3y2+10x 4y+x54.6569094349780754e+7eror1 = 1.4901 e08octave:7> error2=y(y(y(y (32y+80x)+80x2)+\>40x 3)+10x4)+x 54.6569094349780754 e+7error2 = 7.4506 e09

    Horner.

    ,. ,,. ,.

    2.6

    Maxima diff. ,,:

    (%i5 ) d i f f ( x y s in ( sqr t ( x2+y 2 ) ) , x ) ;2 2 2

    2 2 x y cos ( sqr t ( y + x ) )(%o5 ) y sin ( sqr t ( y + x ) ) +

    2 2sqr t ( y + x )

    (%i6 ) d i f f ( x y s in ( sqr t ( x2+y 2 ) ) , x , n ) ;n

    d 2 2(%o6 ) ( x y sin ( sqr t ( y + x ) ) )

    ndx

    (%i7 ) d i f f ( x y s in ( sqr t ( x2+y 2 ) ) , x , n ) ;n

    d 2 2(%o8 ) ( x y sin ( sqr t ( y + x ) ) )

    ndx

    x y sin

    x2 + y2 1 n. , n n,. , . , Maxima., MapleMathematica

  • 26 2

    . , LISP.

    . ,.

    Maxima, integrate. integrate,Risch risch, Risch. integrate:

    (%i18 ) i n t e g r a t e ( ( sqr t ( x 2+1 ) ) , x ) ;2

    asinh ( x ) x sqr t ( x + 1)(%o18 ) +

    2 2(%i19 ) d i f f ((%o18 ) , x ) ;

    2 2sqr t ( x + 1) x 1

    (%o19 ) + + 2 2 2

    2 sqr t ( x + 1) 2 sqr t ( x + 1)(%i20 ) ratsimp (%) ;

    2(%o20 ) sqr t ( x + 1)

    (%i21 ) i n t e g r a t e ( ( sqr t ( x 2+1 ) ) , x , 1 , 2 ) ;

    asinh ( 2 ) + 2 sqr t ( 5 ) asinh ( 1 ) + sqr t ( 2 )(%o21 )

    2 2(%i22 ) def in t ( ( sqr t ( x 2+1 ) ) , x , 1 , 2 ) ;

    asinh ( 2 ) + 2 sqr t ( 5 ) asinh ( 1 ) + sqr t ( 2 )(%o22 )

    2 2

    ,. ,. , . ,,,,. ,,,. ,,..

  • 2.7. 27

    2.7

    Maxima =. , x2 + 2x + 1 = 0Maxima x2+2*x+1=0. , x2 + 2x + 1 = 0, 0 , = 0 . , x2 + 2x + 1 = 0 Maxima , x2+2*x+1=0 ,x2+2*x+1. Maxima. [eq1, eq2].

    ,. ,. Maxima solve:

    (%i25 ) solve ( x2+2x+1 ,x ) ;(%o25 ) [ x = 1](%i26 ) solve ( [ x 2+2x y+y2+1 ,y+2x1] , [ x , y ] ) ;(%o26 ) [ [ x = 1 %i , y = 2 %i 1 ] , [ x = %i + 1 ,y = 2 %i 1 ] ]

    ,,, realroots,:

    (%i3 ) r e a l r o o t s ( x8+x3+x5) ;43873333 37579631

    (%o3 ) [ x = , x = ]33554432 33554432

    , realroots,. .

    , linsolve algsys. , algsys,:

    (%i31 ) eq1 : [ x2+yx1 ,x y2x+y ] ;2 2

    (%o31 ) [ x y + x 1 , x y + y x ](%i32 ) ans : algsys ( eq1 , [ x , y ] ) ;

    sqr t ( sqr t ( 2 ) + 2)(%o32 ) [ [ x = sqr t ( sqr t ( 2 ) + 2 ) , y = ],

    sqr t ( 2 )sqr t ( sqr t ( 2 ) + 2)

    [ x = sqr t ( sqr t ( 2 ) + 2 ) , y = ],sqr t ( 2 )

    sqr t (2 sqr t ( 2 ) )[ x = sqr t (2 sqr t ( 2 ) ) , y = ],

    sqr t ( 2 )sqr t (2 sqr t ( 2 ) )

    [ x = sqr t (2 sqr t ( 2 ) ) , y = ]]sqr t ( 2 )

    (%i33 ) eq1 , ans [ 1 ] $

  • 28 2

    (%i34 ) trigsimp (%) ;(%o34 ) [ 0 , 0]

    x2 + yx 1 = 0, xy2 x + y = 0 algsys, 4. , eq1,ans[1] ev(eq1,ans[1]),ev. ,,, 0. , ans 1, eq1 x, y, 0. , ans, [x=a, y=b] =.Maxima, , .

    d2x(t)dx2

    + Kx(t) = 0 (2.1)

    Maxima:

    (%i48 ) ode2 ( d i f f ( x ( t ) , t ,2 )+Kx ( t )=0 , x ( t ) , t ) ;I s K posi t ive , negative , or zero ?

    pos ;(%o48 ) x ( t ) = %k1 sin ( t sqr t (K) ) + %k2 cos ( t sqr t (K) )(%i49 ) i c 2 (% , t=0 ,x ( t )=0 , d i f f ( x ( t ) , t )=1 0 ) ;

    10 s in ( t sqr t (K) )(%o49 ) x ( t ) = + x ( 0 ) cos ( t sqr t (K) )

    sqr t (K)

    ode2. ode2. ode2, %k1 %k2, ode2. ,. 2, ic2 bc2. ic2(%,t=0,x(t)=0,diff(x(t),t)=10),, x(0) = 0, x(0) = 10.

    2.8

    Maxima. ,MATLAB. (bigfloat)MATLAB. 16 GNUMATLAB Octave Octave.. , matrix:

  • 2.8. 29

    (%i13 ) A: matrix ( [ 1 , 2 , 3 ] , [ 4 , 3 , 2 ] , [ 5 , 1 , 3 ] ) ;[ 1 2 3 ][ ]

    (%o13 ) [ 4 3 2 ][ ][ 5 1 3 ]

    + -. , * ,:

    (%i15 ) A+B ;[ 11 11 11 ][ ]

    (%o15 ) [ 5 5 5 ][ ][ 7 5 9 ]

    (%i16 ) AB ;[ 10 18 24 ][ ]

    (%o16 ) [ 4 6 6 ][ ][ 10 4 18 ]

    (%i17 ) A 2 ;[ 1 4 9 ][ ]

    (%o17 ) [ 16 9 4 ][ ][ 25 1 9 ]

    . Maxima,:

    (%i18 ) A . B ;[ 18 25 32 ][ ]

    (%o18 ) [ 47 50 53 ][ ][ 57 59 61 ]

    (%i19 ) A 2 ;

    [ 24 11 16 ][ ]

    (%o19 ) [ 26 19 24 ][ ][ 24 16 26 ]

  • 30 2

    (%i20 ) A .A ( 1 ) ;[ 1 0 0 ][ ]

    (%o20 ) [ 0 1 0 ][ ][ 0 0 1 ]

    invert:

    (%i21 ) inver t (A) ;[ 7 1 1 ][ ][ 30 10 6 ][ ][ 1 2 1 ]

    (%o21 ) [ ][ 15 5 3 ][ ][ 11 3 1 ][ ][ 30 10 6 ]

    (%i22 ) A ( 1 ) ;[ 7 1 1 ][ ][ 30 10 6 ][ ][ 1 2 1 ]

    (%o22 ) [ ][ 15 5 3 ][ ][ 11 3 1 ][ ][ 30 10 6 ]

    Maxima eigen:

    (%i5 ) load ( eigen ) ;(%o5 ) / usr / l o c a l / share /maxima / 5 . 9 . 2 / share /matrix / eigen . mac(%i6 ) A: matrix ( [ 1 , 2 , 0 ] , [ 2 , 1 , 1 ] , [ 0 , 1 , 1 ] ) ;

    [ 1 2 0 ][ ]

    (%o6 ) [ 2 1 1 ][ ][ 0 1 1 ]

    (%i7 ) eigenvalues (A) ;(%o7 ) [ [ 1 sqr t ( 5 ) , sqr t ( 5 ) + 1 , 1 ] , [ 1 , 1 , 1 ] ](%i8 ) eigenvectors (A) ;

    sqr t ( 5 ) 1(%o8 ) [ [ [ 1 sqr t ( 5 ) , sqr t ( 5 ) + 1 , 1 ] , [ 1 , 1 , 1 ] ] , [ 1 , , ] ,

    2 2sqr t ( 5 ) 1

    [ 1 , , ] , [ 1 , 0 , 2 ] ]2 2

  • 2.9. FORTRAN TEX 31

    (%i9 ) charpoly (A, t ) ;2

    (%o9 ) ( ( 1 t ) 1) (1 t ) 4 (1 t )

    eigenvalues, eigenvectors. charpoly.Maxima eigen, Maxima, , eigen load.

    2.9 FORTRANTEX

    Maxima FORTRAN TEX. FORTRAN fortran, TEX tex. :

    (%i12 ) expr1 : expand ( ( x+2y ) 5 ) ;5 4 2 3 3 2 4 5

    (%o12 ) 32 y + 80 x y + 80 x y + 40 x y + 10 x y + x(%i13 ) for t ran ( expr1 ) ;

    32y5+80x y4+80x 2 y3+40x 3 y2+10x 4 y+x 5(%o13 ) done(%i14 ) tex ( expr1 ) ;$$32 \ , y5+80\ , x \ , y4+80\ , x 2\ , y3+40\ , x 3\ , y2+10\ , x 4\ , y+x 5 $$(%o14 ) f a l s e

    fortran **. , FORTRANMaxima, fortran,. ,, Maxima. ,, fortran, . tex, TEX, $$:

    tex

    32 y5 + 80 x y4 + 80 x2 y3 + 40 x3 y2 + 10 x4 y + x5

    Maxima LISP translate,translate LISP compile. 8.4.

  • 32 2

    2.10

    Maxima 2 3. plot2d plot3d,, draw draw2d draw3d. plot2d plot3d. plot2d 2. plot2d, XY y = f (x) f (x), X, Y t x = f1(t), y = f2(t). [2, 2]. plot2d(sin(x),[x,-2*%pi,2*%pi]); xmaxima+openmath:

    2.5: gnuplot

    [cos (t) , sin (t) cos (t)]. set plot option nticks , 100:

    (%i5 ) s e t p l o t o p t i o n ( [ nt icks , 1 0 0 ] ) ;(%o5 ) [ [ x , 1.75555970201398 e+305 , 1.75555970201398 e+305] ,[ y , 1.75555970201398 e+305 , 1.75555970201398 e+305] , [ t , 3 , 3 ] ,[ grid , 30 , 30 ] , [ transform xy , f a l s e ] , [ run viewer , true ] , [ axes , true ] ,[ plot format , gnuplot pipes ] , [ gnuplot term , defaul t ] ,[ gnuplot out f i l e , f a l s e ] , [ nt icks , 100] , [ adapt depth , 5 ] ,[ gnuplot pm3d , f a l s e ] , [ gnuplot preamble , ] ,[ gnup l o t c urv e t i t l e s , [ defaul t ] ] , [ gnuplot curve styles ,[ with l i n e s 3 , with l i n e s 1 , with l i n e s 2 , with l i n e s 5 , with l i n e s 4 ,with l i n e s 6 , with l i n e s 7 ] ] , [ gnuplot default term command ,s e t term x11 font Helvetica , 1 6 ] , [ gnuplot dumb term command ,s e t term dumb 79 22] , [ gnuplot ps term command ,s e t s i ze 1 . 5 , 1 . 5 ; s e t term p o s t s c r i p t eps enhanced color so l id 24] ,[ p l o t r e a l p a r t , f a l s e ] ]

    plot2d([parametric,cos(t),cos(t)*sin(t),[t,-5,5]],[x,-3,3]); 2.6:

  • 2.10. 33

    2.6: gnuplot

    3 plot3d. Klein gnuplot, openmath Geomview. Klein 2.7:

    2.7: Klein

    Klein 4,, 4. , 3. Klein 2.8. A, B. B,:S1 S1, 2.7:

    A

    A

    B B A

    BBA

    Klein Bottle

    2.8: Klein ( 1)

  • 34 2

    2.8. 2.9:

    AB3

    A

    A

    B B

    Klein Bottle

    Moebius Band Moebius Band

    A

    B1

    B2B2

    B3

    A

    B1

    B2

    B3B1

    B2

    B2B2 CC=B1+B3

    A B3B1

    2.9: Klein ( 2)

    A 3. A. B2 CMobius,Mobius Klein. KleinMobius,.

    Klein 2.9 gnuplot, openmath Geomview:

    KleinMaximaplot3d([5cos(x)(cos(x/2)cos(y)+sin(x/2)sin(2y)+3.0)10.0,5sin(x)(cos(x/2)cos(y)+sin(x/2)sin(2y)+3.0),

    5(sin(x/2)cos(y)+cos(x/2)sin(2y))] ,[x,%pi,%pi] ,[y,%pi,%pi] ,[ grid,40,40])

    set plot option:

    gnuplot set plot option([plot format,gnuplot])openmath set plot option([plot format,openmath])Geomview set plot option([plot format,geomview])

  • 2.10. 35

    2.10.1 gnuplotKlein

    gnuplotMaxima. gnuplot:

    2.10: gnuplot Klein

    :

    gnuplot Kleinplot3d([5cos(x)(cos(x/2)cos(y)+sin(x/2)sin(2y)+3.0)10.0,5sin(x)(cos(x/2)cos(y)+sin(x/2)sin(2y)+3.0),

    5(sin(x/2)cos(y)+cos(x/2)sin(2y))] ,[x,%pi,%pi] ,[y,%pi,%pi] ,[ grid,40,40],[gnuplot pm3d,true] ,[gnuplot preamble,unset surf]);

    2.11: gnuplot Klein

    2.11,. 11.2 11.5.

    2.10.2 openmathKlein

    openmathMaxima,,:

  • 36 2

    2.12: openmath Klein

    ( Menu Here ,). Dismiss .

    2.10.3 GeomviewKlein

    Geomview Geometry Center, plot3d:

    2.13: Gemoview Klein

    2,. Geomview,. . 2.14 Orrey:

    2.10.4

    , Maxima. ,

  • 2.11. 37

    2.14: Orrey

    , Maxima system. 15 surfer.

    2.11

    Maxima Common Lisp, LISP. LISP. writefile,writefile LISP dribble,. writefile, appendfile. writefile appendfile closefile().:

    (%i1 ) w r i t e f i l e (maxima . tmp ) ;(%o1 ) #(%i2 ) i n t e g r a t e ( sqr t ( x 2+1) , x ) ;

    2asinh ( x ) x sqr t ( x + 1)

    (%o2 ) + 2 2

    (%i3 ) c l o s e f i l e ( ) ;(%o3 ) #(%i4 ) ratsimp ( d i f f (%o2 , x ) ) ;

    2(%o4 ) sqr t ( x + 1)

    writefilemaxima.tmp:

    ; ; Dribble of # s ta r ted 20051221 0 6 : 4 1 : 2 8(%o1 ) #(%i2 ) i n t e g r a t e ( sqr t ( x 2+1) , x ) ;

  • 38 2

    2asinh ( x ) x sqr t ( x + 1)

    (%o2 ) + 2 2

    (%i3 ) c l o s e f i l e ( ) ;; ; Dribble of # f in ished 20051221 0 6 : 4 1 : 4 4

    writefile closefile. ,, Maxima. , save stringout, grind. saveMaxima, load loadfileMax-ima. stringout grind, Maxima. save save testMaxima:

    (%i1 ) 1+2+3;(%o1 ) 6(%i2 ) a1 : x2+y2+1;

    2 2(%o2 ) y + x + 1(%i3 ) r e s u l t a n t ( xt , yt 2 , t ) ;

    2(%o3 ) y x(%i4 ) save ( t e s t , a l l ) ;(%o4 ) t e s t

    test:

    1 ; ; ; Mode : LISP ; package : maxima ; syntax : common l i s p ; 2 ( inpackage MAXIMA)3 (DSKSETQ $%I1 ( (MPLUS) 1 2 3 ) )4 (ADDLABEL $%I1 )5 (DSKSETQ $%O1 6)6 (ADDLABEL $%O1)7 (DSKSETQ $%I2 ( (MSETQ) $A1 ( (MPLUS) ( (MEXPT) $X 2)8 ( (MEXPT) $Y 2) 1 ) ) )9 (ADDLABEL $%I2 )

    10 (DSKSETQ $%O2 ( (MPLUS SIMP ) 1 ( (MEXPT SIMP ) $X 2)11 ( (MEXPT SIMP ) $Y 2 ) ) )12 (ADDLABEL $%O2)13 (DSKSETQ $%I314 ( ($RESULTANT) ( (MPLUS) $X ( (MMINUS) $T ) )15 ( (MPLUS) $Y ( (MMINUS) ( (MEXPT) $T 2 ) ) ) $T ) )16 (ADDLABEL $%I3 )17 (DSKSETQ $%O318 ( (MPLUS SIMP ) ( (MTIMES SIMP ) 1 ( (MEXPT SIMP RATSIMP) $X 2 ) )19 $Y ) )20 (ADDLABEL $%O3)21 (DSKSETQ $%I4 ( ( $SAVE) &TEST $ALL ) )

  • 2.11. 39

    22 (ADDLABEL $%I4 )23 (DSKSETQ $A1 ( (MPLUS SIMP ) 1 ( (MEXPT SIMP ) $X 2)24 ( (MEXPT SIMP ) $Y 2 ) ) )25 (ADD2LNC $A1 $VALUES)26

    Maxima . (MSETQ) , LISP S,, LISP.Maxima. Maxima LISP.

  • 41

    3 LISP

    Maxima LISP. LISP. LISP.

  • 42 3 LISP

    3.1

    Maxima. Maxima, , ,., LISPMaxima,. load. MathematicaMaple,. LISP.LISP, FORTRAN. FORTRAN, LISP(LIStProcessor) (list).LISP car cdr. LISP. LISP FORTRAN IBM 704, car cdr CAR (Contents of Address Register) CDR (Contents of Decrement Register). John McCarthy -Recursive Functions of Symbolic Expression and their Computation by Machine(Part I) car cdr cons, atom eq ([87]). LISP.LISP ( ). , S1 , S, -. ,,. LISP, SBCL. , C,,. 1980 LISP2, Symbolic Inc. LISP. LISP, GNU EmacsAutoCAD LISP3. . LISP 1970 MIT MAC MACLisp4 Bolt Beranek and Newman Inc. Xerox Palo Alto InterLisp. 1975 LISP Scheme.1980Common Lisp: The Language1 (1984)KCL(KyotoCommon Lisp). KCL GNUGCL. LISP Common Lisp Scheme.

    1FORTRAN M . M .2. , C

    .3Emacs LISP4MACLisp Macintosh LISP . MACLisp MACSYMA

    MACSYMA

  • 3.2. , 43

    Common Lisp CLISP LISP, GCL.

    3.2 ,

    , Common Lisp. CLISP Common LispLISP. CLISP. MaximaMaximaMaxima to lisp(); . Common Lisp5:

    (%i1) to lisp ();Type ( tomaxima) to restart , ( $quit ) to quit Maxima.

    MAXIMA> (+ 1 2)3MAXIMA> (append (1 2 3) (4 5 6))(1 2 3 4 5 6)MAXIMA> (tomaxima)Returning to Maxima(%o1) true

    Maxima to lispMaxima LISP MAXIMA>, (to-maxima) LISP. LISP ($quit) LISP. ($quit)Maximaquit();,Maxima (6.4). LISP:

    [1]> 11[2]> 12341234[3]> 12/9841/82[4]> 0.010.01[5]> abcabc[6]> abc def /234abc def /234[7]> #\a#\a

    ,,. LISP. .

    5Sourceforge Maxima GCL.

  • 44 3 LISP

    , #\ #\. LISP.

    , S, S

    ., , , LISP. C FORTRAN1+2+3+4, 1*2*3*4 1/2/3/4, LISP:

    [7]> (+ 1 2 3 4)10[8]> ( 1 2 3 4)24[9]> (/ 1 2 3 4)1/24

    LISP. . 1 + 2,. .Abobe PostScript(,PS) . PostScript,,. ,. PostScript Forth KNOPPIX/Math kan/sm1., , ( ) 1 + 2 (3 + 4/5). Lisp (+ 1 (* 2 (+ 3 (/ 4 5)))) (). + * ( ). 1 + 2 (3 + 4/5) 1 + (2 (3 + (4/5))) ( ). , S(+ 1 (* 2 (+ 3 (/ 4 5)))). :

  • 3.2. , 45

    S (+ 1 (* 2 (+ 3 (/ 4 5))))

    1

    2

    3

    4 5

    /

    +

    *

    +

    . Maxima,. LISP. , f f (x1, . . . , xn) LISP ( f x1 . . . xn).

    3.2.1 LISP

    Common Lisp:

    LISP

    : +, -, *, /: mod: cos, sin, tan, acos, asin, atan: exp, log

    ,. LISP sin:

    [9]> ( sin pi )5.0165576136843360246 l20[10]> ( sin (/ pi 2))1.0 l0

    sin () sin (/2). /2. (/ pi 2) pi/2. , /. LISP ( ). LISP Lots ofIrritating Superfluous Parentheses.

  • 46 3 LISP

    ( ) LISP, LISP (LIStProcessing). ,. S. Common Lisp, a+ ib LISP #c(a b):

    [26]> ( #c(1 2) #c(2 1))#c(4 3)[27]> ( #c(2 1) #c(2 1))5[28]> ( 2 #c(2 1))#c(4 2)[29]> ( #c(0 1) #c(2 1))#c(1 2)[30]> ( #c(1 0) 1)0[31]> (= #c(1 0) 1)t

    S #c(a 0) a. 1, =. =, t LISP, Boole. nil, nil,EOF(=endof file),.LISP. , a #\a #\, abcd . C FORTRAN. string. concatenate. concatenate:

    [23]> ( concatenate string ( string #\a ))a[24]> #\a#\a[25]> ( string #\a)a[26]> (codechar 65)#\a[27]> ( charcode #\a)65[28]> ( concatenate string ( string #\a) ( string #\b ))ab[29]> ( concatenate string abc 123)abc123

    string #\a a. code-char , char-code . concatenate.

  • 3.3. 47

    3.3

    LISP. (1 2 34 abcd),. C, C,.LISP (+ 1 2 34). + 2, 1 + 2 + 34.LISP. LISP, S. ,,., 1 n, fexample1:

    1 (defun example1 (f n)2 ( let ((a nil ))3 (dotimes(i n)4 (setq a (append a (list (+ i 1)))))5 (apply f a )))

    defun. . :

    [36]> (example1 + 10)55[37]> (example1 10)3628800[38]> (example1 / 10)1/3628800[39]> (example1 10)53[40]> (example1 list 10)(1 2 3 4 5 6 7 8 9 10)

    C. C FORTRAN. ,. LISP,. LISP. .

    car:

  • 48 3 LISP

    [1]> ( car (1 2 3 4 54))1

    cdr. , nil:

    [2]> (cdr (1 2 3 4 5))(2 3 4 5)[3]> (cdr (cdr (cdr (1 2 3 ))))nil

    append. ,. ,:

    [3]> (append (1 2 3 4) (2 3 4))(1 2 3 4 2 3 4)[4]> (append (1 2 3 4) (5 6 7 ) ( a b c d))(1 2 3 4 5 6 7 a b c d)[5]> (append (1 2 3 4) (5 6 7 ) (1 2 3 ( a b c d )))(1 2 3 4 5 6 7 1 2 3 ( a b c d))

    cons. , a b cons, car a, cdr b:

    [6]> (cons (1 2 3 4) (5 6 7 ))((1 2 3 4) 5 6 7)[7]> ( car (cons (1 2 3 4) (5 6 7)))(1 2 3 4)

    caar, cadr cddr car cdr. caar car. cadr cdr, car. cddr cdr.

    3.4 tnil

    LISP t, nil. nil LISP. , nil:

  • 3.5. 49

    [2]> (> 1 3)NIL[3]> (> 3 2)T

    S. or and: or (or 1 2 ) , t t, nil. and (and 1 2 ) , t t, ni.LISP if cond.

    [10]> ( if (< 3 2)( print neko)( print mike))

    mikemike[11]> ( if (> 3 2)( print neko)( print mike))

    nekoneko[12]> ( setq a 128)128[13]> (cond ((> a 10)( print mike))(( a ( setq a1 (makearray 5 : initial element 1))#(1 1 1 1 1)[7]> ( aref a1 0)1[8]> ( setf ( aref a1 2) 2)2[9]> a1#(1 1 2 1 1)

  • 50 3 LISP

    setq. , setf setq, setq. texttt(setf (aref a1 2) 2) a1 3 2, a1 3 2.

    3.6

    LISP. make-hash-table. (make-hash-tabel a) a. . ,. gethash:

    [3]> ( setq a (makehashtable))#s (hashtable eql )[4]> ( setf (gethash :one a) 1)1[5]> ( setf (gethash : two a) (1 2))(1 2)[6]> ( setf (gethash : three a) 1 2 3)1 2 3[7]> a#s (hashtable eql (: three . 1 2 3) (: two 1 2) (: one . 1))[8]> (gethash : three a)1 2 3 ;t

    a. setf, gethash. :one, :two, :three.

    3.7

    setf setq (,). setf setq, setf. setf.eval. let:

    [26]> ( setf a 1)1[27]> ( 2 a (+ a a ))4[28]> ( setq a 1)1[29]> ( setq b 128)

  • 3.8. 51

    128[30]> ( setq c (/ a b ))(/ a b)[31]> ( eval c)1/128[32]> ( let (( x 2)) ( x 2))4[33]> x

    eval : variable x has no value

    eval () S.Maxima,MapleMathematica diff(a,x) eval.let. x 2, let x. let. :

    [35]> ( setf y 3)3[36]> ( let (( x 2)( y 10)) ( x y ))20[37]> y3

    let x 10, let x 3. let. let*. let* let:

    [12]> ( let (( x 2)( y ( sin x )))(+ x y ))

    eval : variable x has no valuethe following restarts are available :storevalue : r1 you may input a new value for x .usevalue : r2 you may input a value to be used instead of x .

    break 1 [13]> : q

    [14]> ( let (( x 2)( y ( sin x )))(+ x y ))2.9092975

    3.8

    LISP C. C,. defstruct. force. ,

  • 52 3 LISP

    3Decarte X fx, Y fy, Z fz:

    [1]> ( defstruct force fx fy fz )FORCE[2]> ( setf F 1 (makeforce : fx 0 : fy 0 : fz 9.80665))#S(FORCE :FX 0 :FY 0 :FZ 9.80665)[3]> ( forcefz F 1 )9.80665[4]> ( forcep F 1)T

    force, forcemake-force force-fx, force-fy, force-fz, force-p,.

    3.9

    LISP,.

    (Maplemap).

    mapcarmapcar:

    [1]> (mapcar sin (1 2 3 4 5))(0.84147096 0.9092974 0.14112 0.7568025 0.9589243)

    sin (1 2 3 4 5).

    applyapply.

    S:

    [154]> (defun pab( x y ) (+ x y ))pab[155]> (apply pab (1 2))3

    3.10 lambda

    lambdaChurch LISP. LISP lambda. Frege, f (x) x f , f x,

  • 3.11. 53

    Church. f (x) = x2 f x x2 , x f (x) f . LISP lambda (lambda (x) (* x x)). lambda, LISP, lambda apply, mapcar. lambdaMaxima,.

    3.11

    defun. 2 (defun x2 (x) (* 2 x)). let let. let,. let*.

    3.12

    if cond.

    if: 1:

    if

    (if )(S1) (S2)

    if t S1, nil S2. S1 and or S. S2and S:

    1 (defun my matrixp (x)2 ( if (and(typep x hashtable)3 (numberp (gethash :row x))4 (numberp (gethash :col x)))t5 nil ))

    cond: :

  • 54 3 LISP

    cond(cond ((1) (S1))

    . . .

    ((n) (Sn))(t (Sn+1)))

    cond i i t Si cond. nil, Sn+1:

    1 (defun setmatrixelement (a x e)2 ( if (my matrixp x)3 (cond((> (car a)(gethash :row x))nil )4 ((> (cadr a)(gethash :col x)) nil )5 ( t ( setf (gethash a x) e )))))

    3.13

    LISP. () (P):

    (1 1 n n)

    :

    setf (setf (get ) )push (push (get ))get (get )symbol-plist (symbol-plist )

    setf push . pop, inof deof. get, symbol-plist:

    [8]> (push ( get my cat ))()[9]> (push ( get my cat ))( )[10]> (push ( get my cat ))( )[11]> (push ( get my cat ))( )

  • 3.14. 55

    [12]> (symbolplist my cat)( ( ))[13]> ( get my cat )( )

    Russell LISP. , 1. 4.20. (,). , , . 3 A. ,.

    3.14

    LISP.

    load: LISP load:

    load

    (load )

    LISP, tama.lisp, (load "tama.lisp") .Common Lisp.

    open :

    open

    (open :direction :input) .(open :direction :output) .

    close: :

    close

    (close)

  • 56 3 LISP

    . test1 LISP test2. test1:

    test1

    1 1 2 3 42 TEST

    LISP:

    [1]> ( setf test1 (open test1 : direction : input ))#[2]> ( setf x1 (read test1 ) x2 (read test1 ) x3 (read test1 ) x4 (read test1 ))4[3]> ( setf str1 (read test1 ) )TEST[4]> ( close test1 )T[5]> ( setf test2 (open test2 : direction :output ))#[6]> ( print str1 test2 )TEST[7]> ( print x1 test2 )1[8]> ( print x2 test2 )2[9]> ( print x3 test2 )3[10]> ( print x4 test2 )4[11]> ( close test2 )T

    open test1. test1 read. close test1 test1. test2, print test2, close test2. print test2:

    test2

    1 TEST2 13 24 35 4

    read, , (*standard-input*).

  • 3.14. 57

    prin1, princ print. ,. format. format C fprint fprint:

    format(format S )(format t S )

    , S. t. :

    a s % w, dF w, dE w, dG

    [75]> ( setq a ( sin (/ pi 4)))0.70710678118654752444 L0[76]> (format t a= a a)a=0.70710678118654752444L0NIL[77]> (format t a= s a)a=0.70710678118654752444L0NIL[78]> (format t a= 5,3 f a)a=0.707NIL[79]> (format t a= 5,3 e a)a=7.071L1NIL[80]> (format t a= 5,3 g a)a=.707NIL

    LISP. 12 13MaximaMaxima.

  • 58 3 LISP

    :Common Lisp

    MaximaCommon Lisp,GCL, CLISP,CMUCL, SBCL ,OpenMCL , Allegro Common Lisp(ACL) . sourceforgeMaximaGCL, LISP. CLISP, CMUCL SBCL, 64bit SBCL,GCL., MaximaCommon Lisp, sourceforgeMaxima, configure, ./configure --help ,Optional Features LISP. Maxima-5.15.0, configure helpOptional Features:

    enableclisp Use clispenablecmucl Use CMUCLenablescl Use SCLenablesbcl Use SBCLenableacl Use ACLenablegcl Use GCLenableopenmcl Use OpenMCL

    , Maxima-5.15.0 CLISP, CMUCL, SCL, SBCL, ACL, GCLOpenMCL. ,. CLISP.

  • 59

    4

    (oo) ...., .

    ,

    Maxima. Maxima. , , .,,., ,, ,. ,. ,,.,,,,. ,.

  • 60 4

    4.1

    ,. ,,. ,,,. ,.,,,. ,. ,.

    , 2,,. ,,,,,,1. ,,,,,,. . ..

    , , . , , , .

    ,. ,,. ,, , , ,. ,. ,,,,.