이더리움의 가장 중요한 코드 중 상당 부분은 불변의 바이트코드입니다. 이는 검증되지 않은 컴파일러의 오래된 출력물이며 계약 코드로 실행되는 프로토콜 로직입니다. 우리는 이러한 바이트코드가 그것을 생성한 것을 신뢰하거나, 그것이 실행되는 머신을 단순화하거나, Lean 자체의 공리 외에 추가적인 공리를 사용하지 않고도 그 상태 그대로 검증될 수 있음을 보여줍니다.
Blanc은 Lean 4 검증 스택으로, 커널 검사 인증서를 통해 고정된 런타임 바이트를 읽고, Jaune이라는 EVM 및 블록 처리의 실행 가능한 의미론에 대해 모든 34,205개의 이더리움 fixture release v20.0.2 블록체인 테스트 케이스(2025년 5월 이후 메인넷에서 거버넌스를 수행한 포크만 포함)에 대한 정리를 상태로 만듭니다. 2017년부터 2026년까지 배포된 여덟 가지 아티팩트는 일곱 개의 컴파일러 버전과 하나의 어셈블러에서 비롯됩니다.
EIP-7002 계약의 경우, 우리는 이 블록 끝 호출이 그 저장소에 무엇을 담고 있든 성공하며(실패할 경우 블록이 무효화됨), 각 블록의 출금 요청이 정확히 가장 오래된 보류 중인 제출물임을 증명합니다. 메인넷은 프라하가 시작될 때 이 정리들의 초기 전제를 충족했습니다.
Uniswap V2 페어의 경우, 우리는 해시 슬롯들이 분리되어 유지되는 모든 유효한 기록 이후, 그 상태를 나타내는 모든 체크포인트로부터 저장소가 정확히 커밋된 호출들로 재실행된 모델을 나타내며, 균형 유동성 원장이 계속 균형을 유지하고, 토큰 답변에 대한 전제 하에 주당 기하 평균 준비금이 프로토콜 수수료를 통해서만 감소함을 증명합니다. 정확한 가스는 활성 상태(liveness)를 증명 가능하게 만듭니다: 코드가 없는 추적된 WETH9 보유자는 닫힌 형태의 가스를 가진 트랜잭션으로 출금할 수 있으며, 이는 30,000개 블록에서 이 모양을 가진 모든 3,748개의 비교 가능한 메인넷 영수증과 일치합니다.
2023년에 취약점이 악용된 잠금 버그가 있는 Curve 풀 바이트의 경우, Jaune은 배포 시점부터 이러한 재진입(reentrancy)을 실행합니다. 고정 컴파일러의 바이트에 대해서는, 우리는 그 잠금이 이를 제외한다고 증명합니다. AI 에이전트들은 기존 스택 위에 한 저자의 지휘 하에 15일 만에 이 증명들을 작성했습니다.