I have a system of multivariate polynomial equations, say for 3 variables,
$$ f_1(x,y,z)=0 \ , \quad f_2(x,y,z)=0 \ , \quad f_3(x,y,z)=0 $$
I need to find the number to solutions to this problem. I am currently doing this by solving the system using computer algebra, and then counting the number of solutions. Whilst this does work, it seems very excessive to have to calculate the full solutions of a system just to count the number of solutions.
For example, for the univariate case $f(x)=0$, I can just instantly read off the highest degree of the polynomial, and I already know how many solutions I have.
Is there a generalisation of this for a higher number of variables?
From what I can gather there seem to be algorithms that can at least give an upper bound to the number of solutions, using Gröebner bases. Is this correct? However my knowledge in the field is very limited, and I haven't been able to understand how one could implement such an algorithm with say, $\texttt{Mathematica}$. An outline and explanation of the stages of such an algorithm would be very extremely helpful.
Thank you very much in advance!