The Pythagorean Theorem give the gives a relation for the lengths of the sides of a right triangle. If these lengths are positive integers, then we have a triple of numbers (a, b, c) such that where a and b are the lengths of the legs of the right triangle and c is the length of the hypotenuse. If we rewrite the equation dividing both sides by we get an equations of the unit circle:
If a, b, and c are positive integers, then the integer solutions to the original equation would correspond to the points on the unit circle in the first quadrant where the coordinate (x,y) are rational numbers. Thus there is an infinite number of solutions.
One way of finding all Pythagorean Triples is to use .
Lemma: Every odd number > 1 can be represented by the difference of two squares.
The odd number N is the difference of a unique pair of squares only if N is prime and thus a = N, b = 1.
References and sources of problems:
There are many good resources on the web. A Google search will give you a lifetime supply.
This one from wikipedia has a section with about 50 'properties' of Pythagorean Triples. That could easily be rephrased as 50 'theorems to prove'
This site has a list of the first few hundred primitive Pythagorean triples:
A BOOK!!Courant, Richard, & Robbins, Herbert. (1941) What is Mathematics? New York: Oxford University Press. The book has remained in print and is still available in a second edition published in 1996.