Lambda MicroEgg: herramienta de egrafos con patrones de Miller

Fuentes: Lambda MicroEgg: egraph tool with Miller pattern support

Lambda MicroEgg es una herramienta de software que implementa un egrafos (egraph) con soporte para unificadores conscientes del alfa, permitiendo la manipulación de términos de orden superior en un entorno de interfaz basado en expresiones s. Desarrollada por Philip Zucker, esta herramienta se basa en la arquitectura de microegg de Max Willsey, añadiendo funcionalidades específicas como unificadores integrados, patrones de Miller de orden superior y sustitución de captura evitadora en los lados derechos de las reglas.

El sistema permite definir reglas de reescritura utilizando notación de Miller, donde las variables meta pueden contener variables atadas específicas, lo que facilita la unificación de orden superior de manera decidible. La herramienta incluye constructores para la aplicación de orden superior que curban automáticamente términos, reduciendo la carga de escritura en comparación con la notación de primer orden tradicional. Además, soporta la sustitución beta en términos lambda mediante reglas de reescritura específicas.

En términos de rendimiento, las pruebas de saturación AC-10 muestran tiempos de ejecución competitivos con otros verificadores de superposición, como e-prover y zipperposition. El uso de anotaciones de elevación almacenadas en bits de identificadores u32 minimiza la sobrecarga de memoria. Esta herramienta es útil para investigadores y desarrolladores que trabajan con demostraciones formales, unificación de orden superior y optimización de código, ofreciendo un entorno interactivo para explorar patrones de unificación complejos.