 # Topics without videos

Here are some video ideas. Please take them and make videos out of them.

## Polite numbers

Make a video on the polite numbers. Show why no power of two can be written as the sum of two or more consecutive natural numbers. Do this by pairing off, as show here.

## Proving the basic properties of arithmetic

A video series that proves all the basic properties of arithmetic. It would start with Peano arithmetic, then proceed by constructing the integers via a congruence relation on natural numbers, then construct the rationals via a congruence on the integers, and finish with one of the constructions of the reals, or at least describe the axiomatization of the reals.

## Different types of proof by induction

Make several videos on different types of proof by induction. I haven't seen this done yet, but I haven't looked very hard either. Here's a link with a couple types of proof by induction.

## Total functions

What is a total function?
A total function always terminates.
Proving a function non-total
A function can be proven non-total by finding a cycle when evaluating the function.
Explain how subtraction can be modified to become total. This is often called "proper subtraction."

## Unions and intersections of countably infinite sets

Is the union of two countably infinite sets countably infinite?
Proving the union of countably many infinite sets is countably infinite
Proving the intersection of two countably infinite sets countably infinite
Proving the intersection of two countably infinite sets is countably infinite

## Other

• Prove geometrically that the cross product is distributive.
• Recursively enumerable sets
• Recursive definition of the quotient and remainder
How can we write the quotient and remainder functions, for natural numbers, as recursive functions? We can call the remainder and quotient functions, rem and quot respectively. I'd bet these behave the same as the rem and quot functions in Haskell.
• Curry-Howard isomorphism
• Primitive recursive functions
Defining primitive recursive functions is useful, because all primitive recursive functions terminate. BlooP is a non-Turing-complete programming language, which can be used to express any primitive recursive function.
• Recursive sets
A recursive set is such that its elements can be listed in increasing order. To prove a set non-recursive, we must prove there exists no function for listing its elements in increasing order. Are there practical examples of non-recursive sets?
• Cantor's pairing function
How can we use one number to represent a pair of numbers? By thinking of arbitrary lists as a pair, where the first element is the length of the list, how can we use one number to represent an arbitrary list of numbers?
• Proving basic set theory properties using Venn diagrams
What is the general method for proving set theory properties using Venn diagrams? How can it be made computational? Why are basic identities decidable?
• Proving properties of absolute value
What is the general method for proving properties of absolute value? How can it be made computational?
• Proving proving properties of divisibility What is the general method for proving properties of divisibility? How can it be made computational?
• Proving properties of GCD/LCM
What is the general method for proving properties of GCD/LCM? How can it be made computational?
• Properties of even and odd functions
What happens when you multiply functions, either of which may be even or odd? ProofWiki has these proofs, but I haven't seen a video featuring them.