swift
682958a8 - [AutoDiff] Add `Differentiable.zeroTangentVectorInitializer`. (#28416)

Commit
5 years ago
[AutoDiff] Add `Differentiable.zeroTangentVectorInitializer`. (#28416) The `Differentiable.zeroTangentVectorInitializer` requirement will enable correct, efficient reverse-mode differentiation of struct property accesses. A `zeroTangentVectorInitializer` closure is more efficient than a `zeroTangentVector` computed property, which would always capture `self`. Add `Differentiable.zeroTangentVector` default instance property, which returns `self.zeroTangentVectorInitializer()`. Todos: - Implement derived conformances for `zeroTangentVectorInitializer`. - Implement differentiation transform support for `zeroTangentVector` and struct/tuple projection instructions.
Author
Parents
Loading