I want to introduce calculus students to computer algebra systems (CAS) like Sage, Geogebra, and Wolfram Alpha in college Calculus 1 and 2. While I believe in the value of learning to do calculus by hand to a certain extent, I also don't want to pretend that we don't live in the 21st century. However, most textbooks I have seen that discuss CAS at any length mainly just list some examples where a CAS gets a wrong or unhelpful answer unless you know what you're doing. While this is undoubtedly an important point, I think it comes across as a sort of desultory and apologetic afterthought.

Moreover, I feel there are important skills that could be learned here, that could potentially transfer and outlast any content knowledge about calculus: how to use a computer as a tool, translating a problem into a form that a computer can understand and interpreting the answer, what a computer can and can't do, experimenting with a computer, using a computer to visualize an answer or a problem, and so on; in short, how to use a computer as an extension of your brain (rather than a replacement for it). Are there any textbooks or other resources out there that utilize CAS in such a way throughout a calculus 1 or 2 curriculum?

Note that I'm not talking so much about the teacher using a CAS to produce nice pictures or animations to illustrate a concept (although that's certainly a valid use), but about teaching the student to use a CAS in productive and creative ways. (This is related to this question, but it's both more general (being about all uses of CAS rather than just exploratory/experimental) and more specific (being particularly about calculus 1 and 2).)

  • 1
    $\begingroup$ Although you ask specifically about Calculus 1 and 2, I think it is worth mentioning that the Calc III (multivariable) course at the University of Michigan has a computer lab component which is taught with this an explicitly-stated secondary goal. (Or at least it used to be when I was a student there.) math.lsa.umich.edu/courses/215/12maple/index.html. $\endgroup$
    – mweiss
    Oct 21, 2015 at 22:22
  • 2
    $\begingroup$ There's a big difference between first-semester and second-semester calculus. In first-semester calc, none of the computations are difficult enough that any competent person would ever resort to a CAS. Most of the curriculum for second-semester calc, on the other hand, consists of learning to do integrals that no sane person would ever do by hand. The broader issue is that the role calculus plays in the educational system is to screen out future pharmacists who can't do junior-high-school algebra. Requiring them to integrate using partial fractions is very effective at that. $\endgroup$
    – user507
    Oct 22, 2015 at 14:51
  • 1
    $\begingroup$ I like that you are asking about actual texts, which is very different from what the title of your question might be interpreted as. This might be a class easier to do with a historical approach - series first - or with a lot about numerical integrals first. Otherwise you might just be adding a little programming course onto your calc course, even though you weren't really intending that. $\endgroup$
    – kcrisman
    Oct 23, 2015 at 2:26
  • $\begingroup$ @mweiss It still does. I am amused to see that the URL is still .../12maple/... ; we switched to Mathematica this year. $\endgroup$ Nov 4, 2015 at 15:37
  • $\begingroup$ Your statement "being about all uses of CAS rather than just experimental/numeric)" is completely misleading. Please delete it. Your question is not more general. $\endgroup$ Jul 21, 2017 at 19:04

3 Answers 3


I suspect a good answer to this question means rewriting the curriculum and standards to incorporate CAS. Otherwise, you just use the tool to implement the current curriculum, which to my mind means experimenting/numerical verification, or producing pretty pictures (which can be useful, but one learns by doing more than by looking). Are you prepared to do that?

Say that one needs to cover Taylor's theorem with Lagrange form of the remainder (and some other form for purpose of this discussion). One can set up step-by-step exercises illustrating some examples, hammering home some essential points and covering what might be important. However, who is ever going to do this outside of class? Even if you are in engineering, numerical analysis, or mathematical modeling, you are likely to use a package someone else developed to determine the remainder without thinking much about it. What you should REALLY teach is the idea of approximation with error control, and that two specific methods in calculus involve these two forms of remainder. That bit of knowledge (in my biased opinion) is vastly more important than the specific remainders. In teaching this bit of knowledge, one has the opportunity to teach CAS skills along with this bit. To my mind, the class will have intellectual integrity if this "bit of knowledge" which is not calculus specific is spelled out in the curriculum. This is an example of what I mean by rewriting the curriculum.

I think you should consider foundational issues in answering this question, which shouldn't be "what foundations and tools should I use and how do I use to teach calculus", but "what calculus should I use and how do I use to teach foundations and tools" .

Gerhard "That's How I See It" Paseman, 2015.10.21


Great Question! I think that you should target the use of technology that students can use in additional spaces and will have easy access to. Here, I would recommend Python or R or even just using Google Sheets to explore so that they have connections to other work they will do in the future. Producing high quality presentations and written work is a skill important to both our mathematical and non-mathematical students. As simple recursion and plotting is all that is needed for calculus, I think any of the three choices make sense. Google sheets will be most familiar, R will produce the nicest output with RMarkdown, and Python with the Jupyter notebooks is great and easily moves from computational exploration to paper to slides to web to etc.

I've been using Jupyter and Python with my students who are liberal arts undergrads and don't have substantial mathematics backgrounds.

Central to my class is recourse to the difference calculus aka the use of sums and differences to motivate the important concepts of integration, differentiation, and differential equations.

I think that recent curricular forms have started to push a larger existence for finite approaches within algebra and precalculus, but simply understanding linear, quadratic, and exponential sequences defined recursively and the patterns that emerge from looking at sums and differences of these things are best explored on a machine. The syntax required to do so is minimal in Python. For example, if you have an area approximation problem with four rectangles width 1 and heights 1, 2, 3, 4, we can express this with lists and operations on that list as

w = 1 h = [1, 2, 3, 4] areas = w*h tot_area = sum(areas)

You can easily vary the structure of the list to have more rectangles, and there are very easy functions to build lists quickly.

Typically, I want to do a few small simple problems like this and turn to the computer to demonstrate how we deal with larger cases and see if there are recognizable patterns that emerge. If we had ten rectangles, this might be a bit difficult for timely work in class except for the computer. The images below are easily produced and values representing the areas are easily computed with python. There are also existing libraries in both SymPy and SciPy to evaluate expressions symbolically and numerically.

](https[![areas in matplotlib]

Here's an example of some basic area problems that I made:


I am not aware of a solid holistic text that does a good job interweaving accessible technology, but I am working up the rest of my class materials with Python if you're interested and I'm happy to share.


This is a hard question because it starts with a debatable position and than says how to implement it. Are we not allowed to comment meaningfully on the debatable position? E.g. what if more CAS in the curriculum leads to student confusion or worse learning of calculus. Maybe it doesn't, but it seems like this is a meaningful discussion to be had, if we care about the students, rather than just accepted as if A, then how B.

To seriously address the question, I think the best way to handle the use of CAS is in higher level classes (particularly non math technical classes, e.g. I used Maple in grad level thermo for phase diagram PDE analysis). In the lower level classes better to let the students learn classically. So this is not "not being in the same century", but just using a tool as a tool after mastering the fundamentals earlier. Certainly having basic knowledge and familiarity with analytical solutions, for me, made it easier to use Maple on a tricky applied problem.

A good example to me is use of the calculator. Having an intuitive and mechanical ability with arithmetic makes the rest of math and science much easier. But there is no reason why 11th grade chemistry students need to do long division or row multiplication when doing the frequent stoichiometry calculations. But it is still useful to have the background rather than only have a feeling for arithmetic of what numbers to punch.

So...my answer to the "if A, then B" is to wait. And let them use CAS in higher level classes. I worry that they won't learn the techniques and then will struggle when trying to read a physics paper or follow a chalkboard derivation in engineering or physics classes otherwise.

Finally for students that will end their math with calculus, they will have lost an opportunity to get an intuitive feeling for what is going on if it is just feed stuff into a black box and let it do the work. The other students may recover or be strong enough that it doesn't hurt them. but you will do a real disservice to the more basic ones.

  • 1
    $\begingroup$ Using a CAS and understanding theory are not mutually exclusive endeavors. The people who use, for example, discrete Fourier transform apps without understanding the underlying calculations thoroughly often make serious errors in the applications. Conversely, people who make claims about operational calculus or distribution theory without having done specific numerical computations often make erroneous claims. $\endgroup$ Jul 23, 2017 at 21:51
  • 1
    $\begingroup$ Engineering students are being introduced to Matlab as undergraduates and need to understand possible sources of error. $\endgroup$ Jul 23, 2017 at 21:54
  • 3
    $\begingroup$ Tom, let them get the intro in their upper division undergrad classes within their major. Using it for a special project class is great idea. There is no need to cover it everywhere. Life is prioritization. Oh...and last I checked, there was not some massive crisis of kids not learning MAtlab well enough. But there are plenty of issues with lack of basic math intuition holding kids back. $\endgroup$
    – guest
    Jul 23, 2017 at 22:20
  • 1
    $\begingroup$ If you want to use comments you must preserve a consistent account. If you do not want to maintain such an account do not comment, and stop abusing answer posts to comment. See matheducators.stackexchange.com/help/why-register $\endgroup$
    – quid
    Jul 23, 2017 at 23:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.