diff --git a/pytensor/link/numba/dispatch/nlinalg.py b/pytensor/link/numba/dispatch/nlinalg.py index 63115e1926..860560d0a6 100644 --- a/pytensor/link/numba/dispatch/nlinalg.py +++ b/pytensor/link/numba/dispatch/nlinalg.py @@ -14,7 +14,6 @@ Det, Eig, Eigh, - Inv, MatrixInverse, MatrixPinv, QRFull, @@ -125,18 +124,6 @@ def eigh(x): return eigh -@numba_funcify.register(Inv) -def numba_funcify_Inv(op, node, **kwargs): - out_dtype = node.outputs[0].type.numpy_dtype - inputs_cast = int_to_float_fn(node.inputs, out_dtype) - - @numba_basic.numba_njit(inline="always") - def inv(x): - return np.linalg.inv(inputs_cast(x)).astype(out_dtype) - - return inv - - @numba_funcify.register(MatrixInverse) def numba_funcify_MatrixInverse(op, node, **kwargs): out_dtype = node.outputs[0].type.numpy_dtype diff --git a/pytensor/tensor/nlinalg.py b/pytensor/tensor/nlinalg.py index 709507afdd..32fa47d28d 100644 --- a/pytensor/tensor/nlinalg.py +++ b/pytensor/tensor/nlinalg.py @@ -78,25 +78,6 @@ def pinv(x, hermitian=False): return MatrixPinv(hermitian=hermitian)(x) -class Inv(Op): - """Computes the inverse of one or more matrices.""" - - def make_node(self, x): - x = as_tensor_variable(x) - return Apply(self, [x], [x.type()]) - - def perform(self, node, inputs, outputs): - (x,) = inputs - (z,) = outputs - z[0] = np.linalg.inv(x).astype(x.dtype) - - def infer_shape(self, fgraph, node, shapes): - return shapes - - -inv = Inv() - - class MatrixInverse(Op): r"""Computes the inverse of a matrix :math:`A`. @@ -169,7 +150,7 @@ def infer_shape(self, fgraph, node, shapes): return shapes -matrix_inverse = MatrixInverse() +inv = matrix_inverse = MatrixInverse() def matrix_dot(*args):