# How to construct a subring of a polynomial ring in Magma

This is a question about the computer algebra system Magma. I have been looking for a place to ask this type of question on the SE network and scicomp.SE was suggested to me; hopefully it finds a home here.

Suppose one has constructed a polynomial algebra $A$ over a ring $R$ in Magma. How does one construct the sub-$R$-algebra of $A$ generated by a given list of elements of $A$?

This seems to me to be a very basic operation so I can't believe there isn't a way to do it, but I haven't so far found it in the handbook. (I see functionality to construct subalgebras of matrix algebras and of endomorphism rings of abelian varieties, but not polynomial rings.)

EDIT 11/3/15:

1) As the functionality of Magma may vary with the ring $R$, take $R=\mathbb{Z}$.

2) hardmath suggests in comments to construct the desired subring as the quotient of another polynomial ring. I take him to mean as the image of a map from another polynomial ring. I tried to implement this in a test case as follows:

A := PolynomialRing(IntegerRing(), 3);
s1 := ElementarySymmetricPolynomial(A,1);
s2 := ElementarySymmetricPolynomial(A,2);
s3 := ElementarySymmetricPolynomial(A,3);
B := PolynomialRing(IntegerRing(),3);
f := hom< B ->A | s1,s2,s3>;
S := Image(f);


I get a Runtime error: No constructor provided for this type of object message when Magma tries to implement Image(f).

• In principle one could construct a subring of a polynomial ring as the quotient ring of an evaluation homomorphism on a "bigger" polynomial ring. Whether this is computationally attractive might depend on just what you want to do with the subring once you have it. Dec 2 '15 at 16:07
• @hardmath - I'll try that. (I.e. construct $f:R[T_1,\dots,T_m]\rightarrow A$ by mapping the $T$'s to my desired algebra generators, and then take Image($f$).) Do you know if Magma can intersect ideals of $A$ with Image($f$)? Dec 3 '15 at 0:44
• I have some other ideas, but I thought you should propose a particular ring as the base for polynomials so we can compare approaches. Eg. polynomials over the integers, a field, or something more exotic. Dec 3 '15 at 1:07
• @benblumsmith: Could you move your aside question to a question on SciComp meta? Dec 3 '15 at 6:23
• @GeoffOxberry - done! meta.scicomp.stackexchange.com/questions/457/… Dec 3 '15 at 15:23