Automatización de pruebas con LLM para el demostrador de teoremas Lean, con sugerencias de tácticas, búsqueda de pruebas y selección de premisas.
AxiomMath/Stacks
Formalización en Lean 4 del Stacks Project, la referencia de código abierto sobre geometría algebraica, basada en Mathlib y con demostraciones verificadas por máquina.
- Estrellas
- 104
- Forks
- 23
- Issues abiertos
- 7
- Último commit
- hace 21 horas
¿Qué es?
Stacks es una formalización en Lean 4 del Stacks Project, la obra de referencia de código abierto sobre geometría algebraica. Está basada en Mathlib y busca formalizar todas las etiquetas del Stacks Project cuyo contenido pueda formalizarse. El kernel de Lean verifica cada demostración, y la biblioteca no contiene `sorry` ni `native_decide`.
La biblioteca se divide en dos niveles: StacksCore contiene formalizaciones revisadas por personas y adaptadas a las convenciones de nombres y estilo de Mathlib, mientras que StacksFrontier contiene formalizaciones escritas por agentes de IA que esperan revisión antes de pasar al núcleo. Cada declaración incluye un atributo `@[stacks TAG]`, y el comando `#stacks_tags` muestra todas las declaraciones etiquetadas. Las declaraciones también están vinculadas a elementos numerados de EGA y SGA, obras de Grothendieck.
Quienes contribuyen pueden elegir ejemplos, ejercicios y observaciones aún no formalizados mediante un tablero de tareas y un proceso de issues basado en un blueprint. Compilar la biblioteca completa requiere mucho tiempo y memoria, ya que contiene alrededor de 63 000 módulos.
Funciones clave
- 01Formaliza etiquetas del Stacks Project en Lean 4 sobre Mathlib.
- 02El kernel verifica cada demostración; no se usa `sorry` ni `native_decide`.
- 03Cada declaración lleva la etiqueta correspondiente del Stacks Project y puede listarse con `#stacks_tags`.
- 04Vincula las declaraciones con elementos numerados de EGA y SGA.
- 05Separa el código revisado por personas (StacksCore) del código escrito por IA que está pendiente de revisión (StacksFrontier).
Casos de uso
- Consultar la formalización en Lean de una etiqueta específica del Stacks Project.
- Estudiar demostraciones de geometría algebraica con dependencias verificadas por máquina.
- Contribuir formalizando los ejemplos o ejercicios que quedan pendientes.
- Reutilizar resultados verificados de geometría algebraica en otros proyectos de Lean basados en Mathlib.
Inicio rápido
- 1
Descargar los archivos precompilados de Mathlib
lake exe cache get - 2
Compilar la biblioteca (lleva mucho tiempo y consume mucha memoria)
lake build
Antes de usarlo
- La compilación completa es muy lenta y consume mucha memoria, ya que la biblioteca tiene unos 63.000 módulos.
- Se requiere Lean 4 con Mathlib; la caché precompilada para los módulos de Stacks solo está prevista, por ahora.
- El código de StacksFrontier está escrito por IA y sigue en revisión, por lo que quizá aún no cumpla los estándares de Mathlib.
- Stacks Project, el proyecto que formaliza, está bajo la licencia GFDL, distinta de la licencia Apache 2.0 del código.
Temas
Preguntas frecuentes
- ¿Qué es Stacks?
- Formalización en Lean 4 del Stacks Project, la referencia de código abierto sobre geometría algebraica, basada en Mathlib y con demostraciones verificadas por máquina. Stacks es una formalización en Lean 4 del Stacks Project, la obra de referencia de código abierto sobre geometría algebraica. Está basada en Mathlib y busca formalizar todas las etiquetas del Stacks Project cuyo contenido pueda formalizarse. El kernel de Lean verifica cada demostración, y la biblioteca no contiene `sorry` ni `native_decide`.
- ¿Stacks es gratuito? ¿Qué licencia tiene?
- Stacks es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿Stacks sigue mantenido?
- Mantenimiento activo. El último commit de Stacks fue el 6 nov 2026.
- ¿Para qué puedo usar Stacks?
- Consultar la formalización en Lean de una etiqueta específica del Stacks Project. Estudiar demostraciones de geometría algebraica con dependencias verificadas por máquina. Contribuir formalizando los ejemplos o ejercicios que quedan pendientes. Reutilizar resultados verificados de geometría algebraica en otros proyectos de Lean basados en Mathlib.
- ¿Cómo se instala Stacks?
- Descargar los archivos precompilados de Mathlib: lake exe cache get Compilar la biblioteca (lleva mucho tiempo y consume mucha memoria): lake build
- ¿Dónde consigo Stacks?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/AxiomMath/Stacks
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Primitivas de Ethereum verificadas formalmente y escritas en Lean, concebidas como una biblioteca compartida de especificaciones y demostraciones para proyectos Lean.
Un lenguaje de programación que usa leyes y pruebas para verificar código escrito por IA y compilarlo a código paralelo rápido para CPU y GPU.
Implementación en TypeScript del intérprete y model checker de TLA+, como reemplazo directo de TLC que se ejecuta en navegadores, Node y Bun.
Framework de Lean 4 para especificar, ejecutar y verificar formalmente redes neuronales, con tensores que comprueban las dimensiones y entrenamiento al estilo de PyTorch.
Framework para Lean 4 que permite demostrar con verificación mecánica la corrección y la seguridad de memoria del CIL de .NET compilado desde C#, F# y otros lenguajes .NET.