Skip to content

Add todos for linear algebra functions #68

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Oct 30, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions spec/API_specification/linear_algebra_functions.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ A conforming implementation of the array API standard must provide and support t

<!-- NOTE: please keep the functions in alphabetical order -->

### <a name="cholesky" href="#cholesky">#</a> cholesky()

TODO

### <a name="cross" href="#cross">#</a> cross(x1, x2, /, *, axis=-1)

Returns the cross product of 3-element vectors. If `x1` and `x2` are multi-dimensional arrays (i.e., both have a rank greater than `1`), then the cross-product of each pair of corresponding 3-element vectors is independently computed.
Expand Down Expand Up @@ -87,6 +91,22 @@ Returns the specified diagonals. If `x` has more than two dimensions, then the a

- if `x` is a two-dimensional array, a one-dimensional array containing the diagonal; otherwise, a multi-dimensional array containing the diagonals and whose shape is determined by removing `axis1` and `axis2` and appending a dimension equal to the size of the resulting diagonals. Must have the same data type as `x`.

### <a name="dot" href="#dot">#</a> dot()

TODO

### <a name="eig" href="#eig">#</a> eig()

TODO

### <a name="eigvalsh" href="#eigvalsh">#</a> eigvalsh()

TODO

### <a name="einsum" href="#einsum">#</a> einsum()

TODO

### <a name="inv" href="#inv">#</a> inv(x, /)

Computes the multiplicative inverse of a square matrix (or stack of square matrices) `x`.
Expand All @@ -103,6 +123,22 @@ Computes the multiplicative inverse of a square matrix (or stack of square matri

- an array containing the multiplicative inverses. Must have the same data type and shape as `x`.

### <a name="lstsq" href="#lstsq">#</a> lstsq()

TODO

### <a name="matmul" href="#matmul">#</a> matmul()

TODO

### <a name="matrix_power" href="#matrix_power">#</a> matrix_power()

TODO

### <a name="matrix_rank" href="#matrix_rank">#</a> matrix_rank()

TODO

### <a name="norm" href="#norm">#</a> norm(x, /, *, axis=None, keepdims=False, ord=None)

Computes the matrix or vector norm of `x`.
Expand Down Expand Up @@ -201,6 +237,26 @@ Computes the outer product of two vectors `x1` and `x2`.

- a two-dimensional array containing the outer product and whose shape is `NxM`.

### <a name="pinv" href="#pinv">#</a> pinv()

TODO

### <a name="qr" href="#qr">#</a> qr()

TODO

### <a name="slogdet" href="#slogdet">#</a> slogdet()

TODO

### <a name="solve" href="#solve">#</a> solve()

TODO

### <a name="svd" href="#svd">#</a> svd()

TODO

### <a name="trace" href="#trace">#</a> trace(x, /, *, axis1=0, axis2=1, offset=0)

Returns the sum along the specified diagonals. If `x` has more than two dimensions, then the axes (dimensions) specified by `axis1` and `axis2` are used to determine the two-dimensional sub-arrays for which to compute the trace.
Expand Down