#14789: Implement hyperplane arrangements
---------------------------------+-----------------------------
       Reporter:  kcrisman       |        Owner:  sage-combinat
           Type:  enhancement    |       Status:  needs_info
       Priority:  major          |    Milestone:  sage-5.12
      Component:  combinatorics  |   Resolution:
       Keywords:                 |    Merged in:
        Authors:                 |    Reviewers:
Report Upstream:  N/A            |  Work issues:
         Branch:                 |       Commit:
   Dependencies:                 |     Stopgaps:
---------------------------------+-----------------------------
Changes (by dimpase):

 * status:  needs_review => needs_info


Comment:

 This looks like a bug in `num_regions()`:
 (stumbled upon this example in  a large set of 2d arrangements)
 {{{
 sage: a=HyperplaneArrangement([[1, 106, 106266],[83, 101, 157866],[111,
 110, 186150], [453, 221, 532686], [407, 237, 516882],
  [55, 32, 75620], [221, 114, 289346], [452, 115, 474217], [406, 131,
 453521], [28, 9, 32446], [287, 19, 271774], [241, 35, 244022],
  [231, 1, 210984], [185, 17, 181508], [23, -8, 16609]])
 sage: a.num_regions()
 ---------------------------------------------------------------------------
 ValueError                                Traceback (most recent call
 last)
 <ipython-input-3-cf364604935f> in <module>()
 ----> 1 a.num_regions()

 /home/dima/sage/sage-5.12.beta4/local/lib/python2.7/site-
 packages/sage/geometry/hyperplane_arrangement.pyc in num_regions(self)
    2283         if self.base_field().characteristic() != 0:
    2284             raise TypeError('base field must have characteristic
 zero')
 -> 2285         return (-1)**self._dim*self.characteristic_polynomial(-1)
    2286
    2287     def num_hyperplanes(self):

 /home/dima/sage/sage-5.12.beta4/local/lib/python2.7/site-
 packages/sage/geometry/hyperplane_arrangement.pyc in
 characteristic_polynomial(self, a)
    2190             return self._characteristic_polynomial
    2191         else:
 -> 2192             return self._characteristic_polynomial.subs(x=a)
    2193
    2194     def poincare_polynomial(self, a=None):

 [...]

 /home/dima/sage/sage-5.12.beta4/local/lib/python2.7/site-
 packages/sage/geometry/hyperplane_arrangement.pyc in restriction(self, H)
    3003         for T in new_hyperplanes:
    3004             basis = T.linear_part().matrix()
 -> 3005             p = H._isomorphism_with_Kn(T.point())
    3006             if basis.nrows() == 0:
    3007                 eqn = [1] + list(p)

 /home/dima/sage/sage-5.12.beta4/local/lib/python2.7/site-
 packages/sage/geometry/hyperplane_arrangement.pyc in
 _isomorphism_with_Kn(self, v)
     813             q = q.apply_map(lambda x: QQ(round(RR(x),2)))
     814             u = q*G  # u is the approximately orthonormalized W
 --> 815             return u.solve_left(v-self.point())
     816         else: # finite field
     817             p = self.point()

 /home/dima/sage/sage-5.12.beta4/local/lib/python2.7/site-
 packages/sage/matrix/matrix2.so in sage.matrix.matrix2.Matrix.solve_left
 (sage/matrix/matrix2.c:4386)()

 /home/dima/sage/sage-5.12.beta4/local/lib/python2.7/site-
 packages/sage/matrix/matrix2.so in sage.matrix.matrix2.Matrix.solve_right
 (sage/matrix/matrix2.c:5242)()

 /home/dima/sage/sage-5.12.beta4/local/lib/python2.7/site-
 packages/sage/matrix/matrix2.so in
 sage.matrix.matrix2.Matrix._solve_right_general
 (sage/matrix/matrix2.c:6182)()

 ValueError: matrix equation has no solutions
 sage:

 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/14789#comment:33>
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/groups/opt_out.

Reply via email to