### Computer Algebra Systems

The natural tool for doing mathematics is a computer algebra system, of which there are two leading competitors: Maple and Mathematica. Villanova has an unlimited license for Maple and a limited license for Mathematica. Mathematica was created by one smart guy, Stephen Wolfram, and he built a corporate structure around it which early on was much more expensive than Maple. Maple was created by a group of educators at the University of Waterloo who morphed their software into an independent corporation, but one shaped by the university environment and pedagogical issues from the start.

Villlanova mathematics chose to use Maple in the late 1990s when it was much less user-friendly (command driven with no GUI-interface), but thanks primarily to an educator, Robert Lopez, the clickable calculus interface of palettes and context sensitive menus was developed, making Maple into a tool which reinforces standard mathematical notation and lends itself to relatively quickly for new users to become familiar with.

### Other software

Software which is more specific not to understanding and learning mathematics symbolically, numerically and graphically, which a computer algebra system facilitates together with a fully typesettable text documentation mode as well, is available and in use here at Villanova, but not designed for the same goals.

**MathCad** is a numerical/graphical software with a graphical interface (GUI) aimed at solving concrete engineering mathematical problems. It has limited symbolics which is a bit awkward to use. For example, one can define a function f(x) :=x^2, but then to evaluate it, one assigns a value to x, namely x:=2, and then f(x) evaluates to 4, but standard math function notation f(2) does not work. All engineering students eventually learn how to use MathCad, though not immediately as entering freshmen.

**MatLab** is a non-GUI character mode command driven software with specific goals. Its name derives from Matrix Laboratory, namely instead of working with continuous functions, essentially (this is a simplification) it works with sampled functions for a discrete set of values of the independent variable, say x = {x_{1},...x_{n} } so that f(x) = {f(x_{1}),...,f(x_{n})} and one has a 2xn matrix to work with. Thus the first row of the discrete matrix representation of the function holds the x values and the second row the function values. Signals processing was one of the original motivations for this approach, and so it is important in electrical engineering. Only the electrical engineering students use it here mostly as upper classmen.

**Excel** is a spreadsheet that is really good at handling matrices of data in rows and columns and evaluating formulas either row-wise or column-wise, as well as fitting curves to data easily. This is useful for most STEM students to be familiar with, often introduced in high school. It is great for instructors to manage grades, an activity is was really well designed for.

**Other math software tools** exist with different goals. **Python** and **R** are interesting examples of programming languages with no GUI interface, where computer code can be used to accomplish many tasks, not necessarily mathematics, although they can do certain specific math activities well.