Ticket #4322 (closed minor enhancement: fixed)

Opened 7 years ago

Last modified 5 years ago

Modify Coopr expression hierarchy to throw an exception when a constraint involving a strict inequality is specified

Reported by: jwatson Owned by: unassigned
Priority: normal Milestone: Coopr 3.4
Component: pyomo.core Version:
Keywords: Cc:

Description

It was easy to cull strict inequality logic from many places in the Coopr code base. However, more careful consideration is required in the expression generation logic.

Change History

comment:1 Changed 7 years ago by jdsiiro

I believe that we still need to support the construction of strict inequality expressions, just not the use of them in Constraint objects. Mostly, this is for debugging reasons -- and the always sticky issue of handling "if model.ParamV < 5:". In addition, I could see the need for strict inequalities in a CP context.

comment:2 Changed 7 years ago by anonymous

Fair enough - if this is the case, then we're done! Good point regarding potential use in CP contexts.

Given this, should we close this ticket?

comment:3 Changed 6 years ago by jwatson

  • Milestone changed from Coopr 3.2 to Coopr 3.x

comment:4 Changed 5 years ago by gabeh

Referenced in changeset [7543]:

Pyomo base updates:

  • Replacing use of .name with .cname(True) where appropriate in error messages.
  • Constraint updates:
    • Raising an exception when Constraint encounters a strict inequality expression. This can be misleading when dealing with discrete models since these types of constraint expression were silently treated as non-strict inequality expressions. (fixes #4322, references #4342)
    • Fixing typo in error messages.
  • Fixing bug in Var pprint so that indexing set name is shown.

comment:5 Changed 5 years ago by gabeh

  • Status changed from new to closed
  • Resolution set to fixed

comment:6 Changed 5 years ago by wehart

  • Milestone changed from Coopr 3.x to Coopr 3.4
Note: See TracTickets for help on using tickets.