I took some interest in Pythagorean triples—specifically, those that don't have a common factor greater than 1. Examples include the familiar (3, 4, 5), (5, 12, 13), (7, 24, 25). In each of these cases, the difference between b and c is 1.
Another triple is (6, 8, 10), since 36 + 64 = 100. However, this isn't a primitive, as a, b, and c are all divisible by 2.
My approach to generating a Pythagorean triple is to start with c - b and then calculate values for a^2. I envision b^2 positioned within c^2, so that the two share the lower right corner. Then, a^2 wraps around b^2, with the corner of a^2 being the square of (c - b).
Let n = (c - b). Then the area of a^2 is n^2 + 2(nb). Since this must be square, I rearrange the terms: n(n + 2b). If n is square, then (n + 2b) must also be square. If n isn't square, then (n + 2b) must be a square, multiplied by some number that, if multiplied by n would yield a square. (For example, if n is 12, (n + 2b) would have to be a square multiplied by 3—or 3 times some square.)
Since I'm interested in primitives, I want to find triples that don't have common factors. This is true for all triples where n = 1. What about for n = 2? Since 2 isn't a square, (n + 2b) must be a square multiplied by 2. With (c - b) of 2, a^2 will be even, and a will therefore be even. Therefore, b must be odd if we want a primitive triple. So with n = 2, we are looking for square products of 2(2+2b) such that b is an odd number. Algebra: 2(2+2b) = 4+4b = 4(1 + b). Since 4 is square, 1 + b must be square, and b must be one less than an even square. So: 3, 15, 35, 63, &c. Let's look at these.
Start with b = 3. Then c = 5, and we have our familiar (3, 4, 5) triple, just rearranged to (a = 4, b = 3, c = 5). With b = 15, c = 17, and a^2 = 4(1 +15) = 64, yielding a = 8, so (a = 8, b = 15, c = 17). With b = 35, the triple is (a = 12, b = 35, c = 37). And so on.
What about with different values of c - b? How about 3? Using n = 3, we get 3 x (3 + 2b). Since 3 isn't square, (3 + 2b) must be a square multiplied by 3. For (3 + 2b) to be a multiple of 3, 2b must be a multiple of 3, and so b itself must be a multiple of 3. This precludes a primitive triple.
In general, primitives are possible only with values of n that are either odd squares or doubled squares. This is because for n as an odd square (n + 2b) can be a square without n and b having any common factors. Likewise, with n being double a square, (n + 2b).