#20325: GenericBackend: Add default implementation of `add_variables` and
`add_linear_constraints`
-------------------------------------+-------------------------------------
       Reporter:  mkoeppe            |        Owner:
           Type:  defect             |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-7.2
      Component:  numerical          |   Resolution:
       Keywords:  lp                 |    Merged in:
        Authors:  Matthias Koeppe    |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  
u/mkoeppe/genericbackend__add_default_implementation_of__add_variables__and__add_linear_constraints_|
  40876eed69fae9ba7d2ac0440a2fd3b131eef85f
   Dependencies:  #20323             |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by mkoeppe):

 * type:  enhancement => defect


Old description:

> The backend methods `add_variables` and `add_linear_constraints` should
> have a default implementation in `GenericBackend`, like
> `add_linear_constraint_vector`.
>
> `add_variables` can be taken from Gurobi and also removed from CVXOPT and
> InteractiveLP.
> `add_linear_constraints` can be taken from COIN and also removed from
> CVXOPT and InteractiveLP.
> (The other backends have specific implementations of these methods; one
> supposes that they are faster, though this probably has not been tested.)
>
> Since the removal of the copy-pasted functions from the backends would
> remove doctests, I mark this ticket as dependent on #20323.

New description:

 The backend methods `add_variables` and `add_linear_constraints` should
 have a default implementation in `GenericBackend`, like
 `add_linear_constraint_vector`.

 `add_variables` can be taken from Gurobi and also removed from CVXOPT and
 InteractiveLP.
 `add_linear_constraints` can be taken from COIN and also removed from
 CVXOPT and InteractiveLP.
 (The other backends have specific implementations of these methods; one
 supposes that they are faster, though this probably has not been tested.)

 Since the removal of the copy-pasted functions from the backends would
 remove doctests, I mark this ticket as dependent on #20323.

 * * *

 The new tests revealed a bug in the PPL backend, which has been fixed.
 Also, the CPLEX backend used to add variables in reverse order for no good
 reason; changed that.

--

Comment:

 Needs review.

--
Ticket URL: <http://trac.sagemath.org/ticket/20325#comment:9>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to