# Index Expression Functions

 `cast`(e, dt) Cast an expression from one datatype to another. `remainder`(e1, e2) Return element wise remainder of division. `abs`(e1) Return the element-wise absolute value of the index expression. `pow`(e1, e2) Computes e1**e2 element-wise. `square`(e1) Return the element-wise square value of the index expression. `cube`(e1) Return the element-wise cube value of the index expression. `sqrt`(e1) Return the element-wise sqrt of the index expression. Return the element-wise cube root of the index expression. `exp`(e1) Calculate the exponential of all elements in an index expression. `log`(e1) Return the element-wise logarithm base e of the index expression. `log10`(e1) Return the element-wise logarithm base 10 of the index expression. `sin`(e1) Return the element-wise sine of the index expression. `cos`(e1) Return the element-wise cosine of the index expression. `tan`(e1) Return the element-wise tangent of the index expression. `asin`(e1) Return the element-wise arcsine of the index expression. `acos`(e1) Return the element-wise arccosine of the index expression. `atan`(e1) Return the element-wise arc tangent of the index expression. `atan2`(e1) Return the element-wise arc tangent of the index expression respecting quadrants. `sinh`(e1) Return the element-wise hyperbolic sine of the index expression. `cosh`(e1) Return the element-wise hyperbolic cosine of the index expression. `tanh`(e1) Return the element-wise hyperbolic tangent of the index expression. `asinh`(e1) Return the element-wise hyperbolic arcsine of the index expression. `acosh`(e1) Return the element-wise hyperbolic arccosine of the index expression. `atanh`(e1) Return the element-wise hyperbolic arc tangent of the index expression. Return the element-wise logical not of the index expression. `gt`(e1, e2) Computes e1 > e2 element-wise. `lt`(e1, e2) Computes e1 < e2 element-wise. `ge`(e1, e2) Computes e1 >= e2 element-wise. `le`(e1, e2) Computes e1 <= e2 element-wise. `eq`(e1, e2) Computes e1 == e2 element-wise. `ne`(e1, e2) Computes e1 != e2 element-wise. `max`(e1, e2) Computes max(e1, e2) element-wise. `min`(e1, e2) Computes min(e1, e2) element-wise. `heaviside`(e1, e2) Computes element wise heaviside as described in `tensor_heaviside()`. `sum`(var, e) Sums a dimension of an index expression. `add`(e1, e2) Computes e1 + e2 element-wise. `mul`(e1, e2) Computes e1 * e2 element wise. `sub`(e1, e2) Computes e1 - e2 element wise. `div`(e1, e2) Computes e1 / e2 element wise.