(v) -> (_) # symbolic constraint marking v as public # this introduces an extra variable _ to get around # existing parser design # this extra variable should be optimized out at some point _ = (1*one) * (1*v) _ = (1*one) output (1*one) 0 = (1*one) * (1*_) - (1*v) # constrain intermediate output assignment