Macaulay2 » Documentation
Packages » PhylogeneticTrees :: secant
next | previous | forward | backward | up | index | toc

# secant -- compute the secant of an ideal

- Usage:
    `secant(I,n)`
- Inputs:
  - I, an ideal,
  - k, an integer, order of the secant
- Optional inputs:
  - DegreeLimit => ..., default value {}
- Outputs:
  - an ideal, the kth secant of I

## Description

This function computes the kth secant of I by constructing the abstract secant and then projecting with elimination.

Here the kth secant means the join of k copies of I. Setting k to 1 gives the dimension of the ideal, while 2 is the usual secant, and higher values correspond to higher order secants.

Setting the optional argument DegreeLimit to \{d\} will produce only the generators of the secant ideal up to degree d.

This method is general and will work for arbitrary polynomial ideals, not just phylogenetic ideals.

    i1 : R = QQ[a..d]

    o1 = R

    o1 : PolynomialRing

    i2 : I = ideal {a^2-b,a^3-c,a^4-d}

                 2       3       4
    o2 = ideal (a  - b, a  - c, a  - d)

    o2 : Ideal of R

    i3 : secant(I,2)

                 3             2      2            2    2                2     2
    o3 = ideal (b  - 2a*b*c + a d + 2c  - 2b*d, a*b  - a c - b*c + a*d, a b - b
         ------------------------------------------------------------------------
                       3
         - 2a*c + 2d, a  - 3a*b + 2c)

    o3 : Ideal of R

## See also

- joinIdeal -- compute the join of several ideals

## Ways to use secant:

- `secant(Ideal,ZZ)`

## For the programmer

The object secant is a method function with options.

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