} else {
newBody = newBody.typecheck_as_set();
if (newBody.ambiguous) newBody = newBody.resolve_as_set(null);
if (newBody.errors.size()>0) throw newBody.errors.pick();
if (newBody.type.arity() != returnDecl.type.arity())
throw new ErrorType(newBody.span(),
"Function return type is "+returnDecl.type+",\nso the body must be a relation with arity "
+returnDecl.type.arity()+".\nSo the body's type cannot be: "+newBody.type);
}
if (newBody.mult!=0) throw new ErrorSyntax(newBody.span(), "Multiplicity expression not allowed here.");
this.body = newBody;