Suppose I am given two smooth projective curves $C_1$ and $C_2$ over a field $k$ I want to know if there is an algorithm to decide whether there exists a nonconstant (and thus dominant) map $f : C_1 \to C_2$.
To make this question more precise, suppose I am given an affine plane models $f_1(x, y) = 0$ and $f_2(x, y) = 0$ for some polynomials $f_1, f_2 \in k[x,y]$ birationally equivalent to the curves $C_1$ and $C_2$. Then is there an algorithm to determine when there exists a nonconstant map $f : C_1 \to C_2$ defined over $k$? Of course, it suffices to find a nonconstant rational map between these affine models so we may reduce the problem to asking if there exist two nonconstant polynomials $a(x,y), b(x,y) \in k[x,y]$ such that $f_2(a(x,y), b(x,y)) \in f_1(x,y) \cdot k[x,y]$.
From Riemann-Hurwitz we can easily bound the degree of a possible morphism $f : C_1 \to C_2$ so it suffices to find an algorithm to compute if there exist morphisms $f : C_1 \to C_2$ of a fixed degree $n$.
I am particularly interested in the case for morphisms of degree $2$ and $3$ and $k = \overline{\mathbb{F}_p}$ for my own applications. However, I am interested also in the general case out of curiosity if this problem is decidable.
Thank you in advance for any suggestions. If there is an (efficient) algorithm known I would be very appreciative if somebody could point me to it in the literature or to an implementation if one exists.