.. role:: hidden
    :class: hidden-section

gpytorch.lazy
===================================

.. automodule:: gpytorch.lazy
.. currentmodule:: gpytorch.lazy


LazyTensor
----------------

.. autoclass:: LazyTensor
   :members:

.. autoclass:: BlockLazyTensor
   :members:


Kernel LazyTensors
-----------------------------

.. autoclass:: LazyEvaluatedKernelTensor
   :members:


Structured LazyTensors
-----------------------------------

:hidden:`BlockDiagLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: BlockDiagLazyTensor
   :members:

:hidden:`CatLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: CatLazyTensor
   :members:


:hidden:`CholLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: CholLazyTensor
   :members:

:hidden:`DiagLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: DiagLazyTensor
   :members:

:hidden:`MatmulLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: MatmulLazyTensor
   :members:

:hidden:`RootLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: RootLazyTensor
   :members:

:hidden:`NonLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: NonLazyTensor
   :members:

:hidden:`ToeplitzLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: ToeplitzLazyTensor
   :members:

:hidden:`ZeroLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: ZeroLazyTensor
   :members:


Composition/Decoration LazyTensors
---------------------------------------

:hidden:`AddedDiagLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: AddedDiagLazyTensor
   :members:

:hidden:`ConstantMulLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: ConstantMulLazyTensor
   :members:

:hidden:`InterpolatedLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: InterpolatedLazyTensor
   :members:

:hidden:`KroneckerProductLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: KroneckerProductLazyTensor
   :members:

:hidden:`MulLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: MulLazyTensor
   :members:

:hidden:`PsdSumLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: PsdSumLazyTensor
   :members:

:hidden:`SumBatchLazyTensor`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autoclass:: SumBatchLazyTensor
   :members:
