JuliaDiff / JuliaDiff/Diffractor.jl

Support indexing ExplictTangentBundle with TaylorIndex at any position

Open
#227 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

good first issue
Dominant language
Julia
Stars
453
Forks
33
PR merge metrics
No merged PRs in 30d

Description

Basically the reason you can't index ExplictTangentBundles with TaylorTangentIndex except at the last position is because there are multiple possible ways to compute a given deriviatve of any order -- except the highest order, then you need to do all the things so there is only one way.
In a good world they are all equal but we may not live in a good world.
If we do live in a good world though we can.

And the thing to do is when given a TaylorTangentIndex check all values that correspond to different paths to get a derivative of that order and if all equal return that value. If not all equal then error as we do not live in a good world.
The canonical index positioned to check are the ones that have count_ones(ii) equal to the taylor index (the order of the derivative).
Computing this is apparently a well known problem, see this thread on discourse.
Probably for performance reasons want to hard code the indexs to check for order 1 and 2 (maybe 3), then fall back to one of those algorithms.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the ExplictTangentBundle indexing implementation and the TaylorTangentIndex entry point; the issue does not name files or tests. Read the linked discourse discussion for ways to find canonical indices. Done means TaylorTangentIndex works at any position, returning equal derivative values and raising an error when paths disagree.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.