Name Ranges viewed Indices viewed Accumulator Output Operations Default operations In-order Based on accumulate 1 1 Arg Value A plus Yes reduce 1 1 Arg Value acR plus No sum 1 1 First Value A plus Yes accumulate inner_product 2 1 Arg Value A, bT plus, multiplies Yes adjacent_reduce 1 2 Arg Value A, bT - Yes inner_product transform_reduce 1,2 1 Arg Value acR, uT/bT plus, multiplies No partial_sum 1 1 First Range A plus Yes inclusive_scan 1 1 First, Arg Range aR plus No exclusive_scan 1 1 Arg Range aR plus No adjacent_difference 1 2 Quasi Range fD minus Yes / No adjacent_transform 1 2 Quasi Range D - Yes / No adjacent_difference adjacent_inclusive_scan 1 2 First Range A, D - Yes adjacent_find 1 2 No Position bP equal_to Yes (short-circuits) transform 1,2 1 No Range uT / bT - Yes find 1 1 No Position Value / uP - Yes (short-circuits) transform_inclusive_scan 1 1 First, Arg Range aR, uT - No transform_exclusive_scan 1 1 Arg Range aR, uT - No iota Value 1 Arg Range - increment Yes