next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
DiffAlg :: logarithmicForm

logarithmicForm -- creates a logarithmic form

Synopsis

Description

A logarithmic form of type (d_0,...,d_n) is a differential 1-form w that can be written as w=(prod f_i)sum df_i/f_i, where f_i is a polynomial of degree d_i. This routine creates such a logarithmic form using homogeneous polynomials. When using a list L of length two, the differential form is called rational.


In this example we generate a random logarithmic form in affine 3-dimensional space with degrees (1,1,2).

i1 : random logarithmicForm(2,{1,1,2},"a")

           2          2      3       2                     2           2  
o1 = (- 30x x  + 20x x  + 10x  + 600x x  - 395x x x  - 220x x  - 100x x  +
           0 1      0 1      1       0 2       0 1 2       1 2       0 2  
     ------------------------------------------------------------------------
           2       3           3      2          2      2               
     405x x  - 100x )dx  + (30x  - 20x x  - 10x x  - 95x x  + 80x x x  +
         1 2       2   0       0      0 1      0 1      0 2      0 1 2  
     ------------------------------------------------------------------------
        2          2        2      3              3       2           2  
     30x x  + 10x x  - 60x x  + 15x )dx  + (- 600x  + 490x x  + 140x x  -
        1 2      0 2      1 2      2   1          0       0 1       0 1  
     ------------------------------------------------------------------------
        3       2                    2           2        2
     30x  + 100x x  - 415x x x  + 60x x  + 100x x  - 15x x )dx
        1       0 2       0 1 2      1 2       0 2      1 2   2

o1 : DiffAlgForm

In this example we generate a generic rational form in the projective plane of type (1,1).

i2 : logarithmicForm(2,{1,1},"a",Projective => true)

o2 = ((a0 a2 a1  - a1 a0 a2 )x  + (a0 a2 a1  - a1 a0 a2 )x )dx  + ((-
         1  0  1     0  1  1  1      1  0  2     0  1  2  2   0      
     ------------------------------------------------------------------------
     a0 a2 a1  + a1 a0 a2 )x  + (a0 a1 a2  - a0 a1 a2 )x )dx  + ((- a0 a2 a1 
       1  0  1     0  1  1  0      1  2  1     1  1  2  2   1         1  0  2
     ------------------------------------------------------------------------
     + a1 a0 a2 )x  + (- a0 a1 a2  + a0 a1 a2 )x )dx
         0  1  2  0        1  2  1     1  1  2  1   2

o2 : DiffAlgForm

In the following example, we produce a logarithmic form that descends to projective space.

i3 : l = random logarithmicForm(2,{1,1},"a",Projective => true)

o3 = (9x  - 11x )dx  + (- 9x  - 19x )dx  + (11x  + 19x )dx
        1      2   0        0      2   1       0      1   2

o3 : DiffAlgForm
i4 : (radial 2)_l

o4 = 0

o4 : DiffAlgForm

Ways to use logarithmicForm :