# Where is the Backward function defined in PyTorch?

This might sound a little basic but while running the code below, I wanted to see the source code of the backward function:

import torch.nn as nn

[...]
criterion = nn.CrossEntropyLoss()
loss = criterion(output, target)
loss.backward()


So I went to the PyTorch GitHub and found the CrossEntropyLoss class, but without any backward function defined. Moving up, CrossEntropyLoss extends _WeightedLoss >> _Loss >> Module then still nothing.

So, where is the backward function defined?