Closed
Description
Description
import pytensor
import pytensor.tensor as pt
import pytensor.sparse as ps
x = pt.as_tensor([[1, 0, 1.], [0, 1, 0]])
y = pt.exp(x)
assert isinstance(x, pt.TensorConstant)
assert isinstance(x, pt.TensorVariable)
assert not isinstance(y, pt.TensorConstant)
assert isinstance(y, pt.TensorVariable)
x = ps.as_sparse(ps.csr_from_dense(x).eval())
y = ps.structured_exp(x)
assert isinstance(x, ps.SparseConstant)
assert isinstance(x, ps.SparseVariable) # Fails
assert not isinstance(y, ps.SparseConstant)
assert isinstance(y, ps.SparseVariable)
This was observed in pymc-devs/pymc#7114 (comment)