pub fn matmul( a: &dyn ArrayProtocol, b: &dyn ArrayProtocol, ) -> Result<Box<dyn ArrayProtocol>, OperationError>