Hola,
Sí, justo a esta situación he llegado yo también y es en la que considero que me he acercado más. No obstante, creo que a partir de aquí hacen falta tres carreras con las condiciones del enunciado para resolver, pero me mosquea que si en una carrera pudieras hacer competir a cuatro caballos y en otra a seis, se podría resolver en sólo dos carreras más. Haciendo competir en la siguiente carrera a \( a_4,\,b_3,\,c_2 \) y \( d_1 \) y en la última a los seis candidatos a segundo, tercero o cuarto puesto (acabe como acabe la penúltima carrera siempre salen seis).
No entiendo por qué solo hacen falta 9 carreras en total. Si no te he entendido mal:
- Haces una carrera con los candidatos a cuarto puesto: \( a_4,\,b_3,\,c_2 \) y \( d_1 \). Suponemos que gana \( c_2 \).
- Ahora tenemos 6 caballos: \( \left\{{a_2,\,a_3,\,b_1,\,b_2,\,c_1,\,c_2}\right\} \)
¿Cómo decides el segundo, tercer y cuarto puesto en solo 2 carreras más?
Me parece muy complicado demostrar que no existe una estrategia que te permita decidir qué caballos son los 4 más rápidos con sólo 8 carreras, tampoco parece fácil encontrar una estrategia concluyente que utilice 8 carreras. Sin embargo, creo que con tiempo se podría programar un código que arrojase la respuesta, ya que no parecen tantas combinaciones para un ordenador (si las máquinas de los 90 ganaron al ajedrez a Kasparov, yo creo que las actuales con esto pueden). 
Con 8 carreras creo que es imposible. Eso sí, este problema seguro que es programable y que un ordenador te puede dar la respuesta en muy poco tiempo.
Saludos.