2919. The specification for adjacent_difference has baked-in sequential semantics

Section: 26.10.12 [adjacent.difference] Status: Resolved Submitter: United States Opened: 2017-02-03 Last modified: 2020-09-06

Priority: Not Prioritized

View all other issues in [adjacent.difference].

View all issues with Resolved status.

Discussion:

Addresses US 162

The specification for adjacent_difference has baked-in sequential semantics, in order to support reading/writing through input/output iterators. There should a second specification more amenable to parallelization for the overloads taking an execution policy.

Proposed change: Provide a specification for the overloads taking an execution policy this is more clearly suitable for parallel execution. (i.e., one that does not refer to an accumulated state.)

[2017-02-25, Alisdair comments]

Anthony Williams's paper on parallel algorithm complexity, p0574r0, includes wording that would resolve LWG issue 2919, and I suggest we defer initial triage to handling that paper.

[2017-03-12, post-Kona]

Resolved by P0467R2.

Proposed resolution: