Pythagorean triplet where a + b + c = 1000

(2, 1)
|> Seq.unfold (fun (m, n) –>
    Some([m * m - n * n; 2 * m * n; m * m + n * n],
        if n + 1 < m then m, n + 1 else m + 1, 1))
|> Seq.find (fun t -> List.sum t = 1000)
|> List.fold (*) 1