-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Evolve or nix broadcast_zpreserving[!]? #19533
Comments
How do this relate to your PRs in this area, e.g. #19518? |
On the one hand, those pull requests largely render On the other hand, carrying that series of pull requests through to its logical conclusion may make the demand for In any case, deciding what to do with Does that clarify? My immediate, malleable inclination is to remove Thoughts? Thanks and best! |
+1 for removing it. Zero-preserving functions (assumed pure) should be detected automatically by |
Closing given #19720 and generic sparse Closing thought: Generic sparse |
broadcast_zpreserving[!]
broadcasts a function over the intersection of the nonzero patterns of oneSparseMatrixCSC
and either anotherSparseMatrixCSC
or anArray
,BitArray
, orNumber
. This issue's purpose is to determine whetherbroadcast_zpreserving[!]
should (1) evolve, (2) disappear, or (3) be left in peace.On the one hand,
broadcast_zpreserving[!]
sees little use in its present (unexported) form. Chances are removing it would cause little disruption and few would miss it. One less function to support and maintain, more time for higher priority work.On the other hand, some desire exists for related
map
-/broadcast
-like functionality for sparse/structured matrices/vectors (see discussion in, e.g., #7010, #11474, and #18590). A generalization ofbroadcast_zpreserving[!]
could satisfy most such desire. And withmap
/broadcast
's recent evolution for sparse/structured matrices (where, e.g., returning aSparseMatrixCSC
frommap
/broadcast
operations over structured matrices seems the present consensus direction), a generalization ofbroadcast_zpreserving[!]
could play a more significant role going forward: That generalization could strictly preserve structure, e.g. returningDiagonal
when operating over aDiagonal
and aTridiagonal
(orMatrix
, or what have you).Thoughts? Thanks and best!
The text was updated successfully, but these errors were encountered: