INNER CODE UNIT · Python

prefix_or7

lschoe/mpyc · demos/PrefixOrExplained.py:349

def prefix_or7(x):
    def pf(a, x):  # prefix or with a as initial value plus aux. output
        n = len(x)
        if n == 1:
            return [], x[0]

        y0, b0 = pf(a, x[:n//2])
        a_or_b0 = a | b0
        y1, b1 = pf(a_or_b0, x[n//2:])
        return y0 + [a_or_b0] + y1, b0 | b1
        
    y, b = pf(0, x)
    y.append(b)
    return y


# In[23]:

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…