fn float_dot<F>(a: &[F], b: &[F]) -> Option<F>where F: Float,
The dot product of a and b. Return None if it is not finite.
a
b
None