Is applying a ring homomorphism faster than symbolic substitution?
I'm working on a project where I need to do composition of polynomials; something like
P(Q1 + Q2)
where P
, Q1
, and Q2
are univariate polynomials with several hundred terms, and large integer coefficients (on the order of 10^10 or so). I've been doing this with the .subs()
method which, I think, moves things to the symbolic ring and does the substitutions there. (I think this because when I get errors, they have to do with coercing to or from the symbolic ring.) But it occurred to me I could also define a ring homomorphism sending the variable of P
to Q1 + Q2
, and then apply the homomorphism to P
.
So my question: will this be worth my while, or are the ring homomorphism methods too slow?