Math 157 - Intro to Mathematical Software (Winter 2022)

Information appearing below is subject to revision until the first lecture. Some additional information, particularly on the use of CoCalc, will be given in the first lecture; CoCalc also provides a tutorial for students. See also Thomas Grubb's Math 157 page from winter 2021.

While the course is being taught in person, and students are strongly recommended to participate in person if possible, all aspects of the course will allow for remote participation. In particular, if pandemic conditions necessitate a pivot to remote instruction, this should not cause any serious disruption.

Course description: Math 157 is an introduction to the use of mathematical software. Although mathematics is still largely taught as a pencil-and-paper (and chalk) subject, this approach ignores the fundamental role played by computing technology in the process of mathematical reasoning and discovery. This course will introduce students to a broad but coherent collection of open-source software tools, and to diverse examples of their use in mathematical study and research. The course will be taught in a hands-on fashion; lectures will consist of interactive demonstrations, while assignments will combine conceptual questions with guided experimentation and discovery. We will make extensive use of the Python and Julia languages, the Jupyter notebook system, and the SageMath computer algebra system; however, no prior exposure to these tools will be assumed.

This course operates using the cloud computing platform CoCalc. The lectures use a "learn by doing" model in which students interact with CoCalc during the lecture; students are expected to attend class with a laptop or tablet with a keyboard (not a smartphone), but the only local software installation required is a web browser. Students participating remotely should use a second device (which could be a smartphone) to view the livestream or the recording. More details on how CoCalc is to be used will be given in the first lecture.

In addition to CoCalc, we will use Canvas to distribute lecture videos, and Zulip for communication about the course. Connection details for Zulip will be posted to Canvas.

Although Math 157 has been taught in some form since 2017, it remains highly experimental in both its use of new technology and the approach to pedagogy. In addition to the final course evaluations, there will be several opportunities to submit feedback during the course; this feedback will help me evaluate some of the experiments and plan modifications for future iterations of the course.

This class will be opened for concurrent enrollment as soon as I can confirm that space is available, hopefully by the end of week 1. It should also be feasible to audit the course, either in-person or remotely.

Instructor: Kiran Kedlaya, kedlaya [at] ucsd [etcetera].


Lectures: MWF TBA in ROOM TBA. No lectures on Monday, January 17 or Monday, February 21 (university holidays). Lectures will be livestreamed via Zoom; both the livestream and the recording will be made available via Canvas. For logistical reasons, a few lectures will be delivered remotely, with no in-person meeting.

This class includes a participation component which factors into the course grade (see below). In order to participate fully, students are expected to bring a laptop or large tablet with keyboard, equipped with Internet access and a web browser, to each lecture. If you cannot fulfill this requirement, do not enroll in the course!

In-class participation will typically include interaction with Jupyter notebooks in CoCalc, use of Zulip chat, and online research. As a courtesy to fellow students, please keep other online activity to a minimum during lecture, and do not do anything that causes your device to produce audible output.

Discussion sections:

Office hours (in-person and/or Zoom):

In addition, we will be conducting "Zulip office hours" where the course staff take turns monitoring Zulip.

Textbook: None. In lieu of purchasing a textbook, students will need to create a free account on CoCalc in order to complete and submit assignments. (It is not necessary to pay for an upgraded account; equivalent functionality will be provided to enrolled students.) If you do not use your official UCSD email address to create the account, please provide the instructor with the address you used in order to gain access to the course materials.


Homework: Weekly problem sets, due Wednesdays at 8pm (one each due during weeks 2-9). All assignments will be assigned, completed, submitted, evaluated, and returned using CoCalc; the process will be explained in the first lecture.

Quizzes: TBA.

Final exam: None. Instead, there will be an open-ended final project due on DATE TBA. Details about this will be given by the beginning of week 8. (Due to a clerical error, the registrar lists a final exam for this course; there is none.)


Since these parameters have been chosen to be somewhat forgiving, no additional excuses will be granted (not even for students joining the course late). No exceptions.

For the conversion of raw scores into letter grades, the following minima are guaranteed:
Percentage 97 93 90 87 83 80 77 73 70
Minimum grade A+ A A- B+ B B- C+ C C-
Additionally, any score in at least the 85th percentile or higher is guaranteed an A grade, while any score in the 65th percentile or higher is guaranteed a B grade.

Academic Integrity:

Topics calendar:

Some adjustments may be made as the term progresses.