ITADN

Mooncake does not support SymbolicIndexingInterface AD

#1207OpenChrisRackauckas-Claude 创建于 2026-01-15
## Summary When using `DifferentiationInterface.gradient` with `AutoMooncake()` backend on functions that involve `SymbolicIndexingInterface` operations (like `sol[sys.x]` symbolic indexing), the tests fail. ## Context This was discovered during the migration from direct AD backend usage to DifferentiationInterface in PR #1206. The following test patterns fail with Mooncake: - Symbolic indexing gradients: `sol -> sum(sol[lorenz1.x])` - Vector symbolic indexing: `sol -> sum(sum.(sol[[lorenz1.x, lorenz2.x]]))` - Tuple symbolic indexing: `sol -> sum(sum.(collect.(sol[(lorenz1.x, lorenz2.x)])))` - Time series symbolic indexing: `sol -> sum(sum.(sol[[lorenz1.x, lorenz2.x], :]))` - Observable function AD: `sol -> sum(sol[sys.w])` - BatchedInterface AD ## Affected Files - `test/downstream/adjoints.jl` - `test/downstream/observables_autodiff.jl` ## Current Status Tests are marked as `@test_broken` in PR #1206 until this is resolved. ## Related This may be related to how Mooncake handles the ChainRules/rrules defined in SymbolicIndexingInterface or SciMLBase's extensions.
2 条评论