GraphBLAS / LAGraph

This is a library plus a test harness for collecting algorithms that use the GraphBLAS. For test coverage reports, see https://graphblas.org/LAGraph/ . Documentation: https://lagraph.readthedocs.org
Other
228 stars 61 forks source link

LCC: undo recent semiring change #198

Closed pcostanza closed 1 year ago

pcostanza commented 1 year ago

The recent change to the LCC algorithm in LCC-minifix - using GxB_PLUS_SECOND_FP64 instead of GrB_PLUS_TIMES_SEMIRING_FP64 - seems to be buggy. When running it on the Graphalytics "test" data set, the output validation fails.

This pull request reverts the change.

DrTimothyAldenDavis commented 1 year ago

Maybe it can only be used when the matrix is symmetric?

pcostanza commented 1 year ago

I found out what the issue is: Graphalytics does not call LAGraph_Cached_IsSymmetricStructure before calling LAGraph_lcc, and LAGraph_lcc needs that information. When I add that call, everything is fine again. However, whose responsibility is it to call these LAGraph_Cached_XYZ functions? Should I add this in LAGraph_lcc itself, or should I add this in Graphalytics?