internal static double dot(svm_node[] x, svm_node[] y)
{
double sum = 0;
int xlen = x.Length;
int ylen = y.Length;
int i = 0;
int j = 0;
while (i < xlen && j < ylen)
{
if (x[i].index == y[j].index)
sum += x[i++].value_Renamed*y[j++].value_Renamed;
else
{
if (x[i].index > y[j].index)
++j;
else
++i;
}
}
return sum;
}