Math 4 Programmers is a full year high school course. Student develop advanced mathematics skills and understanding needed to succeed in electronics, computer science and information technology fields. The course includes an in-depth exploration of topics such as, set theory, logic, reasoning and proof that are essential to writing, and understanding, programming code. The course aims to develop computational thinking and problem solving skills. Activities also build career awareness about programming and computing skills in a variety of fields.

Click on a link to jump ahead to the following sections:

**Unit 1: To Infinity and Beyond**- The goal of Unit 1 is to excite students about the mathematics behind programming code. Students explore the mathematics and history of representing really big numbers. Students also explore the biggest number of all - infinity. Infinite series provide a backdrop to the sometimes bewildering behavior of infinity, and the story of the man whose passion for the infinite was religious in nature.- Lesson 1.1 - Really Big Numbers
- Lesson 1.2 - Names of Some Really Big Numbers
- Lesson 1.3 - ...and Beyond
- Lesson 1.4 - Infinite Paradox
- Lesson 1.5 - Zeno’s Paradoxes of Motion
- Lesson 1.6 - Infinite Algebra
- Lesson 1.7 - Infinite Geometry
- Lesson 1.8 - Zeno Revisited
- Lesson 1.9 - Divergent Series
- Lesson 1.10 - Devilish Series
- Lesson 1.11 - Infinite Wedding Cake
- Lesson 1.12 - Sizes of Infinity
- Extension - Riemann’s Rearrangement Theorem
- Performance Assessment 1 - Innumeracy
**Unit 2: Set Theory**- In this unit, students explore the concepts and notations of sets, subsets and Venn diagrams.- Reading - Georg Cantor, Champion of the Infinite
- Lesson 2.1 - Set Concepts
- Lesson 2.2 - Subsets
- Lesson 2.3 - Hilbert’s Hotel
- Lesson 2.4 - Surreal Numbers
- Lesson 2.5 - The Hackenbush Game
- Lesson 2.6 - Venn Diagrams
- Lesson 2.7 - Applications of Sets
- Performance Assessment 2 - Applications of Sets
**Unit 3: Logic**- In this unit, students explore the connection between logic and computer programming. The work of Alan Turing is studied as a model of computational problem solving. Students are challenged with a variety of case studies that require students to prove their reasoning.- Lesson 3.1 - The Language of Logic
- Lesson 3.2 - Establishing Truth
- Lesson 3.3 - The Mystery of π
- Lesson 3.4 - More Mysteries of π
- Lesson 3.5 - Types of Reasoning
- Lesson 3.6 - Deductive Reasoning
- Performance Assessment 3 - Logic Puzzles

- Lesson 4.1 - Number Theoretic Proofs
- Lesson 4.2 - Proofs Without Words
- Lesson 4.3 - Mathemagical Tricks
- Lesson 4.4 - Triangle Proofs
- Lesson 4.5 - Zeno’s Turtle Graphics
- Lesson 4.6 - Tessellations
- Lesson 4.7 - A New Kind of Science
- Lesson 4.8 - A Famous Puzzle
- Lesson 4.9 - Pythagorean Rationalism
- Lesson 4.10 - Einstein’s Theory of Special Relativity
- Lesson 4.11 - Godel’s Incompleteness Theorems - Knights and Knaves
- Lesson 4.12 - Logical Form and Logical Equivalence

- Lesson 5.1 - The Decimal Number System
- Formative assessment 5.2 - The Binary Number System
- Lesson 5.3 - The Hexadecimal Number System
- Lesson 5.4 - Operations in Other Number Systems
- Formative assessment 5.5 - Binary and 8421 Codes
- Unit 5 Assessment

- Lesson 6.1 - Rubik’s Cube
- Lesson 6.2 - Magical Cube Moves
- Lesson 6.3 - Solving the Cube: Corners First Style
- Lesson 6.4 - Sudoku
- Lesson 6.5 - Making Your Own Sudoku
- Lesson 6.6 - Kakuro
- Lesson 6.7 - Connection Games
- Lesson 6.8 - Game Trees
- Lesson 6.9 - One pile, two pile, three piles
- Lesson 6.10 - Going Modular
- Lesson 6.11 - Prisoner's Dilemma
- Extension - Other Nim Games
- Performance Assessment 4 - Pirates

- Lesson 7.1 - Primes and Congruences
- Lesson 7.2 - Fermat and Mersanne
- Lesson 7.3 - GIMPS
- Lesson 7.4 - Clock Arithmetic
- Lesson 7.5 - Chinese Remainder Theorem
- Lesson 7.6 - Ciphers and Cryptography
- Lesson 7.7 - Alan Turing and World War II Codebreaking

The following are links to resources for Math 4 Programmers:

- Python.org - Download the source code and more
- Online Users Guide - Python Beginners Guide

Please free to contact Alyve with any corrections or suggestions.

Also, please contact Alyve if you feel that any of the content is derived from copyrighted material.

Contact Alyve

Alyve