Will Tebbutt
Will Tebbutt
This is probably going to need to go through a few rounds of redrafting before it's good to go. I've tried to produce a statement of the facts, without imposing...
# Motivation Somtimes it would be very convenient to have access to the element of the tangent space of a particular primal which happens to be zero for type-stability reasons....
I'm not advocating for anything here. I'm just stating some facts, and wish to ascertain whether a particular design choice is technically feasible or not. ## AD Effectively Operates on...
### Background [This issue](https://github.com/FluxML/Zygote.jl/pull/445) does stuff with `FillArrays`, and got be thinking about a problem we've known about for a while but not successfully resolved. Say that you have a...
Zygote regularly emits things like ```julia accum(a, b, c, d) ``` which is equivalent to ```julia +(a, b, c, d) ``` in ChainRules language. This means that we a) need...
We discovered in #183 that it's really convenient to be able to construct `Composite`s using the object that you're wrapping, as opposed to the things that constitute it. For example...
I guess these are a special case of things with constrained values, maybe? Anyway, the following ```julia function make_foo(a_number) return x -> a_number * x end foo = make_foo(5.0) foo...
#183 specifies how to implement differentials for `Dict`s, but doesn't handle the more general family of `AbstractDict`s. If someone has time to think about this, that would be very helpful.
It's not currently possible to compute ```julia d1 ≈ d2 ``` for all differentials `d1` and `d2`. Probably we want to be able to do this, and it shouldn't be...
We don't currently maintain a distinction between tangents and cotangents in ChainRules. I've yet to come up with an example where it matters whether or not you do, but it...