Esta pregunta puede no ser técnica. Como hablante no nativo y TA para la clase de algoritmo, siempre me pregunté qué significa gadget en 'gadget de cláusula' o 'gadget variable'. El diccionario dice que un gadget es una máquina o un dispositivo, pero no estoy seguro de qué significado coloquial tiene en el contexto de la prueba completa de NP.
cc.complexity-theory
np-hardness
terminology
reductions
Federico Magallanez
fuente
fuente
Respuestas:
Un "gadget" es un pequeño dispositivo especializado para alguna tarea en particular. En las pruebas de dureza NP, cuando se hace una reducción del problema A al problema B, el término coloquial "gadget" se refiere a casos pequeños (parciales) del problema B que se utilizan para "simular" ciertos objetos en el problema A. Por ejemplo, cuando reduciendo 3SAT a 3-COLORING, los gadgets de cláusula son pequeños gráficos que se utilizan para representar las cláusulas de la fórmula original y los gadgets variables son pequeños gráficos que se utilizan para representar las variables de la fórmula original. Para garantizar que la reducción sea correcta, los gadgets deben ser gráficos que pueden tener 3 colores de formas muy específicas. Por lo tanto, pensamos en estos pequeños gráficos como dispositivos que realizan una tarea especializada.
En muchos casos, la principal dificultad para probar la dureza NP es construir dispositivos apropiados. A veces, estos dispositivos son complicados y moderadamente grandes. El proceso creativo de crear tales gadgets a veces se denomina "gadgeteering".
fuente
Aquí aparece una definición formal de Gadgets para reducciones de optimización de NP:
L. Trevisan, GB Sorkin, M. Sudán, DP Williamson. Gadgets, aproximación y programación lineal . SIAM J. on Computing, 29 (6): 2074-2097, 2000
fuente