#19365: Bug in lattice_polytope.positive_integer_relations
-------------------------+-------------------------------------------------
       Reporter:         |        Owner:
  tmonteil               |       Status:  needs_work
           Type:         |    Milestone:  sage-6.10
  defect                 |   Resolution:
       Priority:  major  |    Merged in:
      Component:         |    Reviewers:  Andrey Novoseltsev, Thierry
  geometry               |  Monteil
       Keywords:         |  Work issues:
        Authors:         |       Commit:
  Vincent Delecroix      |  651684a41026bee07a49be83b238b059e72693bc
Report Upstream:  N/A    |     Stopgaps:
         Branch:         |
  public/19365           |
   Dependencies:         |
-------------------------+-------------------------------------------------
Changes (by tmonteil):

 * status:  positive_review => needs_work
 * reviewer:  Andrey Novoseltsev => Andrey Novoseltsev, Thierry Monteil


Comment:

 The example provided in the doc is:

 {{{
       sage: points = [(1,1,-1,-1,-1), (-1,-1,1,1,-1), (1,-1,-1,-1,1),
       ....:           (-1,1,1,1,1), (1,-1,1,-1,-1)]
       sage: positive_integer_relations(points)
       [(1, 0, 0, 1, 0)]
 }}}

 Could you explain how `(1,1,-1,-1,-1) + (-1,1,1,1,1) == 0` ?

 The result should be `[(1, 1, 1, 1, 0)]`, see the ask question for the
 expected answer.

 Given a list of tuples, is it more natural to interpret it as a list of
 vectors, or as a list of rows of a matrix whose columns are vectors ? We
 might argue that the doc says that the points "are given as columns of a
 matrix". But when the doc writes `points = [(1,1,-1,-1,-1),
 (-1,-1,1,1,-1), (1,-1,-1,-1,1), (-1,1,1,1,1), (1,-1,1,-1,-1)]`, should the
 user consider this as a natural way to define the vectors `[(1, -1, 1, -1,
 1), (1, -1, -1, 1, -1), (-1, 1, -1, 1, 1), (-1, 1, -1, 1, -1), (-1, -1, 1,
 1, -1)]` ?

 It could be even worse if the user explicitely writes `points =
 [vector([1,1,-1,-1,-1]), vector([-1,-1,1,1,-1]), vector([1,-1,-1,-1,1]),
 vector([-1,1,1,1,1]), vector([1,-1,1,-1,-1])]` so that no ambiguity
 appears on her side, but the first line of the code `M = matrix(points)`,
 silently forgot all this information.

--
Ticket URL: <http://trac.sagemath.org/ticket/19365#comment:10>
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 http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to