-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow more generic hessian set types #103
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #103 +/- ##
==========================================
- Coverage 84.56% 84.19% -0.37%
==========================================
Files 18 18
Lines 758 829 +71
==========================================
+ Hits 641 698 +57
- Misses 117 131 +14 ☔ View full report in Codecov by Sentry. |
@adrhill can you take a look and validate the general direction? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The new overloads are exactly what I imagined. 👍
The benchmark failures are caused by |
#109 has been merged. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Internal representations for Gradient and Hessian information should be decoupled and abstracted away. The only interface between the two should be union_product!
.
This requires
Source
connectivity_tracer_i_to_j
,gradient_tracer_i_to_j
andhessian_tracer_i_to_j
: one forAbstractTracer
and one forAbstractSet
gradient_tracer_i_to_j
insidehessian_tracer_i_to_j
for separation of concernsTuple{Int,Int}
union!
andproduct
, but we will need the more sophisticatedunion_product!
I introduced for HessiansTests
H != Set{Tuple{Int,Int}}