CompModule m = CompParser.alloy_parseStream(new ArrayList<Object>(), null, fc, null, -1, "", "", 1);
if (m.funcs.size()==0) throw new ErrorSyntax("The input does not correspond to an Alloy expression.");
Expr body = m.funcs.values().iterator().next().get(0).getBody();
Context cx = new Context(this, null);
body = cx.check(body);
body = body.resolve(body.type(), null);
if (body.errors.size()>0) throw body.errors.pick(); else return body;
}
/** Throw an exception if the name is already used, or has @ or /, or is univ/Int/none. */
private void dup(Pos pos, String name, boolean checkSig) throws Err {