#8977: Bug in QuadraticForm.rational_diagonal_form()
-------------------------------+--------------------------------------------
   Reporter:  gdrama           |       Owner:  justin                  
       Type:  defect           |      Status:  new                     
   Priority:  minor            |   Milestone:                          
  Component:  quadratic forms  |    Keywords:  rational_diagonal_form()
     Author:                   |    Upstream:  N/A                     
   Reviewer:                   |      Merged:                          
Work_issues:                   |  
-------------------------------+--------------------------------------------
 The function rational_diagonal_form() fails in some quadratic forms. For
 example:
 {{{
 sage: Q = QuadraticForm(ZZ,2,[0,1,-1])
 sage: Q
 Quadratic form in 2 variables over Integer Ring with coefficients:
 [ 0 1 ]
 [ * -1 ]


 sage: Q.rational_diagonal_form()
 ---------------------------------------------------------------------------
 ZeroDivisionError                         Traceback (most recent call
 last)

 /home/gustavo/<ipython console> in <module>()

 /home/gustavo/sage-4.3.3/local/lib/python2.6/site-
 packages/sage/quadratic_forms/quadratic_form__local_field_invariants.pyc
 in rational_diagonal_form(self, return_matrix)
     113         for j in range(i+1, n):
     114             if Q[i,j] != 0:
 --> 115                 temp[i,j] = -Q[i,j] / (Q[i,i] * 2)    ## This
 should only occur when Q[i,i] != 0, which the above step guarantees.
     116
     117         Q = Q(temp)

 /home/gustavo/sage-4.3.3/local/lib/python2.6/site-
 packages/sage/structure/element.so in
 sage.structure.element.RingElement.__div__
 (sage/structure/element.c:11882)()

 /home/gustavo/sage-4.3.3/local/lib/python2.6/site-
 packages/sage/rings/rational.so in sage.rings.rational.Rational._div_
 (sage/rings/rational.c:14641)()

 ZeroDivisionError: Rational division by zero
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8977>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to