Counting primitive Pythagorean triples
A Pythagorean triple consists of three positive integers $a, b$ and $c$ satisfying $a^2+b^2=c^2$.
The triple is called primitive if $a, b$ and $c$ are relatively prime.
Let P($n$) be the number of primitive Pythagorean triples with $a < b < c \le n$.
For example P(20) = 3, since there are three triples: (3,4,5), (5,12,13) and (8,15,17).
You are given that P(106) = 159139.