# recursiveMinors -- uses a recursive cofactor algorithm to compute the ideal of minors of a matrix

## Synopsis

• Usage:
I = recursiveMinors(n, M, Threads=>t, MinorsCache=>b)
• Inputs:
• n, an integer, the size of minors to compute
• M, ,
• t, an integer, an optional input, which describes the number of threads to uses
• b, , an optional input, which says whether to cache in input
• Optional inputs:
• MinorsCache => ..., default value true
• Threads => ..., default value 0
• Verbose => ..., default value false
• Outputs:
• I, an ideal, the ideal of minors of M

## Description

Given a matrix $M$, this computes the ideal of determinants of size $n \times n$ submatrices. The recursiveMinors function uses a recursive strategy, keeping track of the smaller minors computed so far, unlike the built-in Cofactor strategy for minors

 i1 : R = QQ[x,y]; i2 : M = random(R^{5,5,5,5,5,5}, R^7); 6 7 o2 : Matrix R <--- R i3 : time I2 = recursiveMinors(4, M, Threads=>0); -- used 1.48541 seconds o3 : Ideal of R i4 : time I1 = minors(4, M, Strategy=>Cofactor); -- used 4.70172 seconds o4 : Ideal of R i5 : I1 == I2 o5 = true