pub fn validate_broadcast_shapes( shape1: &[usize], shape2: &[usize], ) -> PyResult<Vec<usize>>
Validate that dimensions are compatible for broadcasting