Welcome to Modern Computational Math! For course info and policies, please see the syllabus. For grades, log into Moodle. If you need help, contact Prof. Wright.

Office hours: Mon. 9–10, Tues. 10–11, Wed. 10:30–11:30, Thurs. 1–2, Fri. 9–10 (see Moodle for the Zoom link)

**Help sessions:** Mon., Wed., and Thurs. 8–9pm (see Moodle for the link)

Top

Today

Bottom

Do the following before the first class:

- Complete the Introductory Survey.
- Watch the Hands-On Start to Mathematica video.
- Install Mathematica on your computer. If you've already installed Mathematica, open it up and check that your license key is still active. You might be prompted to upgrade to the most recent version. For assistance, see this IT Help Desk page.

Monday

February 15

February 15

Introduction; Mathematica basics

Do the following before the next class:

- Complete the syllabus quiz.
- Read the following pages about the Wolfram Language: Fractions & Decimals, Variables & Functions, Lists, Iterators, and Assignments.
- Complete Intro Mathematica assignment. Upload your solution notebook to Moodle.

Wednesday

February 17

February 17

Computing the digits of \(\pi\)

Do the following before the next class:

- Watch this video, which explains why the sum of reciprocals of squares converges to \(\pi^2/6\).
- Start the \(\pi\) Project (due
~~Monday~~Wednesday). Implement at least one of the methods for approximating digits of \(\pi\) before Friday's class. Also look over the sample project report. - Complete Mathematica Quiz 1 (on Moodle).
*Optional bonus*: Watch this video to learn why the product formula from the Intro Mathematica assignment converges to \(\pi\).

Friday

February 19

February 19

Computing the digits of \(\pi\)

Do the following before the next class:

- Read How to Create Lists and How to Get Elements of Lists from the Wolfram language documentation.
- Work on the \(\pi\) Project.
**It's now due Wednesday**, but try to make as much progress as you can this weekend, and ask questions on Monday. Prepare a Mathematica notebook that contains your code and discussion. Pay attention to the grading rubric in the assignment file and refer to the sample project report. - Watch The magic of Fibonacci numbers, a 6-minute TED talk by Arthur Benjamin.

Do the following before the next class:

- Finish the \(\pi\) Project. Pay attention to the grading rubric in the assignment file and refer to the sample project report. Submit your notebook to the Pi Project on Moodle.
- Investigate \( F_n^2 - F_{n+1}F_{n-1} \), where \( F_n \) is the \(n\)th Fibonacci number. Evaluate this quantity for lots of values of \(n\). What pattern do you observe?

Wednesday

February 24

February 24

Fibonacci identities

Do the following before the next class:

- Catalan's identity says \(F_n^2 - F_{n+r}F_{n-r} = (-1)^{n-r}F_r^2 \). Verify this for at least three values of \(r > 2 \). For each value of \( r \), check at least 100 values of \( n \).
- Vajda's identity says \(F_{n+i}F_{n+j} - F_nF_{n+i+j} = (-1)^n F_i F_j \). Verify this for at least six pairs \(i,j\). For each pair \(i,j\), check at least 100 values of \(n\).
- Submit a Mathematica notebook containing your verifications of Catalan's and Vajda's identities to the Fibonacci Assignment on Moodle.
**Please put your name at the top of your notebook.**(Note that this is an Assignment, not a Project.)

Friday

February 26

February 26

Pell numbers

Do the following before the next class:

- Complete Mathematica Quiz 2 (on Moodle). This quiz covers lists, indexed variables, functions, and Modules.
- Take a look at this paper, which proves various identities involving the Pell numbers. Read through the Introduction, which gives some background about the Pell numbers. Note that Proposition 1 corresponds to our observations in class. Take a quick look at the other propositions and theorems that the authors prove.
- Begin the Pell Project, due Wednesday, March 3.

Do the following before the next class:

- Finish the Pell Project (due Wednesday). Upload your notebook to Moodle.
- Continue your investigation of sequences that arise when iterating the Collatz function or some other function. Bring observations and questions to class on Wednesday.

**Extra credit opportunity**: Attend either of Dr. Trachette Jackson's lectures on March 2 or 3 and answer these two questions on Moodle to earn two extra-credit points.

Wednesday

March 3

March 3

Iterated functions: logistic map and chaos

Do the following before the next class:

- Read Mathematician Proves Huge Result on 'Dangerous' Problem and answer three questions on Moodle before class on Friday.
- Continue your computational exploration of Collatz sequences and the logistic function. Take a look at the Iterated Functions Project and think about what you want to investigate.

Friday

March 5

March 5

Iterated functions: fractals

Bonus video: Steven Strogatz — The science of sync

Do the following before the next class:

- Watch
*This equation will change how you see the world*by Veritasium. Observe how the bifurcation diagram of the logistic map relates to the Mandelbrot set. There are even applications to fluid convection, neuron firing, and more. Wow! - Work on the Iterated Functions Project, due Wednesday.

Do the following before the next class:

- Finish the Iterated Functions Project. Upload your notebook to Moodle.
- Finish implementing your
**isPrime**function, if not finished in class. - Read "Why prime numbers still fascinate matematicians, 2,300 years later" and answer these four questions on Moodle.

Do the following before the next class:

- Finish implementing the Sieve of Eratosthenes in Mathematica.
- Read "The Sequence of Prime Numbers" (JSTOR link) and answer these questions on Moodle.

Bonus video: Yitang Zhang: An Unlikely Math Star Rises

Do the following before the next class:

- Finish implementing the Sieve of Sundaram in Mathematica.
- Take a look at the Primes Project, which is due March 22.

Monday

March 15

March 15

Primes powers

Wednesday

March 17

March 17

*Rest Day — no class*

Do the following before the next class:

- Work on the Primes Project.
- Watch this video introduction to RSA encryption.

Friday

March 19

March 19

Mathematics of RSA Cryptography

Do the following before the next class:

- Finish the Primes Project and submit your notebook to Moodle.
- Read RSA Encryption – Keeping the Internet Secure.
- Watch this RSA encryption video. This video gives an overview of how we will convert text to numbers that we can encrypt. It's important to watch this before Monday's class!
- Choose two (secret) prime numbers of 30 digits each. (Use your
**fermatPrime**function!) Keep them in a safe place for the next week.

Monday

March 22

March 22

Encrypting text with RSA cryptography

Do the following before the next class:

- Use your secret primes to compute your
*public key*\( (e,n) \). Post your public key to the RSA Forum on Moodle. Then use the forum to send encrypted messages to Prof. Wright and at least two other people. (This is the RSA Assignment.) - Watch How Quantum Computers Break Encryption.

Wednesday

March 24

March 24

Counting primes

Do the following before the next class:

**RSA Assignment**: Send and receive secure messages with at least two other people using the RSA Forum. Use your Mathematica code to encrypt and decrypt the messages.- Complete Exercises 1–6 in the Counting Primes Mathematica notebook. Upload your answers to the Counting Primes Assignment on Moodle.
- Read The Riemann Hypothesis, explained. Answer these reading questions on Moodle.

Friday

March 26

March 26

Prime patterns and the Riemann zeta function

Do the following before the next class:

- Complete the five exercises in the Primes and the Zeta Function Mathematica notebook. Upload your solutions to the Riemann Zeta Assignment on Moodle.
- For one more take on the Riemann Hypothesis, watch this video by Quanta Magazine.

Monday

March 29

March 29

Introduction to Python

Do the following before the next class:

- Work on any four of the six exercises in the Intro to Python notebook. If you get stuck, send questions to the professor or bring questions to class on Wednesday. By Friday, submit your work by copying the sharable link to your notebook and pasting it in the text field of the Intro Python assignment on Moodle.
- Read the following pages from the
*Python Land*tutorial: Variables, Strings, Functions, Booleans, and Loops.

Wednesday

March 31

March 31

Yahtzee in Mathematica and Python

Do the following before the next class:

- Finish four of the six exercises in the Intro to Python notebook and submit your notebook link to the Intro Python assignment on Moodle.
- Finish implementing the Yahtzee simulation in Python. You don't have to submit it for a grade, but we will use it for further investigation in Friday's class.
- Please complete the Mid-Semester Survey. Answers are voluntary and anonymous.

Friday

April 2

April 2

Yahtzee investigation and plotting with Matplotlib

Do the following before the next class:

- Complete Python Quiz 1 (topics are variables, lists, if statements, and functions).
- Use simulation and make plots to answer the three questions in the Yahtzee Investigation notebook. Give this your best shot before class on Monday, and bring questions to class.

Monday

April 5

April 5

Trouble simulation

Wednesday

April 7

April 7

*Rest Day — no class*

Do the following before the next class:

- Finish the Yahtzee Investigation, if you haven't done so already, and submit a link to your notebook to the Yahtzee Investigation assignment on Moodle.
- Work on the Trouble Investigation. Bring questions to class on Friday.

Friday

April 9

April 9

Trouble Investigation; Intro to Random Walks

Do the following before the next class:

- Finish the Trouble Investigation and submit a link to your notebook to Moodle.
- Investigate the questions in the Random Walk Notebook.

Monday

April 12

April 12

1D and 2D Random Walks

Bonus: Federico Ardila on Math, Music and the Space of Possibilities

Do the following before the next class:

- Watch the 1-D Random Walk Proof to learn how often a simple symmetric 1-D random walk returns to the origin.
- Read through this NumPy quickstart guide.
- Take a look at the Random Walk Project, due next Monday.
- Continue investigating 1-D and 2-D random walks.

Wednesday

April 14

April 14

2D Random walks

Do the following before the next class:

- Work on the Random Walk Project, due
~~Monday~~Wednesday. - Think about these questions: Do all 2D random walks return to the origin? What does your computational investigation show? How would the 1D proof from the video adapt to 2D?

Friday

April 16

April 16

2D and 3D Random Walks

Do the following before the next class:

- Work on the Random Walk Project, due
~~Monday~~Wednesday. - Continue thinking about these questions: Do all 2D symmetric random walks return to the origin? How about 3D random walks? What does your computational investigation show? How would the 1D proof from the video relate to higher dimensional random walks?

Monday

April 19

April 19

Percolation

Do the following before the next class:

- Finish the Random Walk Project, due Wednesday.

Wednesday

April 21

April 21

Percolation

Do the following before the next class:

Friday

April 23

April 23

Percolation

Do the following before the next class:

Monday

April 26

April 26

Markov chain inverse problem

Do the following before the next class:

Wednesday

April 28

April 28

Markov Chain Monte Carlo (MCMC)

Do the following before the next class:

Friday

April 30

April 30

MCMC optimization: simulated annealing

Do the following before the next class:

Monday

May 3

May 3

Magic squares

Do the following before the next class:

Wednesday

May 5

May 5

Magic squares

Do the following before the next class:

Friday

May 7

May 7

Traveling salesperson problem

Do the following before the next class:

Monday

May 10

May 10

Traveling salesperson problem

Do the following before the next class:

Wednesday

May 12

May 12

To be announced

Do the following before the next class:

Friday

May 14

May 14

Final projects

Do the following before the next class:

Monday

May 17

May 17

Final projects

Do the following before the final exam period:

Thursday

May 20

May 20

**2–4pm**: Final presentations for Math 242

**B**

Saturday

May 22

May 22

**2–4pm**: Final presentations for Math 242

**A**