Macaulay2 » Documentation
Packages » QuillenSuslin :: isUnimodular
next | previous | forward | backward | up | index | toc

isUnimodular -- determines if a given matrix is unimodular

Synopsis

Description

An m \times \ n matrix over a polynomial ring is unimodular if its maximal minors generate the entire ring. If m \leq \ n then this property is equivalent to the matrix being right-invertible and if m \geq \ n then this property is equivalent to the matrix being left-invertible.
i1 : R = QQ[x,y,z]

o1 = R

o1 : PolynomialRing
i2 : A = matrix{{x^2*y+1,x+y-2,2*x*y}}

o2 = | x2y+1 x+y-2 2xy |

             1      3
o2 : Matrix R  <-- R
i3 : isUnimodular A

o3 = true
i4 : B = matrix{{x*y+x*z+y*z-1},{x^2+y^2}, {y^2+z^2}, {z^2}}

o4 = | xy+xz+yz-1 |
     | x2+y2      |
     | y2+z2      |
     | z2         |

             4      1
o4 : Matrix R  <-- R
i5 : isUnimodular B

o5 = true
i6 : I = ideal(x^2,x*y,z^2)

             2        2
o6 = ideal (x , x*y, z )

o6 : Ideal of R
i7 : isUnimodular presentation module I

o7 = false

See also

Ways to use isUnimodular :

For the programmer

The object isUnimodular is a method function.