Array API Standard Support: special#

Support on CPU#

Legend

✔️ = supported

✖ = unsupported

N/A = out-of-scope

blank = not currently documented

function

torch

jax

dask

agm

bdtr

✔️

✔️

✔️

bdtrc

✔️

✔️

✔️

bdtri

✔️

✔️

✔️

bdtrik

bdtrin

betainc

✔️

✔️

✔️

betaincc

✔️

✔️

✔️

betainccinv

betaincinv

✔️

✔️

✔️

boxcox

✔️

✔️

✔️

boxcox1p

✔️

✔️

✔️

btdtria

btdtrib

chdtr

✔️

✔️

✔️

chdtrc

✔️

✔️

✔️

chdtri

✔️

✔️

✔️

chdtriv

chndtr

chndtridf

chndtrinc

chndtrix

elliprc

elliprd

elliprf

elliprg

elliprj

entr

✔️

✔️

✔️

erfcinv

erfinv

✔️

✔️

✔️

eval_chebyc

eval_chebys

eval_chebyt

eval_chebyu

eval_gegenbauer

eval_genlaguerre

eval_hermite

eval_hermitenorm

eval_jacobi

eval_laguerre

eval_legendre

eval_sh_chebyt

eval_sh_chebyu

eval_sh_jacobi

eval_sh_legendre

expn

✔️

✔️

✔️

fdtr

✔️

✔️

✔️

fdtrc

✔️

✔️

✔️

fdtri

✔️

✔️

✔️

fdtridfd

gdtr

✔️

✔️

✔️

gdtrc

✔️

✔️

✔️

gdtria

gdtrib

gdtrix

huber

✔️

✔️

✔️

hyp0f1

hyp1f1

✔️

✔️

✔️

hyperu

inv_boxcox

✔️

✔️

✔️

inv_boxcox1p

✔️

✔️

✔️

kl_div

✔️

✔️

✔️

kn

kolmogi

kolmogorov

lpmv

✔️

✔️

✔️

nbdtr

✔️

✔️

✔️

nbdtrc

✔️

✔️

✔️

nbdtri

✔️

✔️

✔️

nbdtrik

nbdtrin

ncfdtr

ncfdtri

ncfdtridfd

ncfdtridfn

ncfdtrinc

nctdtr

nctdtridf

nctdtrinc

nctdtrit

ndtri

✔️

✔️

✔️

ndtri_exp

nrdtrimn

nrdtrisd

owens_t

pdtr

✔️

✔️

✔️

pdtrc

✔️

✔️

✔️

pdtri

✔️

✔️

✔️

pdtrik

poch

✔️

✔️

✔️

powm1

pseudo_huber

✔️

✔️

✔️

rel_entr

✔️

✔️

✔️

round

shichi

sici

smirnov

smirnovi

spence

✔️

✔️

✔️

stdtr

✔️

✔️

✔️

stdtridf

stdtrit

✔️

✔️

tklmbda

wrightomega

yn

✔️

✔️

✔️

geterr

seterr

airy

airye

bei

beip

ber

berp

binom

✔️

✔️

✔️

exp1

✔️

✔️

✔️

expi

✔️

✔️

✔️

expit

✔️

✔️

✔️

exprel

✔️

✔️

✔️

gamma

✔️

✔️

✔️

gammaln

✔️

✔️

✔️

hankel1

hankel1e

hankel2

hankel2e

hyp2f1

it2i0k0

it2j0y0

it2struve0

itairy

iti0k0

itj0y0

itmodstruve0

itstruve0

iv

ive

jv

jve

kei

keip

kelvin

ker

kerp

kv

kve

log_expit

log_wright_bessel

loggamma

✔️

✔️

✔️

logit

✔️

✔️

✔️

mathieu_a

mathieu_b

mathieu_cem

mathieu_modcem1

mathieu_modcem2

mathieu_modsem1

mathieu_modsem2

mathieu_sem

modfresnelm

modfresnelp

obl_ang1

obl_ang1_cv

obl_cv

obl_rad1

obl_rad1_cv

obl_rad2

obl_rad2_cv

pbdv

pbvv

pbwa

pro_ang1

pro_ang1_cv

pro_cv

pro_rad1

pro_rad1_cv

pro_rad2

pro_rad2_cv

psi

✔️

✔️

✔️

rgamma

✔️

✔️

✔️

wright_bessel

yv

yve

zetac

✔️

✔️

✔️

sindg

✔️

✔️

✔️

cosdg

✔️

✔️

✔️

tandg

✔️

✔️

✔️

cotdg

✔️

✔️

✔️

i0

✔️

✔️

✔️

i0e

✔️

✔️

✔️

i1

✔️

✔️

✔️

i1e

✔️

✔️

✔️

k0

✔️

✔️

✔️

k0e

✔️

✔️

✔️

k1

✔️

✔️

✔️

k1e

✔️

✔️

✔️

y0

✔️

✔️

✔️

y1

✔️

✔️

✔️

j0

✔️

✔️

✔️

j1

✔️

✔️

✔️

struve

modstruve

beta

betaln

✔️

✔️

✔️

besselpoly

gammaln

✔️

✔️

✔️

gammasgn

✔️

✔️

✔️

cbrt

✔️

✔️

✔️

radian

✔️

✔️

✔️

cosm1

✔️

✔️

✔️

gammainc

✔️

✔️

✔️

gammaincinv

✔️

✔️

✔️

gammaincc

✔️

✔️

✔️

gammainccinv

✔️

✔️

✔️

fresnel

ellipe

ellipeinc

ellipk

✔️

✔️

✔️

ellipkinc

ellipkm1

✔️

✔️

✔️

ellipj

erf

✔️

✔️

✔️

erfc

✔️

✔️

✔️

erfcx

✔️

✔️

✔️

erfi

voigt_profile

wofz

dawsn

ndtr

✔️

✔️

✔️

log_ndtr

✔️

✔️

✔️

exp2

✔️

✔️

✔️

exp10

✔️

✔️

✔️

expm1

log1p

xlogy

✔️

✔️

✔️

xlog1py

✔️

✔️

✔️

ai_zeros

assoc_laguerre

bei_zeros

beip_zeros

ber_zeros

bernoulli

berp_zeros

bi_zeros

comb

digamma

✔️

✔️

✔️

diric

erf_zeros

euler

factorial

factorial2

factorialk

fresnel_zeros

fresnelc_zeros

fresnels_zeros

h1vp

h2vp

ivp

jn_zeros

jnjnp_zeros

jnp_zeros

jnyn_zeros

jvp

kei_zeros

keip_zeros

kelvin_zeros

ker_zeros

kerp_zeros

kvp

lmbda

lqmn

lqn

mathieu_even_coef

mathieu_odd_coef

obl_cv_seq

pbdn_seq

pbdv_seq

pbvv_seq

perm

polygamma

✔️

✔️

✔️

pro_cv_seq

riccati_jn

riccati_yn

sinc

✔️

✔️

✔️

softplus

stirling2

y0_zeros

y1_zeros

y1p_zeros

yn_zeros

ynp_zeros

yvp

zeta

✔️

✔️

✔️

legendre

chebyt

chebyu

chebyc

chebys

jacobi

laguerre

genlaguerre

hermite

hermitenorm

gegenbauer

sh_legendre

sh_chebyt

sh_chebyu

sh_jacobi

roots_legendre

roots_chebyt

roots_chebyu

roots_chebyc

roots_chebys

roots_jacobi

roots_laguerre

roots_genlaguerre

roots_hermite

roots_hermitenorm

roots_gegenbauer

roots_sh_legendre

roots_sh_chebyt

roots_sh_chebyu

roots_sh_jacobi

assoc_legendre_p

assoc_legendre_p_all

legendre_p

legendre_p_all

sph_harm_y

sph_harm_y_all

sph_legendre_p

sph_legendre_p_all

logsumexp

✔️

✔️

✔️

softmax

✔️

✔️

✔️

log_softmax

✔️

✔️

✔️

multigammaln

✔️

✔️

✔️

ellip_harm

ellip_harm_2

ellip_normal

lambertw

spherical_jn

spherical_yn

spherical_in

spherical_kn

Support on GPU#

Legend

✔️ = supported

✖ = unsupported

N/A = out-of-scope

blank = not currently documented

function

cupy

torch

jax

agm

bdtr

✔️

bdtrc

✔️

bdtri

✔️

bdtrik

bdtrin

betainc

✔️

✔️

betaincc

✔️

✔️

betainccinv

betaincinv

✔️

boxcox

✔️

boxcox1p

✔️

btdtria

btdtrib

chdtr

✔️

✔️

✔️

chdtrc

✔️

✔️

✔️

chdtri

✔️

chdtriv

chndtr

chndtridf

chndtrinc

chndtrix

elliprc

elliprd

elliprf

elliprg

elliprj

entr

✔️

✔️

✔️

erfcinv

erfinv

✔️

✔️

✔️

eval_chebyc

eval_chebys

eval_chebyt

eval_chebyu

eval_gegenbauer

eval_genlaguerre

eval_hermite

eval_hermitenorm

eval_jacobi

eval_laguerre

eval_legendre

eval_sh_chebyt

eval_sh_chebyu

eval_sh_jacobi

eval_sh_legendre

expn

✔️

✔️

fdtr

✔️

fdtrc

✔️

fdtri

✔️

fdtridfd

gdtr

✔️

gdtrc

✔️

gdtria

gdtrib

gdtrix

huber

✔️

hyp0f1

hyp1f1

✔️

hyperu

inv_boxcox

✔️

inv_boxcox1p

✔️

kl_div

✔️

✔️

kn

kolmogi

kolmogorov

lpmv

✔️

nbdtr

✔️

nbdtrc

✔️

nbdtri

✔️

nbdtrik

nbdtrin

ncfdtr

ncfdtri

ncfdtridfd

ncfdtridfn

ncfdtrinc

nctdtr

nctdtridf

nctdtrinc

nctdtrit

ndtri

✔️

✔️

✔️

ndtri_exp

nrdtrimn

nrdtrisd

owens_t

pdtr

✔️

pdtrc

✔️

pdtri

✔️

pdtrik

poch

✔️

✔️

powm1

pseudo_huber

✔️

rel_entr

✔️

✔️

✔️

round

shichi

sici

smirnov

smirnovi

spence

✔️

stdtr

✔️

✔️

stdtridf

stdtrit

✔️

tklmbda

wrightomega

yn

✔️

geterr

seterr

airy

airye

bei

beip

ber

berp

binom

✔️

exp1

✔️

expi

✔️

✔️

expit

✔️

✔️

✔️

exprel

✔️

gamma

✔️

✔️

gammaln

✔️

✔️

✔️

hankel1

hankel1e

hankel2

hankel2e

hyp2f1

it2i0k0

it2j0y0

it2struve0

itairy

iti0k0

itj0y0

itmodstruve0

itstruve0

iv

ive

jv

jve

kei

keip

kelvin

ker

kerp

kv

kve

log_expit

log_wright_bessel

loggamma

✔️

logit

✔️

✔️

✔️

mathieu_a

mathieu_b

mathieu_cem

mathieu_modcem1

mathieu_modcem2

mathieu_modsem1

mathieu_modsem2

mathieu_sem

modfresnelm

modfresnelp

obl_ang1

obl_ang1_cv

obl_cv

obl_rad1

obl_rad1_cv

obl_rad2

obl_rad2_cv

pbdv

pbvv

pbwa

pro_ang1

pro_ang1_cv

pro_cv

pro_rad1

pro_rad1_cv

pro_rad2

pro_rad2_cv

psi

✔️

✔️

✔️

rgamma

✔️

wright_bessel

yv

yve

zetac

✔️

sindg

✔️

cosdg

✔️

tandg

✔️

cotdg

✔️

i0

✔️

✔️

✔️

i0e

✔️

✔️

✔️

i1

✔️

✔️

✔️

i1e

✔️

✔️

✔️

k0

✔️

✔️

k0e

✔️

✔️

k1

✔️

✔️

k1e

✔️

✔️

y0

✔️

✔️

y1

✔️

✔️

j0

✔️

✔️

j1

✔️

✔️

struve

modstruve

beta

betaln

✔️

✔️

besselpoly

gammaln

✔️

✔️

✔️

gammasgn

✔️

✔️

cbrt

✔️

radian

✔️

cosm1

✔️

gammainc

✔️

✔️

✔️

gammaincinv

✔️

gammaincc

✔️

✔️

✔️

gammainccinv

✔️

fresnel

ellipe

ellipeinc

ellipk

✔️

ellipkinc

ellipkm1

✔️

ellipj

erf

✔️

✔️

✔️

erfc

✔️

✔️

✔️

erfcx

✔️

✔️

erfi

voigt_profile

wofz

dawsn

ndtr

✔️

✔️

✔️

log_ndtr

✔️

✔️

✔️

exp2

✔️

exp10

✔️

expm1

log1p

xlogy

✔️

✔️

✔️

xlog1py

✔️

✔️

✔️

ai_zeros

assoc_laguerre

bei_zeros

beip_zeros

ber_zeros

bernoulli

berp_zeros

bi_zeros

comb

digamma

✔️

✔️

✔️

diric

erf_zeros

euler

factorial

factorial2

factorialk

fresnel_zeros

fresnelc_zeros

fresnels_zeros

h1vp

h2vp

ivp

jn_zeros

jnjnp_zeros

jnp_zeros

jnyn_zeros

jvp

kei_zeros

keip_zeros

kelvin_zeros

ker_zeros

kerp_zeros

kvp

lmbda

lqmn

lqn

mathieu_even_coef

mathieu_odd_coef

obl_cv_seq

pbdn_seq

pbdv_seq

pbvv_seq

perm

polygamma

✔️

✔️

✔️

pro_cv_seq

riccati_jn

riccati_yn

sinc

✔️

✔️

softplus

stirling2

y0_zeros

y1_zeros

y1p_zeros

yn_zeros

ynp_zeros

yvp

zeta

✔️

✔️

✔️

legendre

chebyt

chebyu

chebyc

chebys

jacobi

laguerre

genlaguerre

hermite

hermitenorm

gegenbauer

sh_legendre

sh_chebyt

sh_chebyu

sh_jacobi

roots_legendre

roots_chebyt

roots_chebyu

roots_chebyc

roots_chebys

roots_jacobi

roots_laguerre

roots_genlaguerre

roots_hermite

roots_hermitenorm

roots_gegenbauer

roots_sh_legendre

roots_sh_chebyt

roots_sh_chebyu

roots_sh_jacobi

assoc_legendre_p

assoc_legendre_p_all

legendre_p

legendre_p_all

sph_harm_y

sph_harm_y_all

sph_legendre_p

sph_legendre_p_all

logsumexp

✔️

✔️

✔️

softmax

✔️

✔️

✔️

log_softmax

✔️

✔️

✔️

multigammaln

✔️

✔️

✔️

ellip_harm

ellip_harm_2

ellip_normal

lambertw

spherical_jn

spherical_yn

spherical_in

spherical_kn

Support with JIT#

Legend

✔️ = supported

✖ = unsupported

N/A = out-of-scope

blank = not currently documented

function

jax

agm

bdtr

bdtrc

bdtri

bdtrik

bdtrin

betainc

✔️

betaincc

✔️

betainccinv

betaincinv

boxcox

boxcox1p

btdtria

btdtrib

chdtr

✔️

chdtrc

✔️

chdtri

chdtriv

chndtr

chndtridf

chndtrinc

chndtrix

elliprc

elliprd

elliprf

elliprg

elliprj

entr

✔️

erfcinv

erfinv

✔️

eval_chebyc

eval_chebys

eval_chebyt

eval_chebyu

eval_gegenbauer

eval_genlaguerre

eval_hermite

eval_hermitenorm

eval_jacobi

eval_laguerre

eval_legendre

eval_sh_chebyt

eval_sh_chebyu

eval_sh_jacobi

eval_sh_legendre

expn

✔️

fdtr

fdtrc

fdtri

fdtridfd

gdtr

gdtrc

gdtria

gdtrib

gdtrix

huber

hyp0f1

hyp1f1

✔️

hyperu

inv_boxcox

inv_boxcox1p

kl_div

✔️

kn

kolmogi

kolmogorov

lpmv

nbdtr

nbdtrc

nbdtri

nbdtrik

nbdtrin

ncfdtr

ncfdtri

ncfdtridfd

ncfdtridfn

ncfdtrinc

nctdtr

nctdtridf

nctdtrinc

nctdtrit

ndtri

✔️

ndtri_exp

nrdtrimn

nrdtrisd

owens_t

pdtr

pdtrc

pdtri

pdtrik

poch

✔️

powm1

pseudo_huber

rel_entr

✔️

round

shichi

sici

smirnov

smirnovi

spence

✔️

stdtr

✔️

stdtridf

stdtrit

tklmbda

wrightomega

yn

geterr

seterr

airy

airye

bei

beip

ber

berp

binom

exp1

expi

✔️

expit

✔️

exprel

gamma

✔️

gammaln

✔️

hankel1

hankel1e

hankel2

hankel2e

hyp2f1

it2i0k0

it2j0y0

it2struve0

itairy

iti0k0

itj0y0

itmodstruve0

itstruve0

iv

ive

jv

jve

kei

keip

kelvin

ker

kerp

kv

kve

log_expit

log_wright_bessel

loggamma

logit

✔️

mathieu_a

mathieu_b

mathieu_cem

mathieu_modcem1

mathieu_modcem2

mathieu_modsem1

mathieu_modsem2

mathieu_sem

modfresnelm

modfresnelp

obl_ang1

obl_ang1_cv

obl_cv

obl_rad1

obl_rad1_cv

obl_rad2

obl_rad2_cv

pbdv

pbvv

pbwa

pro_ang1

pro_ang1_cv

pro_cv

pro_rad1

pro_rad1_cv

pro_rad2

pro_rad2_cv

psi

✔️

rgamma

wright_bessel

yv

yve

zetac

sindg

cosdg

tandg

cotdg

i0

✔️

i0e

✔️

i1

✔️

i1e

✔️

k0

k0e

k1

k1e

y0

y1

j0

j1

struve

modstruve

beta

betaln

✔️

besselpoly

gammaln

✔️

gammasgn

✔️

cbrt

radian

cosm1

gammainc

✔️

gammaincinv

gammaincc

✔️

gammainccinv

fresnel

ellipe

ellipeinc

ellipk

ellipkinc

ellipkm1

ellipj

erf

✔️

erfc

✔️

erfcx

erfi

voigt_profile

wofz

dawsn

ndtr

✔️

log_ndtr

✔️

exp2

exp10

expm1

log1p

xlogy

✔️

xlog1py

✔️

ai_zeros

assoc_laguerre

bei_zeros

beip_zeros

ber_zeros

bernoulli

berp_zeros

bi_zeros

comb

digamma

✔️

diric

erf_zeros

euler

factorial

factorial2

factorialk

fresnel_zeros

fresnelc_zeros

fresnels_zeros

h1vp

h2vp

ivp

jn_zeros

jnjnp_zeros

jnp_zeros

jnyn_zeros

jvp

kei_zeros

keip_zeros

kelvin_zeros

ker_zeros

kerp_zeros

kvp

lmbda

lqmn

lqn

mathieu_even_coef

mathieu_odd_coef

obl_cv_seq

pbdn_seq

pbdv_seq

pbvv_seq

perm

polygamma

✔️

pro_cv_seq

riccati_jn

riccati_yn

sinc

softplus

stirling2

y0_zeros

y1_zeros

y1p_zeros

yn_zeros

ynp_zeros

yvp

zeta

✔️

legendre

chebyt

chebyu

chebyc

chebys

jacobi

laguerre

genlaguerre

hermite

hermitenorm

gegenbauer

sh_legendre

sh_chebyt

sh_chebyu

sh_jacobi

roots_legendre

roots_chebyt

roots_chebyu

roots_chebyc

roots_chebys

roots_jacobi

roots_laguerre

roots_genlaguerre

roots_hermite

roots_hermitenorm

roots_gegenbauer

roots_sh_legendre

roots_sh_chebyt

roots_sh_chebyu

roots_sh_jacobi

assoc_legendre_p

assoc_legendre_p_all

legendre_p

legendre_p_all

sph_harm_y

sph_harm_y_all

sph_legendre_p

sph_legendre_p_all

logsumexp

✔️

softmax

✔️

log_softmax

✔️

multigammaln

✔️

ellip_harm

ellip_harm_2

ellip_normal

lambertw

spherical_jn

spherical_yn

spherical_in

spherical_kn