code: private Expr generateQuantifierRanges(WyilFile.Expr.Quantifier expr, LocalEnvironment environment) {
  		Expr ranges = null;
  		Tuple<WyilFile.Decl.Variable> parameters = expr.getParameters();
  		for (int i = 0; i != parameters.size(); ++i) {
  			WyilFile.Decl.Variable var = parameters.get(i);
  			WyilFile.Expr.ArrayRange range = (WyilFile.Expr.ArrayRange) var.getInitialiser();
  			WyalFile.VariableDeclaration varDecl = environment.read(var);
  			Expr.VariableAccess varExpr = new Expr.VariableAccess(varDecl);
  			Expr startExpr = translateExpression(range.getFirstOperand(), null, environment);
  			Expr endExpr = translateExpression(range.getSecondOperand(), null, environment);
  			Expr lhs = new Expr.LessThanOrEqual(startExpr, varExpr);
  			Expr rhs = new Expr.LessThan(varExpr, endExpr);
  			ranges = and(ranges, and(lhs, rhs));
  		}
  		return ranges;
  	}
docs: Generate a logical conjunction which represents the given ranges of all
  quantified variables. That is a conjunction of the form
  <code>start <= var && var < end</code>.
  
  @return