Instructor: Anil Hirani (email), Altgeld Hall Room
TA: Vaibhav Karve (email).
Anil Hirani: Wednesday 1:00 -- 2:00 PM and by appointment, Room 375 Altgeld Hall.
Vaibhav Karve : Thursday 5:00 -- 6:00 PM, Room 7 Illini Hall
All course grades and announcements will be posted on Moodle. All worksheets from class will also be available there. Class worksheets and Homework assignments will be released on CoCalc.
Exam 1: February 20, 2019. Wednesday. In class. Syllabus: Everything up to February 18.
Exam 2: March 27, 2019. Wednesday. In class. Syllabus: Everything from February 20 to March 25.
Exam 3: April 19, 2019. Friday. 5:00 PM -- 6:30 PM. Syllabus: Everything from March 27 to April 17.
Final Project: April 22 to May 01, 2019. Final project will require you to apply some of the skills and techniques learnt in class to one problem from a list of possible project ideas. You will be required to work in groups for the final project and present your project to the class.
Description: A self-contained, project-based, lab-style one semester course for mathematics students that will guide them through a computational way of approaching problems. Twice a week there will be a lecture demonstration with short lecture segments and short programming exercise. One day each week will be for longer programming project work supervised by instructor and TA. Topics covered will include programming tools for topological and traditional data analysis, implementations of cryptography, and modeling and solving problems using graph algorithms. Programming will be done in Python and SageMath.
Goals: There are 4 main goals: (1) Improve programming skill and algorithmic thinking; (2) Prepare for industrial computational math work; (3) Prepare for future math courses by learning to use computation to play with examples; (4) Prepare for research in mathematics using a computer as a tool.
Prerequisites: CS 101 or CS 125 or prior programming experience in one or more of the following languages: Python, C, C++, Java. In addition must have taken CS 173 or MATH 347. 3 credit hours, 2 hours lecture-demonstration, 1 hour lab.
Textbook: There is no required textbook. However for SageMath, the free book Computational Mathematics with SageMath is recommended.
Grading: Homeworks 20% (This will include Friday assignments worth 15% and in-class lectures worth 5%), Three exams 15% each, Final Project 35%. Your lowest homework score will be dropped.
There will be approximately 8-9 homeworks due (on CoCalc) on every Friday. Homeworks will be posted on Friday mornings and will be due the next Friday. Late homeworks will not be accepted (however, your lowest homework score will be dropped). You are encouraged and welcome to collaborate with other students on homeworks. That means you can talk to others and discuss the homework problems. But you must write up the solutions on your own (and acknowledge the contributions of your colleagues by name, if applicable).
Lecture notebooks released during class will then be collected and graded for effort instead of accuracy. They will contribute to 5% of the final grade.