(***********************************************************************
Mathematica-Compatible Notebook
This notebook can be used on any computer system with Mathematica 3.0,
MathReader 3.0, or any compatible application. The data for the notebook
starts with the line of stars above.
To get the notebook into a Mathematica-compatible application, do one of
the following:
* Save the data starting with the line of stars above into a file
with a name ending in .nb, then open the file inside the application;
* Copy the data starting with the line of stars above to the
clipboard, then use the Paste menu command inside the application.
Data for notebooks contains only printable 7-bit ASCII and can be
sent directly in email or through ftp in text mode. Newlines can be
CR, LF or CRLF (Unix, Macintosh or MS-DOS style).
NOTE: If you modify the data for this notebook not in a Mathematica-
compatible application, you must delete the line below containing the
word CacheID, otherwise Mathematica-compatible applications may try to
use invalid cache data.
For more information on notebooks and Mathematica-compatible
applications, contact Wolfram Research:
web: http://www.wolfram.com
email: info@wolfram.com
phone: +1-217-398-0700 (U.S.)
Notebook reader applications are available free of charge from
Wolfram Research.
***********************************************************************)
(*CacheID: 232*)
(*NotebookFileLineBreakTest
NotebookFileLineBreakTest*)
(*NotebookOptionsPosition[ 36873, 891]*)
(*NotebookOutlinePosition[ 41759, 1056]*)
(* CellTagsIndexPosition[ 40987, 1021]*)
(*WindowFrame->Normal*)
Notebook[{
Cell[CellGroupData[{
Cell[TextData[{
StyleBox["MathSource", "TI",
FontSlant->"Italic",
FontColor->RGBColor[1, 0, 0]],
StyleBox[" Reviews",
FontColor->RGBColor[1, 0, 0]]
}], "Title",
CellTags->"0.1"],
Cell[TextData[{
StyleBox["Mathematica", "SBO"],
"\[Hyphen]Driven Interactive World Wide Web Sites"
}], "Subtitle",
CellTags->{"S0.0.1", "1.1"}],
Cell[TextData[StyleBox["Edited by Matthew M. Thomas",
FontWeight->"Bold"]], "Text",
CellTags->{"S0.0.1", "1.2"}],
Cell[TextData[{
"In this ",
StyleBox["MathSource", "TI"],
" Review, we again take our review fodder from that larger ",
StyleBox["MathSource", "TI"],
" \[Dash] the World Wide Web. We probe two web sites in which one submits \
inputs for ",
StyleBox["Mathematica", "TI"],
" processing, and gets HTML\[Hyphen]dressed ",
StyleBox["Mathematica", "TI"],
" output for his or her efforts. Both sites adroitly show off the \
symbolic/numerical algebra/calculus capabilities of the motherware, but one \
does so to a much greater extent than its counterpart. Ironically, the \
handlers of said counterpart are by far in the best position to do the most \
exhibiting, as will become evident. \n\nThis Review can be regarded as an \
adjunct to the \"CyberSites\" write\[Hyphen]up in issue ",
StyleBox["5", "TI"],
"(3) of this journal. That write\[Hyphen]up discussed the gaining of access \
to ",
StyleBox["Mathematica", "TI"],
" through the Web, but the discussion was a general one. Specific examples \
of gaining such access were not offered. Such examples are offered here. The \
URLs for the web sites to be cited were operative as of mid\[Hyphen]September \
1997. Since web contents are more volatile than ",
StyleBox["MathSource", "TI"],
"contents, the chance exists that these URLs may no longer be valid when \
your eyes alight upon these words. That such might happen is a fear, not a \
hope (especially among freshman calculus students.) "
}], "Text",
CellTags->{"S0.0.2", "1.3"}],
Cell[CellGroupData[{
Cell[TextData[{
"Site One: ",
StyleBox["THE INTEGRATOR", "TI"]
}], "Section",
CellTags->{"S0.0.2", "2.1"}],
Cell[TextData[{
"Our first entry hails from Wolfram Research Inc., which gave us ",
StyleBox["Mathematica", "TI"],
" a decade ago, but had to wait until the World Wide Web got around to \
being \"created\" before it could make ",
StyleBox["Mathematica", "TI"],
" operations available through that medium. In the interim, WRI created and \
enhanced MathLink \[Dash] a prescient move, in retrospect, given the \
concurrent Internet advances. Today, WRI offers ",
StyleBox["THE INTEGRATOR", "TI"],
", its ",
StyleBox["Mathematica", "TI"],
"\[Hyphen]powered web site whose URL has been www.integrals.com. The Summer \
1997 issue of WRI's ",
StyleBox["MathUser", "TI"],
" (on p. 5) introduced ",
StyleBox["THE INTEGRATOR", "TI"],
" to the ",
StyleBox["Mathematica", "TI"],
" customer base, noting that Artificial Intelligence pioneers considered \
successful chess\[Hyphen]playing and symbolic integration as pointers to the \
nebulous \"computer intelligence\" concept. Today, IBM's Deep Blue plays \
chess well enough to defeat reigning chess champion Garry Kasparov, while \
WRI's ",
StyleBox["Mathematica", "TI"],
" and other packages achieve symbolic integration. The ",
StyleBox["MathUser", "TI"],
" item notes that, while few will ever play Deep Blue in chess, many more \
will do symbolic integration using ",
StyleBox["Mathematica", "TI"],
" via ",
StyleBox["THE INTEGRATOR", "TI"],
". It remains to be seen whether IBM will take ",
StyleBox["MathUser's", "TI"],
" implicit hint, by making chess games vs. Deep Blue available through the \
web. \n\nWith its name proclaimed in brazen, italicized capital letters, ",
StyleBox["THE INTEGRATOR", "TI"],
" has the subtitle \"The Power To Do Integrals As The World Has Never Seen \
Before.\" We shall grant the WRI web content developers their moment of \
exuberance. Four links from the home page lead to pages on 1) the uses of \
integration, 2) the entry of an integral, 3) the history of integration, and \
4) the internal workings of ",
StyleBox["THE INTEGRATOR", "TI"],
". Cited integration uses are area/length/volume/mass computation, \
launching spacecraft, and population growth; prose more inclusive would be in \
order. The page on the entry of an integral is vital for newcomers to ",
StyleBox["Mathematica", "TI"],
": This page offers links to pages on basic arithmetic, mathematical \
constants, trigonometric/exponential functions, and higher mathematical \
functions. By the time the newcomer works through these last four pages, he \
or she will have been exposed to the very broad range of mathematical \
operations and functions in the ",
StyleBox["Mathematica", "TI"],
" vernacular. The page on higher mathematical functions alone covers \
functions from combinatorial and orthogonal polynomials through \
hypergeometric functions to Mathieu and related functions. Lured initially by \
integration, the newcomer now sees all that ",
StyleBox["Mathematica", "TI"],
" can do ",
StyleBox["irrespective", "TI"],
" of integration, and he or she is likely to be impressed. \n\nAnother link \
from the home pages involves the history of integration. The history of \
integration page is a listing of condensed biographies from Archimedes, \
through Leibniz and Newton, to R. H. Risch. Pictures of the integrators line \
the left margin of the page; the biographies are to the right. Each biography \
comprises but a few sentences, so as to fit the whole of said history into \
one view from your Netscape Navigator or Microsoft Internet Explorer browser. \
The last biography on this page is that of ",
StyleBox["Mathematica", "TI"],
" (1987\[Hyphen] ); one can already hear the plaintive wails arising from \
those for whom marketeer and historian should not be one and the same. But be \
that as it may, this integration history page would make an excellent poster, \
and the student assigned a paper on integration could do worse than to start \
with the august names cited on this page. \n\nThe final topical link from the \
home page leads to a discussion of ",
StyleBox["THE INTEGRATOR's", "TI"],
" internal workings. To wit: ",
StyleBox["THE INTEGRATOR", "TI"],
" offers a web interface to ",
StyleBox["Mathematica", "TI"],
" version 3.0, which runs on a Dual Pentium Pro 2000 server under the Linux \
operating system. The ",
StyleBox["Mathematica", "TI"],
" \"SymbolicHTML\" package is what swaddles the integrated function in \
Hyper\[Hyphen]Text Markup Language tags, therein creating the output web \
page. The ",
StyleBox["Integrate", "MR"],
" function performs the actual integration, and this last page devotes a \
paragraph each to the ",
StyleBox["Integrate", "MR"],
" function, ",
StyleBox["Mathematica", "TI"],
" typesetting, and the workings of MathLink. "
}], "Text",
CellTags->{"S0.0.3", "2.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[TextData[{
"Running ",
StyleBox["THE INTEGRATOR", "TI"]
}], "Section",
CellTags->{"S0.0.3", "3.1"}],
Cell[TextData[{
"The \"Enter Any Integral\" invitation from the home page allows you to \
choose a randomly selected function for integration, or to enter your own \
function for integration. A related \"button\" is labeled \"How to type in \
your own integral;\" clicking it gives you the same \"entry of an integral\" \
tutorial page cited above. The \"Here's Your Answer\" section of the home \
page returns the integrated function upon its calculation. The \"Change Your \
Output\" section lets you view that integrated function in text, ASCII, \
standard form, or traditional form format, using a small, medium, or large \
font. Of the four formats, text format is the most primitive, using ",
StyleBox["Mathematica", "TI"],
" notation such as ",
StyleBox["Sqrt[ ]", "MR"],
" to represent a function, and fitting the entire function (numerator, \
denominator, exponents, ",
StyleBox["etc", "TI"],
".) within a single line. The ASCII format retains the ",
StyleBox["Mathematica", "TI"],
" notation, but puts the numerator clearly above the denominator, and \
places the exponents in superscript position. Standard and traditional form \
formats are very similar to each other; they are the formats commonly seen in \
standard mathematics\[Hyphen]oriented texts. \n\nEvaluating the performance \
of ",
StyleBox["THE INTEGRATOR", "TI"],
" is akin to evaluating the performance of ",
StyleBox["Mathematica", "TI"],
" 3.0's ",
StyleBox["Integrate", "MR"],
" function. Assuming that this function works properly, we find upon \
submitting a series of simple arguments to ",
StyleBox["THE INTEGRATOR", "TI"],
" that, yes, ",
StyleBox["THE INTEGRATOR", "TI"],
" does indeed return the expected integrated arguments. Complex arguments \
might not have closed\[Hyphen]form integrals, and ",
StyleBox["THE INTEGRATOR", "TI"],
" offers users the opportunity to send email to its webmaster should they \
disagree with ",
StyleBox["INTEGRATOR", "TI"],
" output. Any procedure that suffices for assessing ",
StyleBox["Integrate", "MR"],
" performance should also suffice for assessing ",
StyleBox["THE INTEGRATOR", "TI"],
" evaluation performance. \n\nBut there is at least one other aspect to ",
StyleBox["INTEGRATOR", "TI"],
" performance, in addition to evaluation. This aspect is not unique to \
Wolfram Research's site; rather, it characterizes any web site using ",
StyleBox["Mathematica", "TI"],
" to evaluate user\[Hyphen]supplied input. This aspect involves the speed \
with which the page form conveys input to and output from ",
StyleBox["Mathematica", "TI"],
". ",
StyleBox["THE INTEGRATOR", "TI"],
" uses the POST (not the GET) method to relay form data; the POST method \
allows for unlimited query length without fear of client or server query \
truncation. Use of the POST method does not adversely affect ",
StyleBox["THE INTEGRATOR", "TI"],
"s speed: The site returned integrated functions relatively rapidly, even \
through a corporate firewall in lunch\[Hyphen]hour web traffic that brings \
stock price and sports score retrieval pages to a midday halt. "
}], "Text",
CellTags->{"S0.0.4", "3.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell["Unsanctioned Uses", "Section",
CellTags->{"S0.0.4", "4.1"}],
Cell[TextData[{
StyleBox["THE INTEGRATOR", "TI"],
" does indeed show a World Wide Web audience that ",
StyleBox["Mathematica", "TI"],
" can perform symbolic evaluation of integrals, thus addressing one of the \
two aforementioned points from the Artificial Intelligence pioneers. But to \
limit ",
StyleBox["THE INTEGRATOR", "TI"],
" to symbolic indefinite integration seems a bit ... stingy. If ",
StyleBox["THE INTEGRATOR", "TI"],
" is to be limited to integration, might it at least do more than \
indefinite integration? Can the user trick ",
StyleBox["THE INTEGRATOR", "TI"],
" into going beyond its charter? \n\nThe answers again depend upon what one \
can do with the ",
StyleBox["Integrate", "MR"],
" function. Fortunately, this function is malleable. With just a bit of \
cleverness, one can trick ",
StyleBox["THE INTEGRATOR", "TI"],
" into performing differentiation, definite integration, and higher \
function evaluation. For differentiation, the user need only recognize that \
the first derivative of a function is but the indefinite integral of the ",
StyleBox["second", "TI"],
" derivative of said function. Accordingly, if ",
StyleBox["foo", "TI"],
" is a function of x, then submitting ",
StyleBox["D[foo, {x, 2}]", "MR"],
" to",
StyleBox["THE INTEGRATOR", "TI"],
" will produce the first derivative of ",
StyleBox["foo", "TI"],
" with respect to x. Related chicanery will produce the second, third, ",
Cell[BoxData[
\(TraditionalForm\`\(\[Ellipsis]\ \)\)], "InlineFormula",
CellTags->"S0.0.4"],
", ",
Cell[BoxData[
\(TraditionalForm\`n\)], "InlineFormula",
CellTags->"S0.0.4"],
"th derivatives of ",
StyleBox["foo", "TI"],
". \n\nAs for definite integration, let ",
StyleBox["foo", "TI"],
" be a fraction of ",
StyleBox["x", "TI"],
", ",
StyleBox["b", "TI"],
" be an upper limit of integration, ",
StyleBox["a", "TI"],
" be a lower limit of integration, and ",
StyleBox["ind", "TI"],
" be the indefinite integral of ",
StyleBox["foo", "TI"],
" with respect to ",
StyleBox["x", "TI"],
". Submitting ",
StyleBox["Integrate[foo, {x, a, b}]", "MR"],
" to ",
StyleBox["THE INTEGRATOR", "TI"],
" produces ",
Cell[BoxData[
\(TraditionalForm\`x(\(i n d\) \((b)\) - \(i n d\) \((a)\))\)],
"InlineFormula",
CellTags->"S0.0.4"],
". Drop the ",
StyleBox["x", "TI"],
", and you have the evaluated definite integral ",
Cell[BoxData[
\(TraditionalForm\`\(i n d\) \((b)\) - \(i n d\) \((a)\)\)],
"InlineFormula",
CellTags->"S0.0.4"],
". Similarly, one can trick ",
StyleBox["THE INTEGRATOR", "TI"],
" into performing higher function evaluation. For example: ",
StyleBox["Mathematica", "TI"],
", given ",
StyleBox["LegendreP[2, 2]", "MR"],
", will return 11/2. Submitting ",
StyleBox["LegendreP[2, 2]", "MR"],
" to ",
StyleBox["THE INTEGRATOR", "TI"],
" produces ",
Cell[BoxData[
\(TraditionalForm\`x(11/2)\)], "InlineFormula",
CellTags->"S0.0.4"],
"; drop the ",
StyleBox["x", "TI"],
", and you have the numerical value you requested. Such impishness does \
extend the usefulness of ",
StyleBox["THE INTEGRATOR", "TI"],
", but it would be nice were such impishness unnecessary. It ",
StyleBox["is", "TI"],
" unnecessary when working with the following site. "
}], "Text",
CellTags->{"S0.0.5", "4.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell["Site Two: The MathServ Calculus Toolkit", "Section",
CellTags->{"S0.0.5", "5.1"}],
Cell[TextData[{
"We go now from WRI in Champaign, IL, to Vanderbilt University in \
Nashville, TN. The Vanderbilt Department of Mathematics [Philip S. Crooke, \
Steven Tschantz] and Owen Graduate School of Management [Luke M. Froeb] have \
collaborated to create the MathServ Calculus Toolkit, as part of a wider\
\[Hyphen]ranging MathServ Project. The URL for the Toolkit has been \
math.vanderbilt.edu/",
Cell[BoxData[
\(TraditionalForm\`\[Null]\)], "InlineFormula",
CellTags->"S0.0.5"],
"pscrooke/toolkit.shtml; given the transient nature of tilde\[Hyphen]laced \
URLs, one hopes that this URL is still valid upon your reading these words. \
What ",
StyleBox["THE INTEGRATOR", "TI"],
" does for indefinite integration, the Toolkit does for algebra and \
calculus. \nIn a short introduction to the Toolkit, the user is informed that \
a knowledge of ",
StyleBox["Mathematica", "TI"],
" is helpful but not required for Toolkit use. A ",
StyleBox["Mathematica", "TI"],
"\[Hyphen]savvy user, for example, would know to enter ",
StyleBox["If[x>0, 1, 0]", "MR"],
" to represent the Heaviside unit step function in features to be \
described. Conversely, the Toolkit has mercy on the ",
StyleBox["Mathematica", "TI"],
" neophyte, allowing expressions such as ",
StyleBox["exp(x)", "MR"],
", ",
StyleBox["e^x", "MR"],
", and ",
StyleBox["E^x", "MR"],
" as acceptable surrogates for the standard ",
StyleBox["Exp[x]", "MR"],
" as Toolkit input arguments. \n\nThe Toolkit home page comprises two \
parts: a ",
Cell[BoxData[
\(TraditionalForm\`5\[Cross]3\)], "InlineFormula",
CellTags->"S0.0.5"],
" grid of ",
StyleBox["Mathematica", "TI"],
"\[Hyphen]driven operations, and a set of subsequent links to other \
operations. The Toolkit mimics ",
StyleBox["THE INTEGRATOR", "TI"],
" in using the POST method to relay user input to a remote ",
StyleBox["Mathematica", "TI"],
" kernel. Toolkit operations echo user input on the \
kernel\[Hyphen]generated output page. The echoed input is thus of value to \
the user, who need then not stare at the output with a \
Did\[Hyphen]I\[Hyphen]enter\[Hyphen]the\[Hyphen]input\[Hyphen]correctly? \
expression. Unlike ",
StyleBox["THE INTEGRATOR", "TI"],
", the Toolkit does not offer detailed information on the server, operating \
system, and version of ",
StyleBox["Mathematica", "TI"],
" at work behind the web site. The Toolkit introductory page does, however, \
note that a Vanderbilt Department of Mathematics server drives the Toolkit \
operation. And unlike ",
StyleBox["THE INTEGRATOR", "TI"],
", the Toolkit also does more than intentional indefinite integration and \
unintentional definite integration, differentiation, and higher fraction \
evaluation. "
}], "Text",
CellTags->{"S0.0.6", "5.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[TextData[{
"The ",
Cell[BoxData[
FormBox[
RowBox[{
StyleBox["\<\"5\"\>",
"TR"], "\[Cross]",
StyleBox["\<\"3\"\>",
"TR"]}], TraditionalForm]], "InlineFormula",
CellTags->"S0.0.6"],
" Toolkit Grid"
}], "Section",
CellTags->{"S0.0.6", "6.1"}],
Cell[TextData[{
"The grid on the Toolkit home page offers five rows by three columns of ",
StyleBox["Mathematica", "TI"],
" operations. The user clicks on one of the fifteen yellow rectangles in \
the red\[Hyphen]bordered grid; the Toolkit conjures the appropriate input \
page through the Map tags of the home page HTML. Perhaps the best way to \
describe the grid operations is to outline each, with comments where \
appropriate. The web page files for each of these operations have been in the \
math.vanderbilt.edu/",
Cell[BoxData[
\(TraditionalForm\`\[Null]\)], "InlineFormula",
CellTags->"S0.0.6"],
"pscrooke/MSS directory; all have \"html\" subscripts. \n\nFACTORING \
POLYNOMIALS (factorpoly.html)\[LongDash]Factors polynomials in the user's \
choice of real or Gaussian integers. \n\nPARTIAL FRACTIONS \
(partialfract.html)\[LongDash]Accepts numerator and denominator polynomials \
as inputs; supplies the rational function and the partial fraction expansion \
as the output. \n\nPOLYNOMIAL EQUATIONS (solvepoly.html)\[LongDash]Provides \
solutions to ",
Cell[BoxData[
\(TraditionalForm\`p(x) = q(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
", where ",
Cell[BoxData[
\(TraditionalForm\`p(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" and ",
Cell[BoxData[
\(TraditionalForm\`q(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" are polynomials. The user is given the option of receiving output as \
symbolic and numerical solutions, or as numerical solutions only. A useful \
graph of ",
Cell[BoxData[
\(TraditionalForm\`p(x) - q(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" vs. ",
Cell[BoxData[
\(TraditionalForm\`x\)], "InlineFormula",
CellTags->"S0.0.6"],
" accompanies the solutions. \n\nGRAPHS OF FUNCTIONS (plotseveral.html)\
\[LongDash]Accepts up to five functions of ",
Cell[BoxData[
\(TraditionalForm\`x\)], "InlineFormula",
CellTags->"S0.0.6"],
", as well as upper and lower limits of independent variable ",
Cell[BoxData[
\(TraditionalForm\`x\)], "InlineFormula",
CellTags->"S0.0.6"],
" for each function. The resulting plot uses a different color of a solid \
line for each function; the lines are then virtually indistinguishable once \
printed in black\[Hyphen]and\[Hyphen]white. A \"line\[Hyphen]style\" or \
\"line\[Hyphen]type\" option would have been of use. \n\nGRAPHS OF EQUATIONS \
(equationplot.html)\[LongDash]The first line of the input page proclaims \
\"Plotting an equation: ",
Cell[BoxData[
\(TraditionalForm\`G(x, y) = 0\)], "InlineFormula",
CellTags->"S0.0.6"],
",\" but input equations must be written in ",
Cell[BoxData[
\(TraditionalForm\`f(x, y) = g(x, y)\)], "InlineFormula",
CellTags->"S0.0.6"],
" form, rather than in the implied ",
Cell[BoxData[
\(TraditionalForm\`G(x, y) = 0\)], "InlineFormula",
CellTags->"S0.0.6"],
" form. The user also enters minimum and maximum values for ",
Cell[BoxData[
\(TraditionalForm\`x\)], "InlineFormula",
CellTags->"S0.0.6"],
" and ",
Cell[BoxData[
\(TraditionalForm\`y\)], "InlineFormula",
CellTags->"S0.0.6"],
"; the resulting plot of ",
Cell[BoxData[
\(TraditionalForm\`G(x, y) = 0\)], "InlineFormula",
CellTags->"S0.0.6"],
" is in the ",
Cell[BoxData[
\(TraditionalForm\`x y\)], "InlineFormula",
CellTags->"S0.0.6"],
"\[Hyphen]plane. \nLIMITS (limit.html)\[LongDash]Inputs are function ",
Cell[BoxData[
\(TraditionalForm\`f(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" and limit point ",
Cell[BoxData[
\(TraditionalForm\`x = a\)], "InlineFormula",
CellTags->"S0.0.6"],
". The user may specify a two\[Hyphen]sided, left\[Hyphen]sided, or right\
\[Hyphen]sided limit. The user may also request a plot of ",
Cell[BoxData[
\(TraditionalForm\`f(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" vs. ",
Cell[BoxData[
\(TraditionalForm\`x\)], "InlineFormula",
CellTags->"S0.0.6"],
" about point ",
Cell[BoxData[
\(TraditionalForm\`x = a\)], "InlineFormula",
CellTags->"S0.0.6"],
". \n\nDERIVATIVES (derivative.html)\[LongDash]Accepts function ",
Cell[BoxData[
\(TraditionalForm\`f(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" for differentiation, as well as the orders of symbolic differentiation to \
be computed. Outputs are the first, second, ..., ",
Cell[BoxData[
\(TraditionalForm\`n\)], "InlineFormula",
CellTags->"S0.0.6"],
"th order derivatives of ",
Cell[BoxData[
\(TraditionalForm\`f(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" with respect to ",
Cell[BoxData[
\(TraditionalForm\`x\)], "InlineFormula",
CellTags->"S0.0.6"],
". \n\nANTIDERIVATIVES (antiderivative.html)\[LongDash]Specify the function \
and the variable [",
Cell[BoxData[
\(TraditionalForm\`f(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" for ",
Cell[BoxData[
\(TraditionalForm\`x\)], "InlineFormula",
CellTags->"S0.0.6"],
"; ",
Cell[BoxData[
\(TraditionalForm\`f(y)\)], "InlineFormula",
CellTags->"S0.0.6"],
" for ",
Cell[BoxData[
\(TraditionalForm\`y\)], "InlineFormula",
CellTags->"S0.0.6"],
"; ",
StyleBox["etc", "TI"],
".]; get the antiderivative of the function. In terms of computation, the \
entirety of what ",
StyleBox["THE INTEGRATOR", "TI"],
" offers fits completely within this single Toolkit operation. \n\nDEFINITE \
INTEGRALS (definiteintegral.html)\[LongDash]Accepts a function, a variable of \
integration, and integration limits as inputs; provides the corresponding \
numerical value from definite integration as the output. One wonders if this \
operation might be bug\[Hyphen]ridden: A straightforward fourth\[Hyphen]order \
polynomial as input caused a \"There was an unexpect [sic] results [sic] in \
this calculation\" message, as well as other ",
StyleBox["Mathematica", "TI"],
"\[Hyphen]generated messages. Tread with care, here. \n\nINVERSE FUNCTIONS \
(inversefunction.html) \[LongDash] Provides the inverse of a function (",
StyleBox["eg", "TI"],
"., ",
Cell[BoxData[
\(TraditionalForm\`x = \(1/\) y\)], "InlineFormula",
CellTags->"S0.0.6"],
" for ",
Cell[BoxData[
\(TraditionalForm\`y = \(1/\) x\)], "InlineFormula",
CellTags->"S0.0.6"],
"). Also provides the prerequisite warnings about function inverses. \n\
NEWTONS METHOD (newtonnum.html)\[LongDash]Given a function ",
Cell[BoxData[
\(TraditionalForm\`f(x)\)], "InlineFormula",
CellTags->"S0.0.6"],
" and a starting point ",
Cell[BoxData[
\(TraditionalForm\`x\_0\)], "InlineFormula",
CellTags->"S0.0.6"],
" for Newton's method, this operation returns the specified starting point \
",
Cell[BoxData[
\(TraditionalForm\`x\_0\)], "InlineFormula",
CellTags->"S0.0.6"],
", the incremental intermediate results ",
Cell[BoxData[
\(TraditionalForm\`x\_1\)], "InlineFormula",
CellTags->"S0.0.6"],
" through ",
Cell[BoxData[
\(TraditionalForm\`x\_n\)], "InlineFormula",
CellTags->"S0.0.6"],
", and the final numerical root. The resulting output page also has offered \
a link to a short essay on Newton's method, scribed in October 1996 by \
Vanderbilt's Tschantz. Similar links to similar essays from all the Toolkit \
operations would be of significant benefit to the student. \n\nPOLYNOMIAL \
INTERPOLATION (fitpoly.html) \[LongDash] Inputs are a vector of data points ",
Cell[BoxData[
\(TraditionalForm
\`{\((x\_1, y\_1)\), \[Ellipsis], \((x\_n, y\_n)\)}\)],
"InlineFormula",
CellTags->"S0.0.6"],
", and an order of fit (an integer value). Outputs are a \
least\[Hyphen]squares generated polynomial of the specified order, and a plot \
of both the fitted polynomial and the input data points. Again, the error \
messages that colored the DEFINITE INTEGRALS output also plagued the output \
from this operation. A correlation coefficient for the fitted polynomial \
would have complemented the plot. \n\nGRAPH OF ",
Cell[BoxData[
\(TraditionalForm\`F(x, y) = 0\)], "InlineFormula",
CellTags->"S0.0.6"],
" (equationplot.html)\[LongDash]Same as the GRAPHS OF EQUATIONS operation, \
as can be seen from the HTML file names for both operations (they are \
identical). \n\nPARAMETRIC EQUATIONS (plotparametric2D.html)\[LongDash] \
Generates a parametric plot from user\[Hyphen]supplied parametric equations \
and upper/lower limits on the pertinent parameter. Useful for students of \
introductory calculus, who inevitably must conquer parametric equations \
before they may tackle limits, differentiation, and the rest of it. \n\nPOLAR \
FUNCTIONS (plotpolar.html)\[LongDash]The user provides function ",
Cell[BoxData[
\(TraditionalForm\`r = f(t)\)], "InlineFormula",
CellTags->"S0.0.6"],
", where ",
Cell[BoxData[
\(TraditionalForm\`t\)], "InlineFormula",
CellTags->"S0.0.6"],
" is the polar angle, and the upper/lower limits on ",
Cell[BoxData[
\(TraditionalForm\`t\)], "InlineFormula",
CellTags->"S0.0.6"],
"; the user gets the corresponding plot in polar coordinates. "
}], "Text",
CellTags->{"S0.0.7", "6.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell["Subsequent Toolkit Links", "Section",
CellTags->{"S0.0.7", "7.1"}],
Cell[TextData[{
"Beneath the ",
Cell[BoxData[
\(TraditionalForm\`5\[Cross]3\)], "InlineFormula",
CellTags->"S0.0.7"],
" grid, the Toolkit home page features links labeled Algebra, Functions, \
Graphing, Limits & Derivatives, Applications of the Derivative, and \
Integrals. Each of these links leads to pages which in turn contain at least \
four links, and at most eleven links. A minority of the links are to the ",
StyleBox["Mathematica", "TI"],
" operation pages already covered by the ",
Cell[BoxData[
\(TraditionalForm\`5\[Cross]3\)], "InlineFormula",
CellTags->"S0.0.7"],
" grid; the majority of the links are to hitherto unseen operation pages. \
The format of these other pages is also uniform: The POST method is used to \
relay form data; user input is echoed on the output page. The other operation \
pages deal with concepts such as these: number sequences; symbolic summation; \
graphical function shifting/scaling; graphical function combinations [",
Cell[BoxData[
\(TraditionalForm\`f \((x)\) + g \((x)\)\)], "InlineFormula",
CellTags->"S0.0.7"],
", for ",
StyleBox["eg", "TI"],
".]; plotting composite functions [",
Cell[BoxData[
\(TraditionalForm\`f \((g \((x)\))\); g \((f \((x)\))\)\)],
"InlineFormula",
CellTags->"S0.0.7"],
"]; combining plots of functions with plots of their derivatives; plotting \
piecewise functions; implicit differentiation; tutorials on limits, \
differentiation, and integration; tangent line plotting; power series \
computation; Riemann sum calculation; solids of revolution; \
midpoint/trapezoid/Simpsons rules; solving separable ordinary differential \
equations; curve arc length computation; computing the center of mass of a \
thin plate whose shape is the region enclosed by the graphs of two functions. \
\nOf these links, the \"solids of revolution\" operation is especially \
appealing: One submits functions ",
Cell[BoxData[
\(TraditionalForm\`f \((x)\)\)], "InlineFormula",
CellTags->"S0.0.7"],
" and ",
Cell[BoxData[
\(TraditionalForm\`g \((x)\)\)], "InlineFormula",
CellTags->"S0.0.7"],
", lines ",
Cell[BoxData[
\(TraditionalForm\`x = a\)], "InlineFormula",
CellTags->"S0.0.7"],
" and ",
Cell[BoxData[
\(TraditionalForm\`x = b\)], "InlineFormula",
CellTags->"S0.0.7"],
", the number of angles and points to be used for sampling, and the axis \
about which to revolve the region bounded by ",
Cell[BoxData[
\(TraditionalForm\`f \((x)\)\)], "InlineFormula",
CellTags->"S0.0.7"],
" and ",
Cell[BoxData[
\(TraditionalForm\`g \((x)\)\)], "InlineFormula",
CellTags->"S0.0.7"],
" between lines ",
Cell[BoxData[
\(TraditionalForm\`x = a\)], "InlineFormula",
CellTags->"S0.0.7"],
" and ",
Cell[BoxData[
\(TraditionalForm\`x = b\)], "InlineFormula",
CellTags->"S0.0.7"],
"; after a few minutes, one gets a graph of the bounded region in the ",
Cell[BoxData[
\(TraditionalForm\`x y\)], "InlineFormula",
CellTags->"S0.0.7"],
"\[Hyphen]plane, a 3\[Hyphen]D solid figure generated by revolving that \
region about the specified axis, and a cross\[Hyphen]sectional view of the \
solid figure just generated ... all that is missing is the double integral \
arising from the bounded region in the ",
Cell[BoxData[
\(TraditionalForm\`x y\)], "InlineFormula",
CellTags->"S0.0.7"],
"\[Hyphen]plane. Add this missing item, and you have a godsend for the \
student grappling with shell/plate methods and double integrals. "
}], "Text",
CellTags->{"S0.0.8", "7.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell["Summary", "Section",
CellTags->{"S0.0.8", "8.1"}],
Cell[TextData[{
"Whereas ",
StyleBox["THE INTEGRATOR", "TI"],
" proved accessible from behind a particular corporate firewall, the \
MathServ Calculus Toolkit never got past that firewall. The peripheral web \
pages for ",
StyleBox["THE INTEGRATOR", "TI"],
" showed a more polished design than those of its Toolkit counterpart. The \
\"how it works\" documentation for",
StyleBox["THE INTEGRATOR", "TI"],
" was far better than that for the Toolkit; all we really know about the \
Toolkit is that it is ",
StyleBox["Mathematica", "TI"],
"\[Hyphen]driven from a Vanderbilt Dept. of Mathematics server. In \
addition, the Toolkit seemed occasionally to generate warnings and error \
messages over user input too straightforward to warrant them. \n\nBut for all \
of these pro\[Hyphen]",
StyleBox["INTEGRATOR", "TI"],
" observations, all one can say in favor of the Toolkit is that it offers \
far, far more ",
StyleBox["Mathematica", "TI"],
" capabilities than its WRI\[Hyphen]based counterpart. ",
StyleBox["THE INTEGRATOR", "TI"],
" intentionally offers only indefinite integration; the Toolkit offers so \
much more. Affiliations unknown, one could believe the Toolkit site to be the \
WRI\[Hyphen]created site. Granted, WRI purposefully limited the scope of ",
StyleBox["THE INTEGRATOR", "TI"],
" to integration, and is surely capable of creating a web site with the \
scope of the Toolkit. For now, however, a calculus student who first \
encounters the Toolkit has little motivation to seek ",
StyleBox["THE INTEGRATOR", "TI"],
". Credit and praise go to Vanderbilt's Crooke, Tschantz, and Froeb for an \
excellent job on the MathServ Calculus Toolkit. \n\nWere the Toolkit not ",
StyleBox["Mathematica", "TI"],
"\[Hyphen]driven but Maple\[Hyphen] or MACSYMA\[Hyphen]driven, WRI would \
have prime cause for worry. As it happens, however, WRI finds itself in a \
position similar to that of Swedish telecommunications giant L.M. Ericsson. \
Ericsson is the international digital cellular telephony market leader in \
Time Division Multiple Access (TDMA) service. A new but unproven technology \
\[Dash] Code Division Multiple Access (CDMA) \[Dash] may soon mature to the \
point of challenging TDMA for U.S. market share. Ericsson is undaunted: \
Secure in the success of its non\[Hyphen]U.S. TDMA service, Ericsson is \
sticking with TDMA technology in the U.S. The rub is that Ericsson apparently \
also holds key patents in the upstart CDMA technology. So even if CDMA were \
to best TDMA in the battle for U.S. market share, Ericsson would lose TDMA \
service revenue but gain CDMA royalties revenue. WRI's ",
StyleBox["Mathematica", "TI"],
" is tantamount to Ericsson's intellectual property: Even though the non\
\[Hyphen]WRI Toolkit is far more expansive than the WRI ",
StyleBox["INTEGRATOR", "TI"],
", WRI benefits from the attention (and future business) brought to it by \
the Toolkit. \n\nAs noted in last year's \"CyberSites\" ",
StyleBox["MathSource", "TI"],
" Review, sites such as the MathServ Calculus Toolkit and ",
StyleBox["THE INTEGRATOR", "TI"],
" are to ",
StyleBox["Mathematica", "TI"],
" what MathReader once was: The newest and best way to demonstrate and \
market ",
StyleBox["Mathematica", "TI"],
". It is possible that some potential ",
StyleBox["Mathematica", "TI"],
" buyers might rethink purchase upon encountering these sites, opting to \
restrict their ",
StyleBox["Mathematica", "TI"],
" usage to the operations made available by the sites. It is more likely \
that ",
StyleBox["Mathematica", "TI"],
" newcomers will want the power and convenience of their own copies of ",
StyleBox["Mathematica", "TI"],
", upon encountering the sites. When the \"CyberSites\" review appeared, \
nanodollar technology had yet to establish its niche, and that has not \
changed. Nonetheless, sites such as the Toolkit and ",
StyleBox["THE INTEGRATOR", "TI"],
" remain prime candidates for both this technology and web advertising. In \
addition, the era of sports score and stock price retrieval (table look\
\[Hyphen]up) as \"cutting\[Hyphen]edge\" web technology is waning. Taking its \
place is an era of truly substantial remote\[Hyphen]site computation; early \
leaders in this era are the Toolkit and ",
StyleBox["THE INTEGRATOR", "TI"],
". "
}], "Text",
CellTags->{"S0.0.9", "8.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell["About the Author", "Section",
CellTags->{"S0.0.9", "9.1"}],
Cell[TextData[{
"Matthew M. Thomas completed his doctorate in chemical engineering at \
Washington University in St. Louis, in December 1995. The composite materials \
aspects of that work are summarized in the June 1997 issue of ",
StyleBox["Polymer Composites", "TI"],
". \n\nthomas@wuche2.wustl.edu "
}], "Text",
CellTags->{"S0.0.10", "9.2"}]
}, Open ]]
}, Open ]]
},
FrontEndVersion->"X 3.0",
ScreenRectangle->{{0, 1600}, {0, 1280}},
WindowSize->{520, 600},
WindowMargins->{{362, Automatic}, {Automatic, 124}},
Visible->True,
StyleDefinitions -> "ArticleModern.nb"
]
(***********************************************************************
Cached data follows. If you edit this Notebook file directly, not using
Mathematica, you must remove the line containing CacheID at the top of
the file. The cache data will then be recreated when you save this file
from within Mathematica.
***********************************************************************)
(*CellTagsOutline
CellTagsIndex->{
"0.1"->{
Cell[1731, 51, 195, 7, 73, "Title",
CellTags->"0.1"]},
"S0.0.1"->{
Cell[1929, 60, 149, 4, 64, "Subtitle",
CellTags->{"S0.0.1", "1.1"}],
Cell[2081, 66, 116, 2, 26, "Text",
CellTags->{"S0.0.1", "1.2"}]},
"1.1"->{
Cell[1929, 60, 149, 4, 64, "Subtitle",
CellTags->{"S0.0.1", "1.1"}]},
"1.2"->{
Cell[2081, 66, 116, 2, 26, "Text",
CellTags->{"S0.0.1", "1.2"}]},
"S0.0.2"->{
Cell[2200, 70, 1512, 29, 278, "Text",
CellTags->{"S0.0.2", "1.3"}],
Cell[3737, 103, 112, 4, 63, "Section",
CellTags->{"S0.0.2", "2.1"}]},
"1.3"->{
Cell[2200, 70, 1512, 29, 278, "Text",
CellTags->{"S0.0.2", "1.3"}]},
"2.1"->{
Cell[3737, 103, 112, 4, 63, "Section",
CellTags->{"S0.0.2", "2.1"}]},
"S0.0.3"->{
Cell[3852, 109, 4888, 94, 908, "Text",
CellTags->{"S0.0.3", "2.2"}],
Cell[8777, 208, 110, 4, 63, "Section",
CellTags->{"S0.0.3", "3.1"}]},
"2.2"->{
Cell[3852, 109, 4888, 94, 908, "Text",
CellTags->{"S0.0.3", "2.2"}]},
"3.1"->{
Cell[8777, 208, 110, 4, 63, "Section",
CellTags->{"S0.0.3", "3.1"}]},
"S0.0.4"->{
Cell[8890, 214, 3183, 61, 584, "Text",
CellTags->{"S0.0.4", "3.2"}],
Cell[12110, 280, 67, 1, 63, "Section",
CellTags->{"S0.0.4", "4.1"}]},
"3.2"->{
Cell[8890, 214, 3183, 61, 584, "Text",
CellTags->{"S0.0.4", "3.2"}]},
"4.1"->{
Cell[12110, 280, 67, 1, 63, "Section",
CellTags->{"S0.0.4", "4.1"}]},
"S0.0.5"->{
Cell[12180, 283, 3418, 94, 476, "Text",
CellTags->{"S0.0.5", "4.2"}],
Cell[15635, 382, 89, 1, 63, "Section",
CellTags->{"S0.0.5", "5.1"}]},
"4.2"->{
Cell[12180, 283, 3418, 94, 476, "Text",
CellTags->{"S0.0.5", "4.2"}]},
"5.1"->{
Cell[15635, 382, 89, 1, 63, "Section",
CellTags->{"S0.0.5", "5.1"}]},
"S0.0.6"->{
Cell[15727, 385, 2829, 62, 458, "Text",
CellTags->{"S0.0.6", "5.2"}],
Cell[18593, 452, 315, 12, 63, "Section",
CellTags->{"S0.0.6", "6.1"}]},
"5.2"->{
Cell[15727, 385, 2829, 62, 458, "Text",
CellTags->{"S0.0.6", "5.2"}]},
"6.1"->{
Cell[18593, 452, 315, 12, 63, "Section",
CellTags->{"S0.0.6", "6.1"}]},
"S0.0.7"->{
Cell[18911, 466, 9243, 224, 1394, "Text",
CellTags->{"S0.0.7", "6.2"}],
Cell[28191, 695, 74, 1, 63, "Section",
CellTags->{"S0.0.7", "7.1"}]},
"6.2"->{
Cell[18911, 466, 9243, 224, 1394, "Text",
CellTags->{"S0.0.7", "6.2"}]},
"7.1"->{
Cell[28191, 695, 74, 1, 63, "Section",
CellTags->{"S0.0.7", "7.1"}]},
"S0.0.8"->{
Cell[28268, 698, 3619, 84, 422, "Text",
CellTags->{"S0.0.8", "7.2"}],
Cell[31924, 787, 57, 1, 63, "Section",
CellTags->{"S0.0.8", "8.1"}]},
"7.2"->{
Cell[28268, 698, 3619, 84, 422, "Text",
CellTags->{"S0.0.8", "7.2"}]},
"8.1"->{
Cell[31924, 787, 57, 1, 63, "Section",
CellTags->{"S0.0.8", "8.1"}]},
"S0.0.9"->{
Cell[31984, 790, 4402, 82, 836, "Text",
CellTags->{"S0.0.9", "8.2"}],
Cell[36423, 877, 66, 1, 63, "Section",
CellTags->{"S0.0.9", "9.1"}]},
"8.2"->{
Cell[31984, 790, 4402, 82, 836, "Text",
CellTags->{"S0.0.9", "8.2"}]},
"9.1"->{
Cell[36423, 877, 66, 1, 63, "Section",
CellTags->{"S0.0.9", "9.1"}]},
"S0.0.10"->{
Cell[36492, 880, 353, 7, 98, "Text",
CellTags->{"S0.0.10", "9.2"}]},
"9.2"->{
Cell[36492, 880, 353, 7, 98, "Text",
CellTags->{"S0.0.10", "9.2"}]}
}
*)
(*CellTagsIndex
CellTagsIndex->{
{"0.1", 37510, 909},
{"S0.0.1", 37589, 912},
{"1.1", 37755, 917},
{"1.2", 37846, 920},
{"S0.0.2", 37936, 923},
{"1.3", 38105, 928},
{"2.1", 38195, 931},
{"S0.0.3", 38289, 934},
{"2.2", 38459, 939},
{"3.1", 38550, 942},
{"S0.0.4", 38644, 945},
{"3.2", 38814, 950},
{"4.1", 38905, 953},
{"S0.0.5", 38999, 956},
{"4.2", 39170, 961},
{"5.1", 39262, 964},
{"S0.0.6", 39356, 967},
{"5.2", 39529, 972},
{"6.1", 39621, 975},
{"S0.0.7", 39717, 978},
{"6.2", 39890, 983},
{"7.1", 39984, 986},
{"S0.0.8", 40078, 989},
{"7.2", 40249, 994},
{"8.1", 40341, 997},
{"S0.0.9", 40435, 1000},
{"8.2", 40606, 1005},
{"9.1", 40698, 1008},
{"S0.0.10", 40793, 1011},
{"9.2", 40883, 1014}
}
*)
(*NotebookFileOutline
Notebook[{
Cell[CellGroupData[{
Cell[1731, 51, 195, 7, 73, "Title",
CellTags->"0.1"],
Cell[1929, 60, 149, 4, 64, "Subtitle",
CellTags->{"S0.0.1", "1.1"}],
Cell[2081, 66, 116, 2, 26, "Text",
CellTags->{"S0.0.1", "1.2"}],
Cell[2200, 70, 1512, 29, 278, "Text",
CellTags->{"S0.0.2", "1.3"}],
Cell[CellGroupData[{
Cell[3737, 103, 112, 4, 63, "Section",
CellTags->{"S0.0.2", "2.1"}],
Cell[3852, 109, 4888, 94, 908, "Text",
CellTags->{"S0.0.3", "2.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[8777, 208, 110, 4, 63, "Section",
CellTags->{"S0.0.3", "3.1"}],
Cell[8890, 214, 3183, 61, 584, "Text",
CellTags->{"S0.0.4", "3.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[12110, 280, 67, 1, 63, "Section",
CellTags->{"S0.0.4", "4.1"}],
Cell[12180, 283, 3418, 94, 476, "Text",
CellTags->{"S0.0.5", "4.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[15635, 382, 89, 1, 63, "Section",
CellTags->{"S0.0.5", "5.1"}],
Cell[15727, 385, 2829, 62, 458, "Text",
CellTags->{"S0.0.6", "5.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[18593, 452, 315, 12, 63, "Section",
CellTags->{"S0.0.6", "6.1"}],
Cell[18911, 466, 9243, 224, 1394, "Text",
CellTags->{"S0.0.7", "6.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[28191, 695, 74, 1, 63, "Section",
CellTags->{"S0.0.7", "7.1"}],
Cell[28268, 698, 3619, 84, 422, "Text",
CellTags->{"S0.0.8", "7.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[31924, 787, 57, 1, 63, "Section",
CellTags->{"S0.0.8", "8.1"}],
Cell[31984, 790, 4402, 82, 836, "Text",
CellTags->{"S0.0.9", "8.2"}]
}, Open ]],
Cell[CellGroupData[{
Cell[36423, 877, 66, 1, 63, "Section",
CellTags->{"S0.0.9", "9.1"}],
Cell[36492, 880, 353, 7, 98, "Text",
CellTags->{"S0.0.10", "9.2"}]
}, Open ]]
}, Open ]]
}
]
*)
(***********************************************************************
End of Mathematica Notebook file.
***********************************************************************)