any non-monotonic computation can be split into monotonic, where they process the bulk of the data, and folding the results to product the final result
Min is also logically monotonic in the same sense though, right? As a min accumulator I can throw away all past information once I've computed my result and never have consistency issues in light of new data.
A better example would be reachability analysis in a DAG - here you really do have monotonicity failure when merging results from multiple workers.
for example as you said: global_sum() = accum1.sum() + accum2.sum()
global_min():
any non-monotonic computation can be split into monotonic, where they process the bulk of the data, and folding the results to product the final result