Skip to content
Open
Changes from 1 commit
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
2d70966
Upgrade FiniteDifferences
willtebbutt Aug 22, 2021
f530868
Initial implementation
willtebbutt Aug 22, 2021
31f67d3
Some more work
willtebbutt Aug 22, 2021
4b554c5
Add testset comment
willtebbutt Aug 28, 2021
a51abe9
Examples and notes
willtebbutt Aug 28, 2021
8205ce6
Some work
willtebbutt Aug 28, 2021
bccece2
Tidy up examples
willtebbutt Aug 28, 2021
569f064
Tidy up PR notes
willtebbutt Aug 28, 2021
f321a97
Provide optimised pullback implementations
willtebbutt Aug 28, 2021
8a06561
Change pullback implementation specifications
willtebbutt Aug 28, 2021
72fc725
Add extra methods to avoid config
willtebbutt Aug 28, 2021
fbaaf86
Fix typo
willtebbutt Aug 28, 2021
313590d
Tweak comment in examples
willtebbutt Aug 28, 2021
321fceb
Update notes
willtebbutt Aug 28, 2021
a15f469
Tweak notes
willtebbutt Aug 28, 2021
22efec3
Fix typo:
willtebbutt Aug 28, 2021
2b0853e
Tweak notes
willtebbutt Aug 28, 2021
73a5fb7
Tweak notes
willtebbutt Aug 28, 2021
ddb3237
Tweak notes
willtebbutt Aug 28, 2021
34e43d6
Clarify notes
willtebbutt Aug 28, 2021
c773045
Clarify notes
willtebbutt Aug 28, 2021
eaaeba7
Clarify notes
willtebbutt Aug 28, 2021
d94514d
Tweak notes
willtebbutt Aug 28, 2021
d571ad1
Tweak notes
willtebbutt Aug 28, 2021
d87d5c4
Tweak examples comments
willtebbutt Aug 28, 2021
a7eb01c
Tidy up + add Fill example
willtebbutt Aug 29, 2021
e691b6a
Add SArray example
willtebbutt Aug 29, 2021
d0b0eb0
Add note on Symmetric restructure
willtebbutt Aug 29, 2021
d6eef62
Add UpperTriangular example with my_mul
willtebbutt Aug 29, 2021
a4ce7d2
Add WoodburyPDMat example
willtebbutt Aug 31, 2021
a880752
Note that natural tangent addition is fine
willtebbutt Sep 1, 2021
6cada13
Add another examples comment
willtebbutt Sep 1, 2021
8f06364
Add Kronecker example and fix WoodburPDMat example
willtebbutt Sep 5, 2021
5647388
Add note on side-effects
willtebbutt Sep 5, 2021
6d9d01f
Update notes.md
willtebbutt Sep 14, 2021
20f7727
Update notes.md
willtebbutt Sep 14, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Update notes.md
  • Loading branch information
willtebbutt authored Sep 14, 2021
commit 6d9d01fdfba1e0cf5019d3db00ceb8cc09ec9196
2 changes: 1 addition & 1 deletion notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ Other than the headlines at the top, additional benefits of (a correct implement
1. no risk of obstructing AD,
1. rand_tangent can just use structural tangents, simplifying its implementation and improving its reliability,
1. we can probably finally make `to_vec` treat things structurally (although we also need to extend it in other ways), which will also deal with reliability / simplicity of implementation problems,
1. generic constructor for composite types easy to implement,
1. generic constructor for composite types easy to implement since we can be sure of obtaining a structural tangent, and rid ourselves of the "need to define an adjoint for constructor..." errors we see in Zygote,
1. due to the utility functionality, all of the examples that I've encountered so far are very concise.

The potential downside is additional conversions between natural and structural tangents. Most of the time, these are free. When they're not, you ideally want to minimise them. I'm not sure how often this is going to be a problem, but it's something we're essentially ignoring at the minute (as far as I know), so we're probably going to have to incur some additional cost at some point even if we don't go down the route proposed here.
Expand Down