pub fn dot<T>(a: [T; 2], b: [T; 2]) -> Twhere T: Copy + Add<Output = T> + Mul<Output = T>,
Computes the dot product.