I have a set of polynomials $f\_1, \dots, f\_m \in \mathbb{Z}[x\_1, \dots, x\_n]$ and I am interested in finding if these polynomials have a common root inside either $\mathbb{C}[x\_1, \dots, x\_n]$ or $\overline{\mathbb{F}\_p}[x\_1, \dots, x\_n]$ for some prime $p$. One way to do this is to calculate the Gröbner basis of the ideal $$I = (f\_1, \dots, f\_m) \subseteq \mathbb{Z}[x\_1, \dots, x\_n].$$ If this basis contains some integer $k > 1$, then we can deduce that the ideal is not trivial inside $\overline{\mathbb{F}\_p}[x\_1, \dots, x\_n]$ for any prime $p$ dividing $k$. If this basis contains a $1$, we find that $I$ is trivial in any characteristic, while if the basis does not contain an integer, we find that $I$ is non-trivial characteristic $0$. Since the computation of a Gröbner basis can be very difficult, I was wondering if there is another more direct way of computing this integer $k$ (whether or not it is $0$,$1$ or $>1$). Maybe there is another way altogether to determine whether or not a set of equations has a root in some characteristic. 


I am also very interested in software that is capable of doing such a computation. So far I've used Mathematica and Sage for Gröbner basis computations, but I am not sure if these packages are the most well suited for the job.



Finding a characteristic for which the zero-locus of an ideal is not empty
A nice algorithm (with very readable pseudocode) is given by Susan Margulies in her [thesis.](https://www.usna.edu/Users/math/margulies/papers/thesis.pdf) There are a number of published papers (joint with her advisor Jesus de Loera, not sure which one is the best published reference). She had implemented the algorithm (there are many experimental results in the thesis), so you might want to write to her and ask if you want an implementation, or be brave and implement the pseudocode.


