let N: int = 16;

namespace main(N);

    // This column is not needed, but currently Powdr fails if there isn't at least one fied column
    col fixed L1 = [1] + [0]*;

    col witness a, b, c;
    // Note that by itself this constraint system is under-constrained and can't be
    // satisfied by filling everything with zero.
    // However, providing values for a or b externally should lead witgen to find a
    // unique witness.
    b = (a + 1) * (a + 1);

    // The pipeline skips witgen if the full witness is provided.
    // The `c` column is here only so that the provided external witness becomes partial, making witgen run.
    c = (b + 1) * (b + 1);
