# buildEMonomialMap -- builds an equivariant ring map

## Synopsis

• Usage:
m = buildEMonomialMap
• Inputs:
• R, a ring, the target ring with symmetric action, produced by buildERing
• S, a ring, the source ring with symmetric action, produced by buildERing
• L, a list, a list of monomials in R, the images of each of the variable orbit generators of S
• Outputs:
• m, , an equivariant monomial map to R from S

## Description

R and S must be rings created by buildERing. Each orbit of variables in S consists of variables of the form x_{(i_1,...,i_k)} for some width k. L is a list that for each such orbit gives the desired image of x_{(0,...,k-1)}. The rest of the map is extrapolated from these value.

 i1 : R = buildERing({symbol x, symbol y}, {1,1}, QQ, 3); i2 : vars R o2 = | x_2 x_1 x_0 y_2 y_1 y_0 | 1 6 o2 : Matrix R <--- R i3 : n = buildEMonomialMap(R,R,{x_0,x_0^3}) 3 3 3 o3 = map (R, R, {x , x , x , x , x , x }) 2 1 0 2 1 0 o3 : RingMap R <--- R i4 : n(x_1^3*y_0) 3 3 o4 = x x 1 0 o4 : R
 i5 : S = buildERing({symbol z}, {2}, QQ, 3); i6 : vars S o6 = | z_(2,2) z_(2,1) z_(2,0) z_(1,2) z_(1,1) z_(1,0) z_(0,2) z_(0,1) ------------------------------------------------------------------------ z_(0,0) | 1 9 o6 : Matrix S <--- S i7 : m = buildEMonomialMap(R,S,{x_0^2*y_1}) 2 2 2 2 2 2 2 2 2 o7 = map (R, S, {x y , x y , x y , x y , x y , x y , x y , x y , x y }) 2 2 2 1 2 0 1 2 1 1 1 0 0 2 0 1 0 0 o7 : RingMap R <--- S i8 : m(z_(1,2)) 2 o8 = x y 1 2 o8 : R

## Caveat

If a given variable orbit of S has k indices, then the target monomial list in L should only use indices between 0 and k-1.