This method puts a chordal network into triangular form. A triangular chordal network can be effectively used to compute several properties of the underlying variety.
Example 3.1 of [CP'17]
i1 : R = QQ[x_0..x_3, MonomialOrder=>Lex]; |
i2 : I = ideal {x_0^3-x_0, x_0*x_2-x_2, x_1-x_2, x_2^2-x_2, x_2*x_3^2-x_3};
o2 : Ideal of R
|
i3 : N = chordalNet I; |
i4 : chordalTria N; |
i5 : N
2
o5 = ChordalNet{ x => {x - 1, x , x - 1} }
0 0 0 0
x => {x , x - 1}
1 1 1
x => {x , x - 1}
2 2 2
x => {x , x - 1}
3 3 3
o5 : ChordalNet
|
Example 1.3 of [CP'17]: ideal of adjacent minors of a 2xn matrix
i6 : I = adjacentMinorsIdeal(QQ,2,10); o6 : Ideal of QQ[a..t] |
i7 : N = chordalNet I; |
i8 : chordalTria N; |
i9 : N
o9 = ChordalNet{ a => { , a*d - b*c} }
b => { , b, }
c => {c, , , c*f - d*e}
d => {d, d, , }
e => { , , e*h - f*g, e, , e*h - f*g}
f => { , f, , f, , }
g => {g, , , g*j - h*i, , g*j - h*i}
h => {h, h, , , , }
i => { , , i*l - j*k, i, , i*l - j*k}
j => { , j, , j, , }
k => {k, , , k*n - l*m, , k*n - l*m}
l => {l, l, , , , }
m => { , , m*p - n*o, m, , m*p - n*o}
n => { , n, , n, , }
o => {o, , , o*r - p*q, , o*r - p*q}
p => {p, p, , , , }
q => { , , q*t - r*s, q, , q*t - r*s}
r => { , r, , r, , }
s => {s, , , }
t => {t, , }
o9 : ChordalNet
|
This function calls triangularize, which is only implemented in Macaulay2 for binomial ideals. For arbitrary ideals we need to interface to Maple.
The object chordalTria is a method function with options.