Macaulay2 » Documentation
Packages » Chordal :: reduceDimension
next | previous | forward | backward | up | index | toc

# reduceDimension -- removes arcs of a chordal network of small dimension

- Usage:
    `reduceDimension N`
- Inputs:
  - N, an instance of the type ChordalNet,
  - k, an integer,
- Outputs:
  - no output
- Consequences:
  - the input chordal network is modified

## Description

Reduces a chordal network, by prunning the arcs that do not belong to the top $k$ dimensional parts of the variety.

    i1 : R = QQ[a..j,MonomialOrder=>Lex];

    i2 : I = ideal {a*d - b*c, c*f - d*e, e*h - f*g, g*j - h*i, a*j - b*i};

    o2 : Ideal of R

    i3 : N = chordalNet I;

    i4 : chordalTria N;

    i5 : codimCount N

           7      6      5    4
    o5 = 2t  + 17t  + 14t  + t

    o5 : ZZ[t]

    i6 : reduceDimension(N,2);

    i7 : codimCount N

            5    4
    o7 = 14t  + t

    o7 : ZZ[t]

    i8 : reduceDimension(N,1);

    i9 : codimCount N

          4
    o9 = t

    o9 : ZZ[t]

The method topComponents(ChordalNet) is equivalent to reduceDimension(N,1).

## Caveat

An arc is removed only if all the chains through it have small dimension. If an arc belongs to a chain of large dimension and a chain of small dimension, then the arc will not be removed.

## See also

- codimCount -- codimension counts of the chains of a chordal network
- topComponents -- compute top dimensional component of an ideal or module

## For the programmer

The object reduceDimension is a function closure.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/Chordal/ChordalDoc.m2:1287:0.