What's Today

Hacker News Front Page · Hillel Wayne ·

What TLA+ can and can't check

TLA+ es un lenguaje de especificación formal potente para verificar sistemas concurrentes, pero tiene limitaciones fundamentales en qué propiedades puede expresar. La herramienta es excelente para verificar invariantes (condiciones que siempre deben cumplirse) y propiedades de vivacidad (condiciones que eventualmente deben ocurrir), pero no puede expresar nativamente propiedades sobre múltiples pasos, propiedades de alcanzabilidad ("¿es algo posible?"), hiperpriedades (comparaciones entre múltiples comportamientos) ni propiedades sobre el espacio de estados como un todo. Si bien existen soluciones alternativas —como variables auxiliares o auto-composición—, son trucos incómodos que complican los modelos y no se componen bien con otras características de TLA+. Esta distinción entre lo que TLA+ puede conceptualmente verificar y lo que realmente puede expresar es importante: sin una forma formal de enunciar una propiedad, ninguna herramienta puede verificarla, y el entusiasmo en torno a los métodos formales que resuelven todos los problemas de verificación ignora estas limitaciones reales.

Let's chill just a little bit on the "TLA+ will save AI from itself" narrative

Leer la nota completa en buttondown.com →