Frames White

Results 1108 comments of Frames White

weird, it looks like the `fails` isn't surpressing the failure from propagating? I can't see why this would happen only on one OS and all the way back in the...

In the long term we want to move away from `to_vec` entirely and just have FiniteDifferences work on `Tangent` objects etc directly.

> it seems like the only influence of the tangent on the finite difference call is whether to ignore the full input or not? (This code is called from test_frule,...

I think if we made `to_vec` on Bool do the empty vector that would fix this. But the short term solution is to definite the to_vec for Mat in your...

A big part of it is that FiniteDifferences.jl is slower, but more accurate what Zygote's `gradtest` does. `gradtest` is equivelent to `central_fdm(3, 1; adapt=0)`; where as we use `central_fdm(5, 1;...

Yeah, and `dot` i.e. inner product is something all tangent types should overload. A problem maybe is if it fails that won't tell you where you failed, will it?

Fair, it isn't comprehensive but yeah i think: ``` 6φ(d) = φ(2d) + φ(4d) ``` would catch a lot. Just like `iszero(φ(zero(d))`

Idk about checking type piracy more broadly (though I have written code for that before and it's on Discourse) But in particular checking for rules being added to `DataType`, `Union`...

Isn't that the whole point of these functions? Otherwise would be `value_and_derivative`? Which is a different function already provided

Probably introduce a `rand_structural_tangent`? Which we have code for so can trivially reuse it. One complicating factor is how deep do you go? E.g what about a ```julia struct Foo...