code: private AssumptionSet generateFunctionOrMethodAssumptionSet(WyilFile.Decl.FunctionOrMethod declaration,
  			LocalEnvironment environment) {
  		Tuple<WyilFile.Decl.Variable> parameters = declaration.getParameters();
  		Expr[] preconditions = new Expr[declaration.getRequires().size()];
  		Expr[] arguments = new Expr[parameters.size()];
  		// Translate parameters as arguments to invocation
  		for (int i = 0; i != arguments.length; ++i) {
  			WyilFile.Decl.Variable var = parameters.get(i);
  			WyalFile.VariableDeclaration versionedVar = environment.read(var);
  			arguments[i] = new Expr.VariableAccess(versionedVar);
  		}
  		//
  		for (int i = 0; i != preconditions.length; ++i) {
  			WyalFile.Name name = convert(declaration.getQualifiedName(), "_requires_" + i, declaration.getName());
  			preconditions[i] = new Expr.Invoke(null, name, null, arguments);
  		}
  		// Add all the preconditions as assupmtions
  		return AssumptionSet.ROOT.add(preconditions);
  	}
docs: Generate the initial assumption set for a function or method. This is
  essentially made up of the precondition(s) for that function or method.
  
  @param declaration
  @return