20250421 Change default treatment of "hard" piecewise linear terms (those that cannot be handled just by adding some inequality constraints): if a bound on the variable in a piecewise-linear expression is affected by option pl_bigM and bit 1024 of $pl_linearize is "off" (the default), that bound on the variable is set to the value computed using $pl_bigM; if bit 1024 of $pl_linearize is "on", the bound is not changed (the presious behavior). This affects some solvers, particularly those naive about dealing with "unbounded" expressions. See the change log entry of 20040103 for more on $pl_bigM. Example: suppose file foo2d contains var x3 in [-30, 20]; var x4; x4def: x4 = <<0, 5;-2,0,1>> x3; maximize Obj: <<0;-1,1>> x4; then after "ampl -obfoo2d foo2d" has written foo2d.nl (the same file we could get by adding "write bfoo2d;" to the above AMPL input), and using (old) ASL solvers, >cplex foo2d CPLEX 20.1.0.0: optimal integer solution; objective 60 0 MIP simplex iterations 0 branch-and-bound nodes >gurobi foo2d Gurobi 11.0.0: optimal solution; objective 60 3 simplex iterations 3 branch-and-cut nodes plus 1 simplex iteration for intbasis >xpress foo2d XPRESS 9.1(34.01.03): Global search complete Best integer solution found 60 1 branch and bound node No basis. After "pl_linearize=1025 ampl -obfoo2d1 foo2d" has written foo2d1.nl (or we have added "option pl_linearize 1025; write bfoo2d1;" to foo2d), >cplex foo2d1 CPLEX 20.1.0.0: optimal integer solution; objective 60 8 MIP simplex iterations 3 branch-and-bound nodes >gurobi foo2d1 Gurobi 11.0.0: optimal solution; objective 60.00000000046566 3 simplex iterations 1 branch-and-cut nodes plus 1 simplex iteration for intbasis >xpress foo2d1 XPRESS 9.1(34.01.03): Unbounded problem with some integer variables 0 branch and bound nodes Interestingly, if we change foo2d to the more natural var x3 in [-30, 20]; var x4 = <<0, 5;-2,0,1>> x3; maximize Obj: <<0;-1,1>> x4; xpress solves the problem whether $pl_linearize is 1 (the default) or 1025.