En la lógica modal, ¿cómo se determina si un operador es referencialmente opaco o transparente?

Hay dos perspectivas involucradas en la pregunta. La obvia tiene que ver con los conceptos ‘puros’ de opacidad y transparencia referenciales en la lógica formal y quizás en las matemáticas. La otra perspectiva, quizás menos evidente, se refiere al uso ‘aplicado’ de esos mismos conceptos, específicamente en la programación de computadoras.

Desde cualquier perspectiva, las respuestas no son simples. En este video de YouTube se proporciona una buena introducción a la opacidad y la transparencia referenciales en la lógica modal:

La opacidad y la transparencia referenciales en matemáticas y programación de computadoras se explican bastante bien en Transparencia referencial – Wikipedia, con información adicional sobre esos conceptos en filosofía y lingüística en contexto opaco – Wikipedia.

Más allá de esto, se pueden realizar más investigaciones e investigaciones en la literatura relevante. Un par de buenos textos son:

Opacidad referencial y lógica modal (estudios en filosofía), Dagfinn Follesdal y

Programación funcional en Java: cómo las técnicas funcionales mejoran sus programas Java, Pierre-Yves Saumont.

Cualquier libro de texto decente sobre lógica modal debería cubrir los conceptos ‘puros’ de opacidad y transparencia referenciales. Asimismo, cualquier libro de texto o manual decente sobre programación funcional debe cubrir los conceptos ‘aplicados’ en ese sentido práctico; por ejemplo, el tema está cubierto en el primer capítulo del libro de Saumont.