The following example does not match NumPy:
import dpctl, dpctl.tensor as dpt, numpy as np
dpctl.__version__
# Out: '0.22.0dev0+114.g0797836be2'
a = dpt.asarray([complex(+0, np.nan)])
dpt.acosh(a)
# Out: usm_ndarray([nan+nanj])
a = np.asarray([complex(+0, np.nan)])
np.acosh(a)
# Out: array([nan+1.57079633j])
and based on Python array API spec:
If a is +0 and b is NaN, the result is NaN ± πj/2 (sign of imaginary component is unspecified).