Lean 4
Jak działa
Użytkownik zapisuje definicje i twierdzenia w języku z typami zależnymi, w którym twierdzenie jest typem, a jego dowód — termem tego typu (korespondencja Curry'ego-Howarda). Dowody buduje się interaktywnie za pomocą taktyk (np. simp, grind, induction), które przekształcają cel dowodowy aż do jego zamknięcia. Elaborator rozwija notację, wnioskuje typy i rozwiązuje instancje klas typów, a następnie minimalne, zaufane jądro ponownie sprawdza wygenerowany term dowodowy. Lean 4 kompiluje program do kodu C, a jego higieniczny system makr pozwala rozszerzać składnię i automatyzację bezpośrednio w samym Lean.
Rozwiązany problem
Nieformalne dowody matematyczne i zwykły kod mogą zawierać ukryte błędy, których nie wykrywa recenzja ani testy. Lean pozwala zapisać twierdzenie lub własność programu w sposób formalny i maszynowo zweryfikować, że dowód jest kompletny i poprawny, redukując zaufanie do niewielkiego, sprawdzonego jądra.
Komponenty
Oficjalna
Implementacja
Lean 4 nie jest kompatybilny wstecz z Lean 3; kod i dowody z Lean 3 wymagają portowania (projekt mathport).
Weryfikacja zależy od poprawności jądra; w 2026 r. rzekomy dowód obalający hipotezę Collatza okazał się opierać na błędzie w Lean, który następnie naprawiono.
Ewolucja
Leonardo de Moura rozpoczyna projekt w Microsoft Research; wczesne wersje (Lean 1 i 2) były eksperymentalne.
Pierwsza umiarkowanie stabilna wersja (20 stycznia 2017), zaimplementowana głównie w C++; wokół niej rozwinęła się biblioteka mathlib.
Przepisanie asystenta zdolne generować kod C; higieniczny system makr i implementacja frontendu w samym Lean. Niekompatybilne wstecz z Lean 3.
Utworzenie nienastawionej na zysk Lean Focused Research Organization w celu poprawy skalowalności i użyteczności języka.
Google DeepMind tworzy AlphaProof, dowodzący twierdzeń matematycznych w Lean na poziomie srebrnego medalisty Międzynarodowej Olimpiady Matematycznej.
DeepSeek przedstawia DeepSeek-Prover-V2, model do dowodzenia twierdzeń w Lean 4 zbudowany na DeepSeek-V3.
Wymagania sprzętowe
Lean 4 kompiluje się do kodu C i działa wieloplatformowo (Linux, macOS, Windows) na procesorach x86-64 oraz AArch64; nie wymaga akceleratorów.