La respuesta de @ Babou a una pregunta reciente me recuerda que en un momento creo que leí un artículo sobre la equivalencia (en términos de los hechos que se pueden inferir o probar y la complejidad del tiempo de ejecutar el algoritmo de inferencia) del análisis de flujo de datos , interpretación abstracta e inferencia de tipos .
En algunos casos secundarios (como entre el análisis de flujo de datos interprocedural sensible al contexto directo y la interpretación abstracta), la equivalencia es relativamente obvia para mí, pero la pregunta parece más sutil para otras comparaciones. Por ejemplo, no puedo entender cómo se podría usar la inferencia de tipo Hindley-Milner para probar algunas de las propiedades que se pueden probar con el análisis de flujo de datos sensible al flujo.
¿Cuáles son las referencias fundamentales que discuten las equivalencias (o diferencias) entre el análisis del flujo de datos, la interpretación abstracta y la inferencia de tipos?