Over at https://github.com/sagemath/sage/pull/37033 I am hitting the following question:
Is it possible to have a ring UndeterminedCoefficientRing(R) which, for every functorial construction F(R) has pushout F(UndeterminedCoefficientRing(R)). I am not sure whether the phrasing of the question is correct - it reflects my current understanding of the situation. For example, I'd like to have the following: sage: R.<a,b,c> = QQ[] sage: U = UndeterminedCoefficientRing(R) sage: M = MatrixSpace(R, 2) sage: m = M.matrix([[a, b], [0, c]]) sage: f = U.an_element(); f u_1*a sage: (f*m).parent() == MatrixSpace(U, 2) True sage: f*m [u_1*a^2 u_1*a*b] [0 u_1*a*c] # similarly: sage: s = SymmetricFunctions(R).s() sage: Q = PolynomialRing(s, ["x", "y"]) sage: Q.inject_variables() Defining x, y sage: m = x*s[2,1] + y*s[3] + y*s[1,1,1]; m (s[2, 1])*x + (s[1, 1, 1] + s[3])*y sage: f*x + m (u_1*a + s[2, 1])*x + (s[1, 1, 1] + s[3])*y I am guessing that, to make this work, `SymmetricFunctions` must become at least a functorial construction. Help is greatly appreciated, Martin PS: to give you an idea where this is heading, the following already works: sage: R.<z,q> = LazyPowerSeriesRing(QQ) sage: g = R.undefined() sage: R.define_implicitly([g], [g - (z*q + z*g*~(1-g))]) sage: g z*q + z^2*q + z^3*q + (z^4*q+z^3*q^2) + (z^5*q+3*z^4*q^2) + O(z,q)^7 but I want, that the following also works - and it doesn't, because of coercion issues: sage: R.<x,y,t> = LazyPowerSeriesRing(QQ) sage: M1 = R.undefined() sage: M2 = R.undefined() sage: eq1 = -t*(x - y)*M1(0, 0, t)*x + t*(x - 1)*(x + 1)*(y^2 + 1)*M1(0, y, t) + (t*x^2*y^2 + t*x*y + t*y^2 + t - x*y)*M1(x, y, t) + t*M2(0, 0, t)*x*y + x*y sage: eq2 = -t*M1(0, 0, t)*x + t*(x - 1)*(y + 1)*M1(0, y, t) + t*(x*y + y + 1)*M1(x, y, t) - t*M2(0, 0, t)*x + t*(x - 1)*(y^2 + y^2 + y + 1)*M2(0, y, t) + (t*x^2*y^2 + t*x*y^2 + t*x*y + t*y^2 + t*y^2 + t*y + t - x*y)*M2(x, y, t) sage: R.define_implicitly([M1, M2], [eq1, eq2]) sage: M1 -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/dff46cde-2d70-44f1-8b9d-5d4b0ea751bdn%40googlegroups.com.