Bibliography - link.springer.com978-3-662-25527-8/1.pdf · Bibliography 281 [Hof92] M.H. Hoft....
Transcript of Bibliography - link.springer.com978-3-662-25527-8/1.pdf · Bibliography 281 [Hof92] M.H. Hoft....
Bibliography
[AB92a] M. Abell and J. Braselton. Mathematica by Example. Academic Press, Inc., Boston, 1992.
[AB92b] M. Abell and J. Braselton. The Mathematica Handbook. Academic Press, Inc., Boston, 1992.
[AB93] M. Abell andJ. Braselton. Differential Equations with Mathematica. Academic Press, Inc., Boston, 1993.
[Bau93] G. Baumann. Mathematica in der theoretischen Physik. SpringerVerlag, Heidelberg, 1993.
[BD92] D.C.M. Burbulla and C. T.J. Dodson. Self-Tutor for Computer Calculus Using Mathematica. Prentice-Hall, Englewood Cliffs, 1992.
[BDPU93] D. Brown, W. Davis, H. Porta, and J. Uhl. CALCULUS&Mathematica. Addison-Wesley Publishing Company, Reading, preliminary edition, 1993.
[BF79] J.L. Bentley and J.H. Friedman. Algorithms for reporting and counting geometric intersections. Technical Report C-28, IEEE Transactions on Computing, 1979.
[BF89] R.L. Burden and J.D. Faires. Numerical Analysis. PWS-Kent Publishing Co., Boston, 4th edition, 1989.
[BKM92] P. Boyland, J. Keiper, and E. Martin. Guide to standard Mathematica packages. Mathematica technical report, Wolfram Research, Inc., Champaign, 1992.
[BKMW91] B. Braden, D. Kurg, P. McCartney, and S. Wilkinson. Discovering Calculus with Mathematica. John Wiley & Sons, New York, 1991.
[Bla91]
[Bla92]
N. Blachman. Mathematica, A Practical Approach. Prentice-Hall, Englewood Cliffs, 1991.
N. Blachman. Mathematica Quick Reference, Version 2. AddisonWesley Publishing Company, Redwood City, 1992.
280 B I B L I 0 G R A P H Y
[Cas92a]
[Cas92b]
[CR91]
[Cra91]
[Cra93]
[Cul91]
[DST88]
[EL91]
[Fea93]
[FL92]
[Gar92]
[GG91]
[GG92]
[GJ79]
[GL83]
[Gra72]
[Gra93]
[GS88]
[Gut91]
[Hay92]
J. Casti. Reality Rules: I, Picturing the World in Mathematics- The Fundamentals. John Wiley & Sons, Inc., New York, 1992.
J. Casti. Reality Rules: II, Picturing the World in Mathematics -The Frontier. John Wiley & Sons, Inc., New York, 1992.
P. Crooke and J. Ratcliffe. Guidebook to Calculus with Mathematica. Wadsworth Publishing, Pacific Grove, 1991.
R.E. Crandall. Mathematica for the Sciences. Addison-Wesley Publishing Company, Redwood City, 1991.
R.E. Crandall. Personal communication, March 1993.
J.C. Culioli. Introduction to Mathematica. Ellipses, Paris, 1991.
J.H. Davenport, Y. Siret, and E. Tournier. Computer Algebra, Systems and Algorithms for Algebraic Computation. Academic Press, Inc., Boston, 1988.
W. Ellis and E. Lodi. A Tutorial Introduction to Mathematica. Brooks Cole Publishing Company, Pacific Grove, 1991.
J. Feagin. Quantum Methods with Mathematica. TELOS/SpringerVerlag Publishers, Santa Clara, 1993.
J. Finch and M. Lehman. Exploring Calculus with Mathematica. Addison-Wesley Publishing Company, Redwood City, 1992.
M. Gardner. Fractal Music, Hypercards and More .... W.H. Freeman and Company, New York, 1992.
T. Gray and J. Glynn. Exploring Mathematics with Mathematica. Addison-Wesley Publishing Company, Redwood City, 1991.
T. Gray and J. Glynn. The Beginners Guide to Mathematica 2. Addison-Wesley Publishing Company, Redwood City, 1992.
M. Garey and D. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman, San Francisco, 1979.
G.H. Golub and C.F. Van Loan. Matrix Computations. Johns Hopkins University Press, Baltimore, 1983.
R.L. Graham. An efficient algorithm for determining the convex hull of a finite planar set. Information Processing Letters, 1, 1972.
A. Gray. Modern Differential Geometry of Curves and Surfaces. CRC Press, New York, 1993.
M. Galin and R. Sedgewick. Analysis of a simple yet efficient convex hull algorithm. In 4th Annual Symposium on Computational Geometry. ACM, 1988.
H. Gutowitz, editor. Cellular Automata: Theory and Experiment. The MIT Press, Cambridge, 1991.
A. Hayes. Sums of cubes of digits, driven to abstraction. Mathematica in Education, 1(4):3-11, 1992.
Bibliography 281
[Hof92] M.H. Hoft. Laboratories for Calculus I Using Mathematica. Addison-Wesley Publishing Company, Reading, 1992.
[Hon76] R. Honsberger. Mathematical Gems II. The Dolciani Mathematical Expositions, Number Two. The Mathematical Association of America, Providence, 1976.
[Jac92] D. Jacobson. Floating point in Mathematica. The Mathematica Journal, 2(3):42-46, 1992.
[Jar73] R.A. Jarvis. On the identification of the convex hull of a finite set of points in the plane. Information Processing Letters, 2, 1973.
[Kau92] S. Kaufmann. Mathematica als Werkzeug, Eine Einfiihrung mit Anwendungsbeispielen. Birkhauser Verlag, Basel, 1992.
[KNJ93] S.G. Kang, G.W. Nam, and G.C. Jun. Mathematica?! Sungandang, Seoul, 1993.
[Knu73] D.E. Knuth. The Art of Computer Programming, Volume 1, Fundamental Algorithms. Addison-Wesley Publishing Company, Reading, 2nd edition, 1973.
[Knu81] D.E. Knuth. TheArtofComputerProgramming, Volume 2, Seminumerical Algorithms. Addison-Wesley Publishing Company, Reading, 2nd edition, 1981.
[Kof93] M. Kofler. Mathematica. Einfiihrung und Leitfaden fiir den Praktiker. Addison-Wesley, Deutschland, Berlin, 1993.
[Koi92] S. Koike. Mathematica: Introduction to Algebraic Computation. Gijutsuhyooronsha, Tokyo, 1992.
[Kor84] R.R. Korfhage. Discrete Computational Structures. Academic Press, Inc., Orlando, 2nd edition, 1984.
[KW91] V. Klee and S. Wagon. Old and New Unsolved Problems in Plane Geometry and Number Theory, Volume 11 of The Dolciani Mathematical Expositions. The Mathematical Association of America, Providence, 1991.
[Lag85] J.C. Lagarias. The 3x + 1 problem. The American Mathematical Monthly, 92:3-23, 1985.
[Lin65] S. Lin. Computer solutions of the traveling salesman problem. Bell System Technical Journal, 44:2245-2269, 1965.
[LLKS85] E. Lawler, J.K. Lenstra, A.H.G. Rinnooy Kan, and D.B. Shmoys. The Traveling Salesman Problem. John Wiley and Sons, New York, 1985.
[Mae91] R.E. Maeder. Programming in Mathematica. Addison-Wesley Publishing Company, Redwood City, 2nd edition, 1991.
[Mae92] R. Maeder. The design of the Mathematica programming language. Dr. Dobbs Journal, 17(4):86, 1992.
[Man82] B. Mandelbrot. The Fractal Geometry of Nature. W.H. Freeman and Company, New York, 1982.
282 B I B L I 0 G R A P H Y
[Mat69]
[MB83]
[MiE]
[NW78]
[PB89]
[Pie83]
[PS85]
[RB72]
[Ros90]
[RSL77]
[RT81]
[Sed88]
[Sfe93]
[SH75]
[She62]
[SK93]
[Ski90]
[Tho80]
M.V. Mathews. The Technology of Computer Music. MIT Press, Cambridge, 1969.
T.A. McMahon and J.T. Bonner. On Size and Life. Scientific American Books, Inc., New York, 1983.
Mathematica in Education. TELOS/Springer-Verlag New York, Santa Clara.
A. Nijenhuis and H. Wilf. Combinatorial Algorithms. Academic Press, Inc., New York, 2nd edition, 1978.
L.K. Platzman and J.J. Bartholdi. Spacefilling curves and the planar traveling salesman problem. Journal Assoc. for Computing Machinery, 36:719-737, 1989.
J.R. Pierce. The Science of Musical Sound. W.H. Freeman and Company, New York, 1983.
F.P. Preparata and M.I. Shamos. Computational Geometry: An Introduction. Springer-Verlag Publishing Co., New York, 1985.
B. Rust and W.R. Burrus. Mathematical Programming and the Numerical Solution of Linear Equations. American Elsevier Publishing Co., New York, 1972.
T.D. Rossing. The Science of Sound. Addison-Wesley Publishing Company, Reading, 2nd edition, 1990.
D.J. Rosenkrantz, R.E. Stearns, and P.M. Lewis. An analysis of several heuristics for the traveling salesman problem. SIAM Journal of Computing, 6:563-581, 1977.
E.M. Reingold and J.S. Tilford. Tidier drawings of trees. IEEE Trans. Software Eng., SE-7:223-228, March 1981.
R. Sedgewick. Algorithms. Addison-Wesley Publishing Company, Reading, 2nd edition, 1988.
A.A. Sfeir. Une Nouvelle Approche Du Calcul Scientiftque. Angkor Editeur and RITME Informatique, France, 1993.
M.I. Shamos and D. Hoey. Closest-point problems. In 16th Annual Symposium on Foundations of Computer Science. IEEE, 1975.
R. Shepard. The analysis of proximities: Multidimensional scaling with an unknown distance factor. Psychometrics, 27:125-140, 1962.
R.D. Skeel and J.B. Keiper. Elementary Numerical Computing with Mathematica. McGraw-Hill, Inc., New York, 1993.
S. Skiena. Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica. Addison-Wesley Publishing Company, Redwood City, 1990.
D.E. Thomsen. Making music fractally. Science News, 117:187, 1980.
Bibliography 283
[TMJ] The Mathematica Journal. Miller Freeman Publishers, Inc., San Francisco.
[Var91]
[Var93]
[VC75]
[VC78]
[Vve93]
[Wag91]
[WJ93]
[Wol91]
[Wol92]
I. Vardi. Computational Recreations in Mathematica. AddisonWesley Publishing Company, Redwood City, 1991.
H. Varian, editor. Economic and Financial Modeling with Mathematica. TELOS/Springer-Verlag Publishers, Santa Clara, 1993.
R. F. Voss and J. Clarke. 1/f noise in music and speech. Nature, 258:317-318, 1975.
R. F. Voss and J. Clarke. 1/f noise in music. The Journal of the Acoustical Society of America, 63:258-263, 1978.
D. Vvedensky. Partial Differential Equations with Mathematica. Addison-Wesley Publishing Company, Redwood City, 1993.
S. Wagon. Mathematica in Action. W.H. Freeman and Company, New York, 1991.
T. Wickham-Janes. Computer Graphics with Mathematica. TELOS Springer-Verlag Publishers, Santa Clara, 1993.
S. Wolfram. Mathematica, A System for Doing Mathematics by Computer. Addison-Wesley Publishing Company, Redwood City, 2nd edition, 1991.
S. Wolfram. Mathematica Reference Guide. Addison-Wesley Publishing Company, Redwood City, 1992.
Index
! , Factorial, 16
!=, Unequal, 13
#,Slot, 84
$Context, 268
$ContextPath, 268
$IterationLimit, 143
$MachinePrecision, 194
$Recursion1imit, 170
&, Function, 84
', Derivative, 30
->,Rule, 110
I, Divide, 7
I., ReplaceAll, 110
II., ReplaceRepeated, 112
I;, Condition, 104
:=, SetDelayed, 94
:>, RuleDelayed, 111
;, CompoundExpression, 8, 16, 80
<,Less, 13
<<, Get, 26, 44, 266
<=, LessEqual, 13
=,Set, 94
==, Equal, 13
>,Greater, 13
>=, GreaterEqual, 13
?, (information escape), 6, 36
%,Out, 2
&&,And, 14
·,Power, 7
··,(number base), 200
_, Blank, 46, 101
__ , BlankSequence, 103
___ , BlankNullSequence, 103
I, Alternatives, 105
II, Or, 14
1/f music, 263
Aborting calculations, 6
Abs, 196
acce!Newton,217
Accuracy, 198,208
definition of, 206
internal representation, 198
Action menu, 7
addPairs, 133
addTriples, 134
Algorithms, nondeterministic, 242
Alternatives
and pattern matching, 105
Alternatives, (I), 105
Ampersand (&),Function, 84
And, (&&), 14
angle, 245
Anonymous functions, 83
Function, 83
and Module, 86
evaluation of, 84
example of, 90
example of predicate, 104
286 INDEX
functional form, 83
multiple variables, 84
naming, 84
nested, 85
precedence, 104
shorthand notation, 85
standard input form, 84
Anti-derivative Integrate, 31
Append, 59
Apply, 63
used to change the head of expres-
sion, 98
applyChar, 119-121
ArcCos, 28
ArcSin, 28
ArcTan,245
areEltsEven, 77, 84
Arg,196
Arguments to expressions, 97
Arithmetic
different data types, 197
exact, 206
extended precision, 198
inexact, 206
machine, 194
modular, 261
unexpected results, 199
Array, 55
Arrays, see Matrices
ASCII character codes, 67
table of, 67, 154
AspectRatio, 39, 223
Atoms, 98
internal representation, 99
numbers, 99
strings, 99
structure of, 99
symbols, 98
Attributes, 18
of Plus, 209
changing of, 19
Flat, 18
HoldAll, 186
HoldFirst, 186
Listable, 63
Oneidentity, 19
Orderless, 18
Protected, 19
Augmented matrix, 147
Auto-correlation, of sound, 258
Automatically loading packages, 37
Auxiliary functions, 80
Axes, 222
Bach, J.S., 262
balanced, 15 3
Balanced trees, 153
BarChart, 202
BaseConvert, 272
BaseForm, 199
Bases
numbers in various, 200
of real numbers, 200
Begin, 267
BeginPackage,271
multiple arguments to, 272
Bernoulli numbers, BernoulliB, 16
BernoulliB, 16
Binary numbers, 201
Binary shifts, 201
Binary trees, 150
definition of, 151 Binomial, 32
Binomial coefficients, Binomial, 32
Binomial theorem
Isaac Newton, 32
bisect, 180
Bisection method
for root finding, 179
Blank(_), 46
Blanks, 101
double blanks, ( __ ), 103
single blank, (_), 101
triple blank, ( ___ ), 103
Body of function, 76
Boolean operators, 14
Brandenburg Concerto, 262
Brownian movement
sounds of, 260
Brownian music, 260
Built-in graphics
internal representation, 219
options for, 239
structure of, 233
C major scale, 259
C programming language, xv Calculus'VectorAnalysis', 266 canFollow, 117 Canonical order, 18
of lists, 58
carddeck, 78 Caret, Power("), 7
Casti, John, 262
catNodes, 153
Cells,21
groups of, 21 in notebooks, 21
Character codes, 67
variable length, 155 Characters, 66
Characters, 67
Chemical elements
abbreviations for, 36
atomic weights of, 36
ChemicalElements.m, 35 electron configuration of, 36
heat of vaporization of, 36 Chi-square test, 205
chooseWithReplacement, 79
Circle, 225
Circles
represented parametrically, 39 Clear, 76, 77 Clearing values, Clear, 76 Closed path, 242
Collatz sequence conjectures concerning, 166 definition of, 131
Color wheel
creation of graphic, 232
ColorFunction, 241
Command completion, 7
Command line interface, 5, 25
starting Mathematica, 25
Comments, 9
Complement, 61
Complex, 197
Complex numbers, 196
absolute value of, Abs, 196
arithmetic with, 196
conjugate of, Conjugate, 196
Index 287
geometric representation, 197
imaginary part, lm, 196 pattern matching, 197
phase angle, Arg, 196 real part, Re, 196
Component assignment
in lists, 181
Compound functions, 76, 80
and global rule base, 96
creation of, 80
order of evaluation, 80, 81
syntax, 80 compress, 185
Compression of data Huffman encoding, 154
Computer systems
variation between, 5
Computers in technical education, xiii
use of in research, xiii
Condition,/;, 104
Condition numbers, 218
Conditional functions, 118
If, 118 nesting of, 124
Switch, 120
Which,120
within clauses, 125 Conditional pattern matching, 104
using predicates, 104 con~uniber, 218 Conjugate, 196
Conjunction And, (&&), 14
Constants
computing with, 195
mathematical, 28
representation of, 195
Contexts, 265, 267
and package names, 270
conventions for, 268
current, $Context, 267
End,269
Global', 267
naming conventions, 267
nesting of, 269
path of, $ContextPath, 268
288 INDEX
private, BeginPackage, 271
removing definitions, Remove, 2 76
starting new, Begin, 267
System', 267
Contour plots
simple examples of, 41
ContourGraphics, 234
ContourPlot, 41, 234
convert, 201
convex, 248
Convex hull, 248
Convex polygons, 248
Cos, 28
Count, 89
CrossProduct, 266
Cuboid, 228
Curl, 266
D, 30
Damping Factor
argument to FindRoot, 217
Dashing, 223, 231
Data
plotting with ListPlot, 44
representation of, 44
visualizing with graphics, 38
Data compression
Huffman encoding, 154
runEncode, 135
Data types, 10
DataManipulation, 202
ddx, 141
deal, 79, 81, 82, 86, 133
Debugging, 167
printing variables, 168
using Trace, 15, 167
using TracePrint, 15, 167
DeclarePackage, 37, 276
Declaring values, 96
decode,158
Default values of iterators, 52, 175
Delayed evaluation, 95
Delete, 57, 78
Denominator, 193
Density plots, DensityPlot, 42
DensityGraphics, 233
DensityPlot, 42
Dependent system of equations, 148
Derivatives
Derivative, 30
notation for, 173
numerical, 211
programming symbolically, 140
Deterministic algorithms, 242
Diagonal
of matrix, 149
Differential equations
symbolic solution of, DSolve, 31
Differentiation
Digits
symbolic, D, 30
conversion to numbers, 199
of integers, IntegerDigits, 199
of real numbers, Re~igits, 200
Dimensions, 54
Disjunction Or (Ill. 14
Disk, 232
distance, 79
Divide (1). 7
divide 1 OOBy, 121
Divisors, 49
Do, 174
compared to Nest, 175
compared to Table, 174
Dodecahedron,228
Dot, 64
Dot product, using Inner, 65
Double blank, 103
Double integrals, Integrate, 31
doubleUptoZero, 135
drawSepTree, 251
Drop, 57
DSolve, 31
Dynamic programming, 108, 162
rules in global rule base, 164
E,28
E, Euler's constant, 195
Ears, and hearing, 253
Efficiency of pattern matching, 124
eliminPlace, 188
elimxl, 147
Empty list, 51
enclose, 248
encodeChar, 157
encodeString, 15 7, 161
Encoding
Huffman, 154 End, 269
EndPackage, 271
Entering input, 5, 22
Equal(==), 13
Equal-tempered scale, 259
Equations
matrix, LinearSolve, 145
solution of, 171
solution of, Solve, 29
solving by bisection, 179
systems of, 145
Eratosthenes
sieve of, 182
Error messages
debugging, 169
Errors
common, 169
due to roundoff, 208
infinite recursion, 170
omitting arguments, 169
sampling for graphics, 236
syntax, 169
Euclidean plane classifying points in, 122
Euler's constant, EulerGamma, 28, 48
Euler's totient function, EulerPhi, 32
EulerGamma, 28, 48
EulerPhi, 32
Evaluation
delayed, using SetDelayed, 95
delayed, RuleDelayed, 111
example of steps in, 107
functions, 77
holding, Hold, 109
immediate, using Set, 95
in definitions, 116
of anonymous functions, 84
of expressions, 21, 106
order of in compound functions,
80, 81
precedence, 104
priority of, 107
procedure for, 93
Index 289
replacement rules, 111
term rewriting, 106
Evaluation of expressions, 15
EvenQ, 13 Exact numbers, 192
Exclusive or
Xor, 15
Expand, 29
trigonometric expressions, 29
Exponentiation
notation for, 7
Exponentiation ("), 7
Expressions, 97
arguments to, 97
atoms, 98
changing the head of, Apply, 98
composed of atoms, 97
evaluation of, 15, 106
extracting parts of, Part, 97
head of, 97
internal form, 97
internal form of, 10
manipulating with built-in functions,
98
parts of, 97
priority of evaluation, 107
types of, 10
Extended precision integers, 192 Extended precision numbers
internal representation, 207
Factor, 1, 11
Factorial (!), 16
Factoring
of polynomials, Factor, 1
False, 13
Fibonacci numbers, 129
computed iteratively, 175
cost of computation, 162
definition of, 12 9
dynamically defined, 162
Fibonacci, Leonardo, 129
FindRoot, 30
findRoot, 177
First, 57
Fit, 46
Fixed precision real numbers, 193
290 INDEX
Flat, 18
Flatten, 58, 73
options to, 73
Flattening lists, Flatten, 58
Floating point numbers, 193
variable precision, 195
FM synthesis, 258
Fold, 65, 166
FoldList, 166
FontForm, 224
Formatting conventions, 120
Fortran programming language, xv
Fourier, 263
Fourier transform, 263
FreeQ, 144
Frequencies, 202
frequencies, 91
Frequency modulation synthesis, 258
FromCharacterCode, 68
FullForm, 10, 191
Function, 83
Function(&), 84
Function arguments, 76
Function Browser, 23-25, 36
Function calls, 70
Function names, 76
Functions, 69
anonymous, 83
arguments to, 76
attributes of, 18
automatically loading, DeclarePack-age,37
auxiliary, 80
body of, 76
checking for arguments to, 119
compound, 76, 80
conditional, 118
converting nested function calls to
programs, 77
defined parametrically, 39
defined with several rules, 115
evaluation of, 77
function calls, 70
higher order, 61
information about, 6, 36
multi-clause, 116
names, 76
nested anonymous, 85
nested call, 70
notation for, 7
one-liners, 87
pure, 83
recursion and higher-order, 164
repeated application of, Fold, 65
repeated application of, Nest, 64
simple examples of, 32
syntax of user-defined, 76
threading onto elements, 63
user defined, 46, 76
visualizing with graphics, 38
Gardner, Martin, 259
Gaussian elimination, 145
conditions for failure, 212
failure of, 148
interchanging rows, 148
iterative version, 18 7 numerical considerations, 211
recursively defined, 146
zero pivot, 148
Get,(<<), 26, 44, 266
Global' context, 267
Global rule base, 95
built-in functions, 95
compound functions, 96
dynamic programming effects, 164
examining values in, 163
getting information about, 95
new rule replaces older, 96
preventing addition of rules, 96
querying, 95
user-defined functions, 95
Golden mean, GoldenRatio, 39
GoldenRatio, 39
Graphics, 219
built-in functions, 232
coloring of, ColorFunction, 241
displaying with Show, 222
internal representation of Plot, 219
labelling with Text, 223
logarithmic plots, LogLogListPlot,
45
parametric, ParametricPlot, 39
primitives, 219
rendering of, 40
sampling errors, 236
smoothing, PlotPoints, 41
smoothing of, 237
structure of, 233
three-dimensional, Plot3D, 40
two dimensional, Plot, 38
using fonts with, FontForm, 224
Graphics, 222
Graphics directives, 221
scoping of, 221, 229
table of, 232
Graphics options, 222, 229
listing of, Options, 239
overriding default values, 240
Graphics output, 233
Graphics primitives
table of, 226
three-dimensional, 227
two-dimensional, 219
Graphics programming, 242
Graphics3D, 227, 234
Graphics'MultipleListPlot', 266
GrayLevel, 232
Greater(>), 13
GreaterEqual (>=), 13
Hamming distance, 109 Harmonic numbers, 46
Hayes, Allan, 201
Head,10,191
Head of expressions, 97
Heat production, 44
Height
of trees, 152
height, 152, 154
Help, 6
using the Function Browser, 23
Hexahedron, Cuboid, 228
Higher-order functions, 61
Hilbert matrices, 145, 215
Hold, 109
HoldAll, 186
HoldFirst, 179, 186
Hue, 232
Huffman, David, 155
Huffman encoding, 154
Index 291
efficiency considerations, 156
Huffman trees
construction of, 158
encoding of, 155
representation of, 159
I, v=t. 28, 196
Icon
Mathematica, 5
Icosahedron, 228
If, 118
and higher-order functions, 121
evaluation in, 118
nested, 118
Ill-conditioned matrices, 215, 218
Illinois lottery, 91
Illinois lotto
Pick3, 79
Im, 196
Image compression
runEncode, 135
incrementNumbers, 121
Infinite precision, 192
Infix notation, 10
Information
on functions, 6, 36
init.m, 37, 276
Initialization file, init.m, 3 7 Inner, 65
generalization of dot product, 65
Input
entering, 22
Input forms
standard, 10
Insert, 59
Integer-valued expression, 181
IntegerDigits, 199
IntegerQ, 13
Integers, 191
digits of, IntegerDigits, 199
extended precision, 192
machine size, 192
size limitations of, 191
Integrate, 30
Integration
definite, 1, 30
indefinite, 1, 30
292 INDEX
numerical, Nlntegrate, 31
symbolic, Integrate, 30
Interface
command line, 5, 25
graphical, 5, 20
Notebook, 5, 20
textual, 5
Interior nodes
of trees, 150
interleave, 134
interleave2, 137
interleaveS, 139
Intermediate value theorem, 180
Intersection, 61
Irrational numbers
sound of, 256
Iteration
Do loops, 174
error in assignment, 178, 186
Newton's method, 171
termination, 176, 179
While loops, 176
Iterators
Join, 60
default values of, 52, 53
dependent, 54 in Do loop, 174
nested lists with multiple, 53
omitting from expression, 53
order of multiple, 53
Josephus problem, 87
Josephus, Flavius, 87
Kleiber, Max, 45
Klein bottle, ParametricPlot3D, 43
kSublists, 139
Labelled pattern, 94
Labels
of trees, 150
landMineWalk, 166
Last, 57
Lattice
square, 60
Leaf
of a tree, 150
Least-squares fits, Fit, 46
Lehtonen, Ari, 43
Length, 54
length, 132
Less(<), 13
LessEqual (<=), 13
Line, 221, 244
Linear congruential method, 204
Linear fits, Fit, 46
Linear systems
magnification of error in, 212
solution of, 211
solving with scaled pivoting, 218
LinearSolve, 145
LISP programming language, xv
Lissajous curves, ParametricPlot, 40
List, 51, 62
creation of, 52
creation of, Table, 52
elements, 51
empty, 51
location of elements, 51
notation for, 51
Listability, 62, 63
Listable, 62, 63
ListDensityPlot, 233
listLevel, 153
ListPlay, 256
ListPlot, 44
Lists, 51
adding elements to, Append, 59
adding elements to, Insert, 59
adding elements to, Prepend, 59
applying functions to, Map, 61
as sets, 61
as vectors or matrices, 55
changing the Head of, Apply, 63
choosing elements that pass test,
Select, 58
combining into one, Join, 60
component assignment, 181
creation of, Table, 52
creation of, Array, 55
creation of, Range, 52
displaying with TableForm, 54
elements, 51
empty, 51
extracting consecutive elements, 57 extracting elements from back, Take,
56 extracting elements from front, Take,
56 extracting elements, Part, 56
forming outer products, 62
location of elements, Position, 51,
56
measuring size, Length, 54
measuring with Dimensions, 54
modifying elements of, 181, 182
non-rectangular, 54 notation for, 8, 51
of different length, 137, 166
pairing elements of, MapThread,
62 plotting, ListPlot, 44
rearranging, Partition, 58
removing braces, Flatten, 58
removing elements from, Delete,
57 removing elements from, Drop, 57
repeated application of functions, FoldList, 65
repeated application of functions,
NestList, 64 replacing elements of, 59 representing data with, 44
reversing order of, 58 rotating elements of, RotateLeft, 58 rotating elements of, RotateRight,
58 sorting, Sort, 58
the complement of, Complement,
61
the intersection of, Intersection, 61
threading functions onto, 63
transposing elements, Transpose,
59 union of,Union, 60
used to represent trees, 151
working with multiple, 60
Loading packages, 35, 266 Local rewrite rule, 110
Local variables
Module, 178
Index 293
use of, 178 Localizing names, Module, 81
Log attributes of, 63
Log, 28
Logarithms base of natural, E, 28
bases of, 28
Logarithms, Log, 28
Logical operators, 14
table of, 15
LogLogListPlot, 45
Loops Do, 174
While, 176
lottol, 91
lotto2, 92
Lower triangular matrix, 149
LU decomposition, 149, 190
LUdecompl, 150 LUdecomp2, 150
Machine integer, 192 Machine integers
addition of, 192
Machine numbers
display of, 194
Machine precision arithmetic, 194
MachinePrecisionQ, 194 Macintosh
starting Mathematica, 5 Maeder, Roman, 93 makeChange, 92 MakeSyrnbol,266
Mandelbrot, BenOit, 258
Map, 61
map, 164
map2, 167
MapThread,62, 108
difference from Thread, 109
MatchQ, 101
math file, 5
Mathematica features of, xiv
Mathematica Conference
programming contest, 136
294 INDEX
Mathematica icon, 5
Mathematical constants, 28
MathSource, xvi
Matrices, 180
as lists, 55
augmented, 147
condition number of, 218
diagonal of, 149
Hilbert, 145, 215
ill-conditioned, 215
lower triangular, 149
LU-decomposition, 149
modifying arrays, 185
multiplication, Dot, 64
nonsingular, 213
norms of, 217
passing arrays to functions, 185
rotating as list, 64
upper triangular, 149
matrixNorm, 218
MaxBend, 235
maxima, 77, 85, 137, 139
maxPairs, 134
Messages
usage, 273
Metabolic heat rate
Kleiber's constant, 45
Middle square method, 205
minlnTree, 151, 154
Mobius band, ParametricPlot3D, 43
Mod, 32
Modular arithmetic, 261
Module, 81, 96, 119, 178
and anonymous functions, 86
syntax of, 81
Modulo, Mod, 32
Morse code, 155
multAllPairs, 134
Multi-clause definition, 116
Multiple precision arithmetic, 195
Multiplication
notation for, 7
Multipliers
in Gaussian elimination, 211
multPairwi.se, 133
Musical scales, 259
N, 27, 28
Names
precision in, 28, 206
localizing, Module, 81
removing definitions, Clear, 77
value of, 74
Names, 276
syntax of, 7 4
Needs, 266
Nest, 64, 78
compared to Do, 175
nest, 165
Nested functions, 70
anonymous, 85
converting to programs, 77
Nested lists, 53
modifying elements of, 182
NestList, 166
newton,210
Newton's method, 171, 209
acceleration of, 217
example of failure, 171
Finc!Root, 30
increased precision, 210
no symbolic derivative, 210
zero derivative, 210
Newton, Isaac, 32
NeXT
starting Mathematica, 5
Nintegrate, 31
Nodes
of trees, 150
Noise
sound of, 256
Non-rectangular lists, 54
Nonsingular matrix, 213
Norm
of a matrix, 217
Normal, 241
Notation
division, 7
exponentiation, 7
multiplication, 7
Notebook Front End, 20
Notebook interface, 5, 20
starting Mathematica, 20
NP-complete problems, 242
NSum, 47
Null, 174
Number base, ", 200
Numbers
Bernoulli, BernoulliB, 16
as atoms, 99
bases of, 199
complex, 196
display of, 194
exact, 192
fibonacci, 129
floating point, 193
harmonic, 46
heads of, 99
integer, 191
irrational, 256
perfect, 49, 82
prime, 182
random, 34
random, Random, 202
rational, 191, 256
real, 193
super-perfect, 83
triangular, 33
Numerator, 193
Numerical calculations
simple examples, 27
Numerical derivative, 211
Numerical summation, NSum, 47
Octahedron, 228
OddQ,13
Offspring
on trees, 150
One-dimensional random walk, 55
One-liners, 87
examples of, 88, 90
Oneldentity, 19
Operators
Boolean, 14
logical, 14, 15
relational, 13
Options
graphics, 239
Options, 239
Or (11),14
Order of operations, 7
Index 295
Orderless, 18
Out(%), 2
Outer, 62
Outer products, Outer, 62
Packages, 35, 265
and Module's, 265
automatic loading of, 276
automatically loading of, 37
Calculus'VectorAnalysis', 266
ChemicalElements.m, 35
customizing Mathematica with, 35
DataManipulation, 202
example of, 272
folder, 35
Graphics, 202
Graphics'MultipleListPlot', 266
hierarchy of, 270
listing names, Names, 276
loading, 35
name localizing, 265
names and contexts, 270
naming conventions, 272
Polyhedra.m, 228
private contexts, 271
reading in,(<<), 26, 44, 266
reading in, (Needs), 266
usage messages, 273 Parametric functions, 39
Parametric surfaces
Klein bottle, ParametricPlot3D, 43
Mobius band, ParametricPlot3D, 43
ParametricPlot, 39
ParametricPlot3D, 43, 234
Part, 56
shorthand notation, 56
Partial pivoting, 213
Partition, 58
Partitioning lists, Partition, 59
Pascal, Blaise, 33
Pascal's Triangle, 33
path, 244
Paths, closed, 242
Pattern matching, 100
alternatives, 105
and conditions, 104
blanks, 101
296 INDEX
complex numbers, 197
conditional, 104
efficiency considerations, 124
preferred format, 117
rational numbers, 193
sequences, 103
sequences of arguments, 103-104
triple blank, 103
using MatchQ, 101
using single blank, 101
with sequences, 116
Pattern variable, 94
Patterns, 100
definition, 101
labelled, 94
labelling of, 101
variable, 94
perfect, 82
Perfect numbers, 49, 82
conjectures, 50
Perfect shuffle, 73
perfect3, 83
perfect4, 83
perfectK, 83
perfecto, 83
Periodicity, of numbers, 256
Permutations, 60
permute, 180
Phase angle
of complex number, Arg, 196
Pi, 28, 195
pick, 79
Pick3
Illinois lotto, 79
Pivoting
on zero element, 213
placeTree, 250, 251
Platonic solids, 228
Play, 234, 254
Plot, 38, 219
Plot3D, 234, 236
PlotDivision, 235
PlotPoints, 41, 236
Plots
default values for options, 235
displaying options of, Options, 239
evaluation of functions in, 234
fonts in, FontForm, 224
internal algorithms, 234
internal representation, 219
of data, ListDensityPlot, 233
plotting surfaces, Plot3D, 40
points to sample in, PlotPoints, 236
shape of, AspectRatio, 39, 223
simple examples of, 38
singularities, 38
smoothing of, 237
structure of built-in, 233
subdivision level in, PlotDivision,
235
text in, Text, 223
three-dimensional, Graphics3D, 227
three-dimensional, Plot3D, 40, 236
tick marks in, Ticks, 223
view point for, ViewPoint, 239
Plus, 10, 63
plus4mod20, 166
Pi NP, 242
Point, 221
pointLoc, 122
PointSize, 221
Polygons
convex,248
convex hull, 248
Polynomials
factoring of, Factor, 1
Position, 56
Postfix notation, 11
Pound symbol, (#), 84
Power("), 7
Power spectra
in music, 263
Precedence
and anonymous functions, 104
of operations, 7
ofrelational operators, 14
Precision
definition of, 206
extended integer, 192
in multiplication, 198
infinite, 192
internal representation, 198
machine, $MachinePrecision, 194
real numbers, 193
setting of, SetPrecision, 207
significant digits, 192
Predicates
and conditional pattern matching,
104
example of, 49
example of anonymous, 104
testing expressions using, 13
prefixMatch, 138
Prepend, 59
Prime numbers
algorithms for finding, 182
PrimeQ, 13
primes, 183
primes2, 184
Print, 175, 177
example of, 184
used to debug, 168
printlndented, 152
Printing
of messages, 175, 177
Printing variables
as debugging tool, 168
printTree, 152, 154
Programming
as a tool, 2
debugging, 167
dynamic, 108, 162 efficiency considerations, 92, 125
errors in, 169
graphical problems, 242
other languages, 3
principles of, 3
simple examples of, 49
using prototypes, 73
Programming languages
C,xv
Fortran,xv
LISP, XV
Programs
acce!Newton, 217
addPairs, 133
add'l'riples, 134
applyChar, 119-121
areEltsEven, 77, 84
balanced, 153
BaseConvert, 272
Index 297
bisect, 180
bowlingScore, 2
canFollow, 117
carddeck,78
catNodes,153
chooseWithReplacement, 79
compress, 185
con(Uqunruber, 218
convert, 201
convex,248
ddx, 141
deal,79,81,82,86, 133
decode,158
distance, 79
dividelOOBy, 121
doubleUptoZero, 135
drawSepTree, 251
eliminPlace, 188
elimxl, 147
enclose, 248
encodeChar, 157
encodeString, 157, 161
findRoot, 177
FreeQ, 144
frequencies, 91
height, 152, 154
incrementNunrubers, 121
interleave, 134 interleave2, 137
interleave3, 139
kSublists, 139
landMineWalk, 166
lengthlength, 132
listLevel, 15 3
lottol, 91
lotto2, 92
LUdecompl, 150
LUdecomp2, 150
makeChange, 92
map, 164
map2, 167
matrixNorm, 218
maxhna,77,85,137,139
maxPairs, 134
ntirUnTree, 151, 154
multAllPairs, 134
multPairwise, 133
298 INDEX
nest, 165
newton,210
angle, 245
path, 244
perfect, 82
perfect3, 83
perfect4, 83
perfectK, 83
perfecto, 83
permute, 180
pick, 79
placeTree, 250, 251
plus4mod20, 166
pocketChange, 90
pointLoc, 122
prefixMatch, 138
primes, 183
primes2, 184
printindented, 152
priniTree, 152, 154
randomWalk3D, 227
removeLeadingSpaces, 134
removeRand, 78, 85
removeRepetitions, 122
remove~Spaces, 118 removeWhiteSpace, 115, 116, 118
repeat, 165
repeatCount, 165
reverse, 185
reverselnPlace, 18 7
rollEm, 204
rotateRight, 185
rotateRows, 185
rotateRowsByS, 185
runDecode,139
runEncode, 135, 136, 138
secant, 211
setOfDistances, 86
showRandomWalk3D, 227, 232
sieve, 185
simpleClosedPath, 246
soln, 189
solve, 147
solve2, 148
solve!, 187, 188
solveLower, 149
solvePP, 213, 218
solveUpper, 149
splitl, 91
split2, 91
sqrElement, 186
subtractEl, 211
sumElts, 132
sumEveryOtherElt, 134
sumNodes, 152
sumOddElts, 134
sumsOfCubes, 201
superperfect, 83
survivor, 88, 202
swap, 187
transpose, 185
vowelQ, 117
Protected, 19
Prototyping programs, 73
Pure functions, 83
Quadratic congruential method, 205
Quit, 5, 26
Quitting Mathematica, 5
Random,34, 78,202
arguments of, 195 Random number algorithms
linear congruential method, 204
middle square method, 205
quadratic congruential method, 205
Random numbers, 34, 202
distribution of, 202
integers, 34
testing hypothesis with, 203
testing randomness, 205
Random sampling, 165
with replacement, 79
Random walks
one-dimensional, 55, 66
plots of three dimensional, 227
two-dimensional, 60, 66, 92, 166
randomWalk3D, 227
Range,49,52
Rational, 193
Rational numbers, 191
arithmetic, 193
pattern matching, 193
sound of, 256
Re,196
Reading packages, Get(<<), 26, 44, 266
Real numbers, 193
arithmetic, 194
digits of, RealDigits, 200
extended precision, 195
fixed precision, 193
multiple precision, 195
variable precision, 195
RealDigits, 200
Recursion
and symbolic computations, 140
on lists, 132
Recursive functions
and trees, 151
base cases, 131
errors in definition, 132, 141, 143
symbolic computations with, 140
tracing output of, 130
writing, 134
Relational operators, 13
precedence of, 14
table of, 14
ReleaseHold, 109
Remove, 276
removeLeadingSpaces, 134
removeRand, 78, 85
removeRepetitions, 122 removeTwoSpaces, 118
removeWhiteSpace, 115, 116, 118
Removing a value, Clear, 76
repeat, 165
repeatCount, 165
ReplaceAll, (/.), 110
ReplacePart, 59
ReplaceRepeated, (II.), 112
Replacing elements of lists, ReplacePart,
59
Representation of data, 44
Rest, 57,88
Reverse, 58, 61
reverse, 185
reverselnPlace, 187
Rewrite rules, 94
and dynamic programming, 108
built-in functions, 94
compound functions, 96
Index 299
creating, Set, 94
creating, SetDelayed, 94
difference between Set and SetDe-
layed, 94
global rule base, 95
local, 110
localizing, Module, 96
names and, 96
new rule replaces older, 96
order of, 162
priority of, 107
simple examples, 94
steps in term rewriting, 107
transformation rules, 110
user-defined, 94
rollEm, 204
Root finding
Roots
accuracy of, 209
bisection method, 179
Newton's method, 171
Secant method, 211
of trees, 150
RotateLeft, 58, 88
RotateRight, 58
rotateRight, 185
rotateRows, 185
rotateRowsByS, 185 Roundoff errors, 208
Rule(->), 110
RuleDelayed (:>), 111
Rules
evaluation in, 116
priority of evaluation, 116
runDecode, 139
runEncode, 135, 136, 138
SampleRate, 255
Sawtooth waves
sound of, 258
Scaled pivoting, 218
Scaling noises, 258
Sec,28
secant, 211
Secant method, 211
SeedRandom, 35
Select, 49, 58
300 INDEX
Semicolon, (;). 8, 16, 80
Separation tree, 251
Sequences, 103
and pattern matching, 103, 116
and triple blanks, 103
Collatz, 131
testing randomness of, 205
Series, 241
Set(=), 94
difference from SetDelayed, 94
notation, 94
used to make value declarations,
96
SetAttributes, 19
SetCoordinates, 266
SetDelayed (:=), 94
setOfDistances, 86
SetPrecision, 207
Short, 220
Show, 222
showRandomWalk3D, 227, 232
sieve, 185
Sieve of Eratosthenes, 182
Significant digits
and Accuracy, 198
and Precision, 192
Simple closed paths, 242
simpleClosedPath, 246
Sin, 28
soln, 189
Solution of equations
numerical, FindRoot, 30
symbolic, Solve, 29
Solve, 29
solve, 147
solve2, 148
solve!, 187, 188
solveLower, 149
solvePP, 213, 218
solveUpper, 149
Solving equations
bisection method, 179
Solving equations, Solve, 29
Sort, 58, 61, 245
Sound
1/f music, 263
auto-correlation, 258
brownian music, 260
noise, 256
of functions, Play, 254
periodic, 254
physics of, 253
sampling rates, 255
sawtooth waves, 258
scaling noises, 258
speeding execution of, 259
square waves, 257
using to find periodicity, 256
white music, 258
Sound,234
splitl, 91
split2, 91
sqrElement, 186
Sqrt, 28
Square brackets, 46
Square lattice, 60
Square roots, Sqrt, 28
Square waves
sound of, 257
Standard input form, 10
Starting Mathematica, 5
command line interface, 25
Notebook interface, 20
Statistical analysis
random sampling, 165
StringDrop, 67, 79
Stringlnsert, 67, 79
StringJoin, 6 7
StringLength, 66
StringPosition, 67
StringReplace, 67
StringReverse, 66
Strings
and trees, 151
as atoms, 99
character codes, 67
converting from characters,
StringJoin, 67
converting to characters, Charac
ters, 67
determining position in, StringPo
sition, 67
finding length of, StringLength, 66
heads of, 99
inserting character in, Stringlnsert,
67
internal form, 66
manipulating, 66
removing characters from, String
Drop, 67
replacing characters in, StringRe
place, 67
reversal of, StringReverse, 66
StringTake, 66
subtractE 1, 211
Sum, 33, 203
sumElts, 132
sumEveryOtherElt, 134
sumNodes, 152
sumOddE!ts, 134
Sums, Sum, 33
sumsOfCubes, 201
Super-perfect numbers, 83
superperfect, 83
Suppressing output
with semicolon, 16
SurfaceGraphics, 234
survivor, 88, 202
swap, 187
Switch, 120
evaluation of, 121
Symbolic calculations simple examples of, 27
Symbolic computations
and recursion, 140
derivatives, 140
Symbolic sums, SymbolicSum, 48
SymbolicSum, 48
Symbols
as atoms, 98
computation with, 195
heads of, 99
System', 267
Systems of equations
dependent, 148
order of, 148
solution of, 145
solved recursively, 146
Table, 33, 52
compared to Do, 174
Index 301
nested lists with, 53
TableForm, 33, 54
Take, 56,57
Tan,28
Taylor polynomials
series of, Series, 241
Templates, 7
Term rewriting, 106
dynamic programming, 108
priority of, 107
steps of, 107
Tetrahedron, 228
Text, 223
Textual interface, 5
Thread, 108
difference from MapThread, 109
Threading functions onto lists, 63
Ticks, 223
Timing
factors affecting, 16, 17
Timing, 16
ToCharacterCode, 68, 79
Totient function, EulerPhi, 32
Trace, 15, 70, 71, 108, 167
TraceOriginal, 108
TracePrint, 15, 88, 167
second argument of, 168
Tracing specific patterns, 168
Transformation rules, 110
applying repeatedly,
ReplaceRepeated, 112
example of, 136
local rewrite rule, 110
multiple rules, 112
order of, 162
using labelled patterns, 111
using symbols, 111
Transpose, 59, 73
transpose, 185
Transposing lists, Transpose, 59
Traveling salesman problems, 242
Trees
of strings, 151
balanced, 153
binary, 150, 151
children of, 150
display of, 152
302 INDEX
drawing, 249 Which, 120
finding minimum string, minln'I'ree, While, 176
151 White music, 258
height of, 152 White noise, 258
Huffman encoding, 155 Windows
interior node, 150 starting Mathematica, 5
labels of, 150 Word size, 192
leaf of, 150
nodes of, 150
representation of, 151
root of, 150
weight of node, 159
Triangular numbers, 33
Trig, 29
False, 13
True, 13
Tungsten, W, 36
Unequal, 144
Unequal(!=), 13
Union, 60
UnsameQ, 144
Upper triangular matrix, 149
usage messages, 273
User defined functions, 46, 76
syntax, 76
Value declaration, 96
Values
nicknames, 75
of names, 74
removing, Clear, 76
result of evaluation, 75
Variable length codes, 155
Variables
in anonymous functions, 84
local, 178
Vectors, 180
as lists, 55
ViewPoint, 239
von Neumann, John, 205
vowelQ, 117
Voxel, Cuboid, 228
Waves
sound of sawtooth, 258
sound of square, 257
Xor, 15
Zizza, Frank, 136