SyTen
ad_fwd.h File Reference

Forward declarations for automatic differentiation infrastructure. More...

#include <memory>
#include "inc/util/pair.h"
#include "inc/util/cached_type_async.h"
+ Include dependency graph for ad_fwd.h:
+ This graph shows which files directly or indirectly include this file:

Namespaces

namespace  syten
 Syten namespace.
 
namespace  syten::STensorImpl
 Contains all ‘smart’ tensor related classes and functions.
 
namespace  syten::STensorImpl::Autodiff
 Contains classes and functions to deal with autodifferentiation of STensor objects.
 

Typedefs

using syten::STensorImpl::Autodiff::AdjointEvaluator = std::function< STensor(ComputeNode &node, Size input_number, STensorId const result_id)>
 Type of the input adjoint evaluator which can access the adjoints of all output values as well as the stored input and output tensors of the node to evaluate an output adjoint of an upstream node. More...
 
using syten::AutodiffRescale = YesNo< struct _autodiffrescale >
 Whether or not to rescale the output adjoints during autodifferentiation. More...
 
using syten::STensorImpl::Autodiff::ComputeNodePtr = std::shared_ptr< ComputeNode >
 Type of a shared pointer to a compute node. More...
 
using syten::STensorImpl::Autodiff::ComputeNodeWPtr = std::weak_ptr< ComputeNode >
 Type of a weak pointer to a compute node, used for the "downstream" direction. More...
 
using syten::STensorImpl::Autodiff::STensorId = std::uint64_t
 Randomly-generated ID of an STensor, to be used during automatic differentiation. More...
 

Detailed Description

Forward declarations for automatic differentiation infrastructure.