Simplify and generalize differentiate
#32
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I have rewritten
differentiate
. First, I've split up the functions. Second, I've removed the@generated
. Third, I've added a three state version. I think it would be quite easy to make it one function for arbitrary dimensional state spaces.I changed the bound for the julia version, because I am using the
(; a) == (a = a, )
syntax.Correctness
cross_difference
function, where I believe the wrong Delta is used at the boundaries. I've left it consistent with the current implementationTo do