Expression s, s2; IntExpression i; Formula f; Object obj;
switch(x.op) {
case IMPLIES: f=cform(a).not().or(cform(b)); return k2pos(f,x);
case IN: return k2pos(isIn(cset(a),b), x);
case NOT_IN: return k2pos(isIn(cset(a),b).not(), x);
case LT: i=cint(a); f=i.lt(cint(b)); return k2pos(f,x);
case LTE: i=cint(a); f=i.lte(cint(b)); return k2pos(f,x);
case GT: i=cint(a); f=i.gt(cint(b)); return k2pos(f,x);
case GTE: i=cint(a); f=i.gte(cint(b)); return k2pos(f,x);
case NOT_LT: i=cint(a); f=i.lt(cint(b)).not(); return k2pos(f,x);
case NOT_LTE: i=cint(a); f=i.lte(cint(b)).not(); return k2pos(f,x);