
 
The World of Mathematica
Purpose of IMS

The International Mathematica Symposium
is an interdisciplinary conference dedicated to Mathematica
users, but also open to attendees who wish to discover its universe of
two million users.
Indeed, thanks to its federative power and its ability to facilitate
dialog between disciplines, Mathematica covers the fields of scientific
investigation, technical design and artistic creation.
That is why the symposium addresses the academic community (teaching or
research) as well as the industrial sphere or the world of arts.
Besides, the past IMS sites reflect the
variety of topics entered upon. The symposium
covers a wide variety of
disciplines such as:
 Pure and Applied Mathematics
 Algorithms and Computer Algebra
 Theoretical and Applied Computer Science
 Physics
 Complexity Analysis
 Biology and Life Sciences
 Human Sciences

 Engineering
 Economy and Finance
 Graphics and Design
 Visual Arts and Music
 Education
 Miscellaneous Applications

The symposium is thought of as a forum where everyone may present his
or her results and discover ongoing work in the domain of scientific
computing. As a supplement to talks, it will be animated by keynote
speakers, panels, training sessions, poster sessions, software
demonstrations, art exhibitions, not forgetting tourism and gastronomy.

Mathematica related websites
Here is a list of websites devoted to Mathematica related activities or communities.

Other references to institutional or personal web sites or web pages devoted to
Mathematica may be found on wikiMathematica.
Otherwise, on this international community or this
french community web pages, you will also find
complementary lists of web sites or web pages about Mathematica. If your URL, devoted to Mathematica
developments or uses, does not appear in these lists and if you would like it to appear, please edit
wikiMathematica or send an email to rbarrere@ens2m.fr

Applications developed in Mathematica
A number of applications have been developed with Mathematica, some of
them at Wolfram Research, others by independant developers. Their
domains range from mathematics to engineering, through physics,
computer science and finance. The first table gives a list of
applications developed by Wolfram Research. The second one provides
with a list of applications developed by independant developers,
with
their URLs. All these packages are also presented on a
Wolfram Research web page.
Applications developed by Wolfram Research
Control System Professional 
Digital Image Processing 
Dynamic Visualizer 
Experimental Data Analyst 
Finance Essentials 
Electrical Engineering Examples

Mechanical Systems 
Fuzzy Logic 
Mathematica Link for Excel 
Neural Networks 
A New Kind of Science Explorer 
Parallel Computing Toolkit 
Wavelet Explorer 
Scientific Astronomer 
Signals and Systems 
Structural Mechanics 
Time Series 

Applications developed by independant developers

Users testimonies
Physicist's testimony
One day, I met a student who had to design the optical system of an
electropositron collider. The topic was wonderful since the machine
had to probe matter at the level of 1 TeV (10 ^{12}
electronvolt) in the center of mass of the collisions.
The problem was to confine the beams
within dimensions of the order of 1 nanometer in the colliding region
to get a sufficient number of events. How to face the challenge?
Particle optics differs basically from light optics because the
particles have an electric charge. The focusing system is made of
electromagnets and each time the beam passes through an element, it is
focussed, say in the horizontal plane but defocussed in the vertical
plane. The overall focussing is obtained by a suitable arrangement of
the magnets. How to determine the magnetic structure? The supervisor
suggested to adapt a system designed at Stanford. That system comprised
not less than 15 independent magnets or 30 independent variables since
for each magnet, position along the beam and focussing strength are
free parameters.
 How to optimize a function of 30 variables? asked the student.
 With MINUIT, answered the supervisor.
MINUIT is a very powerful numerical program which can minimize a
function of an arbitrary number of variables. The problem is that the
result depends on the input data and three years of hard work would
have certainly been insufficient to exhaust all the possible conditions
and prove that the final solution was the best. Some theory should help.
Mathematica has symbolic resources that can be used to calculate the
analytical properties of an optical system. Why did the supervisor
suggest the numerical approach? First, he did not know symbolic
computing. Second, there is a lot of "knowhow" among designers. Third,
hand calculation is quickly untractable when symbolic matrices have to
be mutiplied. Provided its memory is large enough, the computer has no
difficulty in performing this kind of calculation and the user is left
with the interpretation of the analytical expressions delivered by the
program. So was born the application BeamOptics which, to some extent,
generalizes classical optics to particle optics. Students and designers
of particle accelerators were greatly helped and found a number of
remarkable properties that founded a theory where it was thought to be
impossible to establish.
Show next/Hide...
Bruno Autin, physicist at CERN (Geneva, Switzerland).
One experience with Mathematica
I first heard of Mathematica at the end of the 1980's. At this time,
there were confuse ideas of what could be done: we were expecting too
much but doing too little. I met version 2 at the beginning of the
1990's, although, without a front end (under unix), I was quickly
discouraged.
I really began to work in 1996 with version 3 on a work
station. I wrote data visualizing programs; then a mesher (something
like a Papert's turtle, drawing zigzags about curves). I used
Mathematica without really understanding how it worked, by trials and
failures, and it was frustrating.
In 2000, I needed to check a (singular, constrained, arbitrary
codimension) perturbation expansion. It did not work. I sought help
with the Groumf ( http://listes.ujfgrenoble.fr/wws/info/groumf):
thanks! Nevertheless, in order to move forward, I dropped my initial
goal and tried various problems, serendipitously, until I definitely
understood how Mathematica worked (which is sometimes surprising or
disappointing).
Since then, I have been moving mainly in two directions (possibly
relevant to New Kind of Science).
1 On one hand, a simple stochastic control problem (from a dice game).
This has grown progressively into an unexpectedly large program, at the
scale of which procedural programming is advantageously replaced by
λ (anonymous) or functional programming. Thus, the residual
difficulties are:  what functions are to be named? and  how to name
them?
2 On the other hand, with Rémi Barrère, I have been
studying the philosophical implications of computing: we transpose our
curious and critical attitude from programming to thinking in general.
A recurring problem is selfreference. As it appears in Mathematica,
the distinction between data and programs is artificial, and this fact
has farreaching consequences.
Finally, from my experience with Mathematica, I infer that intellectual
workers should not look down on their tools or oppose theory and
practice. For my part, Mathematica has helped me program and think at
higher levels, more autonomously and daringly. Mathematica triggers all
sorts of respectable interactions between the users, beyond the
categories of traditional science.
Show next/Hide...
Pierre Albarède
Why I am enthusiastic about Mathematica
Having heard well of Mathematica, my research team acquired it in the
early nineties (version 1.1). We then quickly realize it was a
fantastic product
founded on an evolutionary infrastructure full of promises.
What followed confirmed our initial feeling, since yet today, this
software appears as an avantgarde product. We then decided to invest
in Mathematica, not only in research but also for teaching, firstly in the
form of tutorials, more recently in the form of student projects.
To a wide extend, Mathematica should be appreciated as artworks: one
must get back to it to savour its subtleties. At first sight, it is
characterized by the consistent integration of an editing environment,
a computer algebra system and a multiparadigm language whose syntax
mimics that of mathematics. The result of this is a versatile tool, for
so
various activities as exact or approximate numerical computations,
algebraic or analytical manipulations, symbolic programming, data
processing, graphic representations, document editing. A renewed notion
of scientific computing emerges from its practice, where computing and
programming tend to blend into a single activity.
But I progressively discovered that, as a rule based system,
Mathematica expresses the mathematical notion of formal system, which
brings it closer to logic and the foundations of mathematics. At the
same time, because they can be thought of as functions operating on
data structures, these transformation rules express algorithms as
computer scientists do; that's the symbolic programming language
aspect. Finally, these functions naturally express the computing rules
for the modeling and simulation of physical systems.
To sum up, Mathematica appears as a pivot language with which
mathematicians as well as computer scentists or physicists may express
themselves, which stimulates crossdisciplinary dialog and facilitates
reciprocal understanding. With its universalist language, this piece of
software appears as a major actor of the basically multidisciplinary
ativity called modeling, and it contributes to bringing together
fundamental questions about computability and practical needs in
scientific computing.
Show next/Hide...
Rémi Barrère, university of FrancheComté,
ENSMM, (Besançon, France)
Testimony of Eric Jacopin
I discovered Mathematica 1.2 on an Apple Macintosh at the Robotics
Laboratory of Stanford University, in April 1989. There, I had a 6 by 6
matrix with parameterized entries and needed its eigenvalues. I still
remember giving the matrix to Mathematica and then almost immediately
getting the desired eigenvalues.
I was so astonished that I spent the
rest of the day checking the results. Of course, there was nothing to
check: not only the
eigenvalues were correct, but so were the eigenvectors.
I had almost no further interaction with Mathematica until I met
Jacqueline Zizi in 1990 while I was doing my Ph.D. at the University of
Paris 6. I then needed to both visualize a set of points and compute
its fractal dimension; the points came from an exhaustive state space
search of artificial intelligence planning problems. From 1994 to 2000,
these functions have been updated, enhanced and distributed through the
internet (first good old ftp and then http) together with the
artificial intelligence planning system which generated the set of
points processed by the Mathematica functions.
I have first been using Mathematica as the basic language of an
objectoriented programming course at the military academy of SaintCyr
since april 1998 (I developed a set of functions which adds an
objectoriented layer a la "ObjVLisp"); secondly, I developed a Turing
machine simulator for a course on complexity theory. From 2001 to 2004
I also taught a
course on functional programming in cooperation with the University of
Rennes 2.
On the research side, I use Mathematica as my basic programming (and
prototyping) language to investigate minimally unsatisfiable formulae
(written in conjunctive normal form, these are formulas which become
satisfiable when any of their clauses is removed).
Show next/Hide...
Eric Jacopin


