# subduction -- Performs subduction by the generators of a subring.

## Synopsis

• Usage:
result = subduction(subGens, f)
resultMat = subduction(subGens, M)
• Inputs:
• f, , an element of ring M.
• M, , a one-row matrix containing elements ring M.
• subGens, , a one-row matrix containing elements ring M.
• Outputs:
• result, , of ring M
• resultMat, , of elements of ring M

## Description

Performs subduction of the second argument by the elements of subGens. If the second argument is a one-row matrix, subduction is performed on each entry individually and the resulting one-row matrix is returned. If the second argument is a ring element f, subduction is performed on f and the result is returned. The generators of subR are not required to be a Sagbi basis.

 i1 : gndR = QQ[symbol t_1, symbol t_2, symbol t_3]; i2 : G = matrix {{t_1^4*t_2^4*t_3^4, (t_1^8)*t_2*t_3^8}} o2 = | t_1^4t_2^4t_3^4 t_1^8t_2t_3^8 | 1 2 o2 : Matrix gndR <--- gndR i3 : subduction(G, G_(0,0)) o3 = 0 o3 : gndR i4 : subduction(G, G_(0,0)*G_(0,1) + t_1) o4 = t 1 o4 : gndR i5 : subduction(G, t_1) o5 = t 1 o5 : gndR

## Ways to use subduction :

• "subduction(Matrix,Matrix)"
• "subduction(Matrix,RingElement)"

## For the programmer

The object subduction is .