if (x.op == ExprQt.Op.NO) return enumerate(null, 0, x, x.sub, 0) == 0;
if (x.op == ExprQt.Op.SOME) return enumerate(null, 0, x, x.sub, 0) >= 1;
if (x.op == ExprQt.Op.LONE) return enumerate(null, 0, x, x.sub, 0) <= 1;
if (x.op == ExprQt.Op.ONE) return enumerate(null, 0, x, x.sub, 0) == 1;
if (x.op == ExprQt.Op.SUM) return trunc(enumerate(null, 0, x, x.sub, 0));
throw new ErrorFatal(x.pos, "Unsupported operator ("+x.op+") encountered during ExprQt.accept()");
}