Macaulay2 » Documentation
Packages » WeierstrassSemigroups :: isSmoothingFamily
next | previous | forward | backward | up | index | toc

isSmoothingFamily -- Is the family a smoothing family?

Description

Given a irreducible parametric family over a (large) finite field, the functions picks a random point in the base and checks whether the corresponding fiber is a smooth.

i1 : L={6,8,9,11}

o1 = {6, 8, 9, 11}

o1 : List
i2 : genus L

o2 = 8
i3 : I=semigroupIdeal(L,"BaseField"=>ZZ/nextPrime 10^4);

               ZZ
o3 : Ideal of -----[x , x ..x , x ]
              10007  0   2   3   5
i4 : (answer,J,comp)=testBound(L,2,Verbose=>1);
i5 : (base1,family1)=getParameterFamily J;
i6 : family=family1%sub(base1,ring family1);

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  6
o6 : Matrix (QQ[x , x ..x , x , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a       , a      , a      , a      , a       , a      , a      , a      , a      , a       , a      , a      , a       , a       , a      , a      , a      , a      , a       , a      , a      , a      , a       , a       , a       , a      , a      , a       , a       , a      , a      , a      ])  <-- (QQ[x , x ..x , x , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a       , a      , a      , a      , a       , a      , a      , a      , a      , a       , a      , a      , a       , a       , a      , a      , a      , a      , a       , a      , a      , a      , a       , a       , a       , a      , a      , a       , a       , a      , a      , a      ])
                 0   2   3   5   {5, 0}   {4, 0}   {3, 0}   {5, 1}   {2, 0}   {5, 2}   {5, 3}   {4, 1}   {1, 0}   {5, 4}   {4, 2}   {3, 1}   {5, 5}   {3, 2}   {2, 1}   {5, 6}   {4, 4}   {3, 3}   {5, 7}   {4, 5}   {2, 2}   {1, 1}   {5, 8}   {3, 4}   {2, 3}   {0, 1}   {5, 9}   {4, 6}   {3, 5}   {1, 2}   {5, 10}   {4, 7}   {2, 4}   {0, 2}   {5, 11}   {4, 8}   {3, 6}   {2, 5}   {0, 3}   {5, 12}   {4, 9}   {3, 7}   {5, 13}   {4, 10}   {3, 8}   {2, 6}   {1, 5}   {0, 4}   {4, 11}   {3, 9}   {2, 7}   {0, 5}   {5, 15}   {4, 12}   {3, 10}   {2, 8}   {1, 6}   {4, 13}   {3, 11}   {2, 9}   {1, 7}   {0, 6}             0   2   3   5   {5, 0}   {4, 0}   {3, 0}   {5, 1}   {2, 0}   {5, 2}   {5, 3}   {4, 1}   {1, 0}   {5, 4}   {4, 2}   {3, 1}   {5, 5}   {3, 2}   {2, 1}   {5, 6}   {4, 4}   {3, 3}   {5, 7}   {4, 5}   {2, 2}   {1, 1}   {5, 8}   {3, 4}   {2, 3}   {0, 1}   {5, 9}   {4, 6}   {3, 5}   {1, 2}   {5, 10}   {4, 7}   {2, 4}   {0, 2}   {5, 11}   {4, 8}   {3, 6}   {2, 5}   {0, 3}   {5, 12}   {4, 9}   {3, 7}   {5, 13}   {4, 10}   {3, 8}   {2, 6}   {1, 5}   {0, 4}   {4, 11}   {3, 9}   {2, 7}   {0, 5}   {5, 15}   {4, 12}   {3, 10}   {2, 8}   {1, 6}   {4, 13}   {3, 11}   {2, 9}   {1, 7}   {0, 6}
i7 : base=(decompose base1)_2;

o7 : Ideal of QQ[a      , a      , a      , a      , a      , a      , a      , a      , a      , a      , a       , a      , a      , a      , a       , a      , a      , a      ]
                  {4, 1}   {4, 2}   {4, 4}   {4, 5}   {0, 1}   {4, 6}   {4, 7}   {4, 8}   {0, 3}   {4, 9}   {4, 10}   {1, 5}   {0, 4}   {0, 5}   {4, 12}   {1, 6}   {1, 7}   {0, 6}
i8 : kk=coefficientRing ring I;
i9 : SAFinite=kk[gens ring family,Degrees=>degrees ring family]

o9 = SAFinite

o9 : PolynomialRing
i10 : AF=kk[gens ring base,Degrees=>degrees ring base]

o10 = AF

o10 : PolynomialRing
i11 : baseF=sub(base,AF)


o11 = ideal (2a       + 2a      a       - 2a      a       + a      a
               {4, 4}     {4, 9} {0, 4}     {0, 3} {0, 5}    {0, 5} {4,

     a       + a      a       a      , a      a       + a      a        +
  12} {1, 6}    {0, 4} {4, 12} {1, 7}   {4, 7} {0, 4}    {0, 1} {4, 12}
                                                      2
  2a      a      a        + a       a      a       - a      a       +
    {0, 4} {0, 5} {4, 12}    {4, 10} {0, 4} {1, 7}    {0, 4} {1, 7}
   2
  a      a       - a      a       a      , a       - 2a      a       +
   {0, 4} {0, 6}    {0, 3} {4, 12} {0, 6}   {4, 2}     {4, 8} {0, 3}
    2                                                   2
  3a       + a      a       + a      a       + 2a      a       + a
    {0, 3}    {4, 6} {0, 4}    {0, 1} {0, 5}     {0, 4} {0, 5}    {4,
                                                 2       2
    a       a       - 3a      a       a       + a       a       - a
  8} {4, 12} {1, 6}     {0, 3} {4, 12} {1, 6}    {4, 12} {1, 6}    {0,
                                        2
    a      a      , 2a      a       + 2a      a       - a      a
  3} {0, 5} {0, 6}    {0, 1} {0, 4}     {0, 4} {0, 5}    {0, 3} {0,
    a       + a      a      a      )
  5} {1, 6}    {0, 3} {0, 4} {1, 7}

o11 : Ideal of AF
i12 : familyF=sub(family,SAFinite);

                     1             6
o12 : Matrix SAFinite  <-- SAFinite
i13 : isSmoothingFamily(L,I,familyF,baseF)

o13 = true

The intermediate output gives the codimension and number of generators of J3, the final system of equations to solve, and the timing for finding a point.

See also

Ways to use isSmoothingFamily:

  • isSmoothingFamily(List,Ideal,Matrix,Ideal)

For the programmer

The object isSmoothingFamily is a method function with options.


The source of this document is in WeierstrassSemigroups.m2:2839:0.