Supongamos que tenemos un grafo conexo finito (no dirigido) $ G $ sin bucles (bordes propios). Hay un gato en uno de los vértices de este grafo, pero no sabemos cuál.
Jugamos a lo siguiente: en cada turno, podemos comprobar uno de los vértices para ver si el gato está allí o no. Si el gato está, ganamos. Si no está, el gato recibe un movimiento en el que puede desplazarse a cualquier vecino del vértice en el que se encuentra, y debe usar este movimiento. Esto es importante: el gato no puede sentarse en su posición actual, tiene que moverse de ella cuando llegue su turno. Entonces pasamos al siguiente turno en el que hacemos un movimiento y el gato hace un movimiento, luego al siguiente turno, etc. hasta que atrapemos al gato o fracasemos en el intento para siempre.
Para qué grafos finitos $ G $ ¿tenemos una estrategia que garantice la victoria?
Algunas observaciones preliminares: lo que estamos haciendo es definir un dirigido estructura de grafos en el conjunto de potencias $ \mathbb P(V) $ de los vértices $ V $ de $ G $ y preguntando si podemos llegar al conjunto vacío desde el conjunto $ V $ . Para grafos pequeños es posible buscar exhaustivamente en este grafo dirigido utilizando la búsqueda en profundidad primero y determinar si existe una solución o no.
Además, esta imagen también deja claro que $ G $ debe ser en realidad un árbol si tenemos una estrategia que garantice atrapar al gato. Esto se debe a que si hay un ciclo en $ G $ que inicialmente está incluido en un conjunto, entonces después de hacer nuestra observación podemos excluir como máximo un vértice de este ciclo, y como cada vértice del ciclo tiene al menos dos vecinos cuando el gato hace su movimiento seguirá siendo posible que esté en cualquier parte del ciclo.
He aquí algunos casos sencillos: siempre tenemos una estrategia ganadora para el gráficos de trayectorias $ P_n $ . Si los vértices son $ 1 $ a través de $ n $ entonces simplemente observamos $ 2, 3, \ldots, n-1, n-1, n-2, \ldots, 3, 2 $ en orden y tenemos garantizado atrapar al gato haga lo que haga. Si no ves cómo funciona esto, vale la pena trabajarlo explícitamente.
He aquí un árbol para el que no tenemos ninguna estrategia que gane siempre:
No tengo una prueba de este hecho; se verifica mediante la búsqueda en profundidad, como he mencionado antes (aunque una prueba para este caso concreto no debería ser difícil de encontrar). Sin embargo, algunos primos cercanos de este árbol tienen estrategias ganadoras, como ésta:
La solución óptima (en el sentido de minimizar el número de movimientos en el peor de los casos) para este gráfico requiere como máximo catorce movimientos para atrapar al gato. Puedes probar a ver si la encuentras.
Como ya he dicho, estoy interesado en cualquier resultado no trivial sobre árboles de este tipo, así que aunque no tengas una clasificación completa puedes publicar cualquier resultado parcial que seas capaz de demostrar.
Nota: Si alguien tiene confusiones sobre el problema, este cuaderno Colab contiene una implementación de un verificador para saber si existe o no una estrategia siempre ganadora para cualquier grafo dado.