What is grad_fn for a non-differentiable function like slicing (grad_fn=<SliceBackward0>), view (grad_fn=<ViewBackward0>), etc.? Is grad_fn simply the function's inverse operation?
Where in the source code can I see the implementation of SliceBackward0, ViewBackward0, etc.? I assume it's in their backward() static methods somewhere.
related: "Does it make sense for a computational graph to have entirely non-differentiable functions?"