INNER CODE UNIT · Python
prefix_or3
lschoe/mpyc · demos/PrefixOrExplained.py:222
def prefix_or3(x):
n = len(x)
if n == 1:
return x[:]
y0 = prefix_or3(x[:n//2])
y1 = prefix_or3(x[n//2:])
a = y0[-1]
return y0 + [a | b for b in y1] # all |s in parallel in 1 round
# In[15]:
correctness(prefix_or3)
complexity(prefix_or3, 8)