@Override
public Symbol normalizeSymbol(Function function) {
// ... where id in (1,2,3,4,...)
// arguments.get(0) ... id
// arguments.get(1) ... SetLiteral<Literal> (1,2,3,4,...)
Symbol left = function.arguments().get(0);
if (!left.symbolType().isValueSymbol()) {
return function;
}
Object inValue = ((Literal) left).value();
Literal inList = (Literal) function.arguments().get(1);
assert inList.valueType().id() == SetType.ID;