#19595: Implement a check that a hyperplane arrangement is free
-------------------------------------+-------------------------------------
       Reporter:  tscrim             |        Owner:  tscrim
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-7.0
      Component:  geometry           |   Resolution:
       Keywords:  free, hyperplane   |    Merged in:
  arrangement                        |    Reviewers:
        Authors:  Travis Scrimshaw   |  Work issues:
Report Upstream:  N/A                |       Commit:
         Branch:                     |  b10a0c819f1b50869ba620be849bbd12d199c146
  public/hyperplanes/check_free-19595|     Stopgaps:
   Dependencies:                     |
-------------------------------------+-------------------------------------

Comment (by mmarco):

 I have just given a very quick look at the code, but it seems to me that
 you are actually computing a free resolution of the logarithmic derivation
 module. Or at least the first steps of it. Is that correct?

 If this is the case, maybe it would be worth doing so by using Singular,
 which already has this implemented.

 Something like

 {{{
 sage: R.<x,y,z,t> = QQ[]
 sage: f = x^3 + y^3 +z^3+ t^3
 sage: I = f.jacobian_ideal()
 sage: IS = I._singular_()
 sage: res = IS.mres(0)
 sage: res
 [1]:
    _[1]=t^2
    _[2]=z^2
    _[3]=y^2
    _[4]=x^2
 [2]:
    _[1]=z^2*gen(1)-t^2*gen(2)
    _[2]=y^2*gen(1)-t^2*gen(3)
    _[3]=y^2*gen(2)-z^2*gen(3)
    _[4]=x^2*gen(1)-t^2*gen(4)
    _[5]=x^2*gen(2)-z^2*gen(4)
    _[6]=x^2*gen(3)-y^2*gen(4)
 [3]:
    _[1]=y^2*gen(1)-z^2*gen(2)+t^2*gen(3)
    _[2]=x^2*gen(1)-z^2*gen(4)+t^2*gen(5)
    _[3]=x^2*gen(2)-y^2*gen(4)+t^2*gen(6)
    _[4]=x^2*gen(3)-y^2*gen(5)+z^2*gen(6)
 [4]:
    _[1]=x^2*gen(1)-y^2*gen(2)+z^2*gen(3)-t^2*gen(4)
 sage: len(res)
 4
 }}}

 should give you a minimal free resolution of the logarithmic derivation
 module of every homogenous polynomial f, so it would be free iff
 len(res)<=2 .

 For the  non homogenous case, one might need to work a little bit with the
 homogenization of the polynomial, but it can also be done.

 Could you please compare the timings of your code with the singular
 method?

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

Reply via email to