# Nx v0.11.0 - Table of Contents Multi-dimensional arrays (tensors) and numerical definitions for Elixir ## Pages - [Changelog](changelog.md) - Getting Started - [What is Nx?](introduction.md) - [Installation](installation.md) - [Nx Quickstart](quickstart.md) - [Broadcasting](broadcasting.md) - [Numerical Definitions (defn)](numerical_definitions.md) - Cheatsheets - [NumPy -> Nx](numpy_nx.md) - Exercises - [Exercises: 1-20](exercises-1-20.md) - Advanced - [Vectorization](vectorization.md) - [Aggregation](aggregation.md) - [Automatic Differentation](automatic_differentiation.md) - [Discrete Fourier Transform with Nx](complex_fft.md) ## Modules - [Nx](Nx.md): Numerical Elixir. - [Nx.Constants](Nx.Constants.md): Common constants used in computations. - [Nx.Defn](Nx.Defn.md): Numerical functions. - [Nx.Defn.Kernel](Nx.Defn.Kernel.md): All imported functionality available inside `defn` blocks. - [Nx.Floating](Nx.Floating.md): Functions for loading and dumping floating-point formats not supported by the Erlang VM. - [Nx.LinAlg](Nx.LinAlg.md): Nx conveniences for linear algebra. - [Nx.Random](Nx.Random.md): Pseudo-random number generators. - [Nx.Serving](Nx.Serving.md): Serving encapsulates client and server work to perform batched requests. - [Nx.Testing](Nx.Testing.md): Testing functions for Nx tensor assertions. - Protocols - [Nx.Container](Nx.Container.md): A protocol that teaches `defn` how to traverse data structures. - [Nx.LazyContainer](Nx.LazyContainer.md): Converts a data structure to a container lazily. - Structs - [Nx.Batch](Nx.Batch.md): Creates a batch of tensors (and containers). - [Nx.Heatmap](Nx.Heatmap.md): Provides a heatmap that is printed using ANSI colors in the terminal. - [Nx.Mesh](Nx.Mesh.md): A mesh is a named collection of devices arranged in a logical shape. - [Nx.Pointer](Nx.Pointer.md): Represents a reference to a value in memory. - [Nx.Tensor](Nx.Tensor.md): The tensor struct and the behaviour for backends. - Backends - [Nx.Backend](Nx.Backend.md): The behaviour for tensor backends. - [Nx.BinaryBackend](Nx.BinaryBackend.md): An opaque backend written in pure Elixir that stores the data in Elixir's binaries. - [Nx.TemplateBackend](Nx.TemplateBackend.md): An opaque backend written that is used as template to declare the type, shape, and names of tensors to be expected in the future. - [Nx.Type](Nx.Type.md): Conveniences for working with types. - Compilers - [Nx.Defn.Compiler](Nx.Defn.Compiler.md): The specification and helper functions for custom `defn` compilers. - [Nx.Defn.Composite](Nx.Defn.Composite.md): Functions to deal with composite data types. - [Nx.Defn.Evaluator](Nx.Defn.Evaluator.md): The default implementation of a `Nx.Defn.Compiler` that evaluates the expression tree against the tensor backend. - [Nx.Defn.Expr](Nx.Defn.Expr.md): The expression used by `Nx.Defn.Compiler`. - [Nx.Defn.Graph](Nx.Defn.Graph.md): A module for splitting `Nx.Defn.Expr` into stages. - [Nx.Defn.Token](Nx.Defn.Token.md): A `defn` token used by hooks. - [Nx.Defn.Tree](Nx.Defn.Tree.md): Helper functions to traverse defn expressions, either as single nodes or in-depth.