Video yükleniyor...

Video Yüklenemedi

Ana Sayfaya Dön

✨Introducing ZKLean, formal verification for interconnected software✨ Frontier AIs keep finding critical bugs everywhere. Formal verification is the obvious cure, but what if your software has dependencies like npm packages or API endpoints? ZKLean is the solution👇

11,060 görüntüleme • 17 gün önce •via X (Twitter)

14 Yorum

zefram.eth profil fotoğrafı
zefram.eth17 gün önce

Today, formally verifying software that depends on external packages or API endpoints is impractical. Even if you used Lean to model an API you're using, the API's team could abruptly change its behavior and break your assumptions. Your proofs would break without notification.

zefram.eth profil fotoğrafı
zefram.eth17 gün önce

What if the API you're using is also formally verified, and they release their Lean proofs? Checking the Lean proofs on every release is expensive. They can easily be 10k-100k lines for production software.

zefram.eth profil fotoğrafı
zefram.eth17 gün önce

ZKLean uses succinct (356 bytes) zero-knowledge proofs that make verifying a formal spec take ~250ms. Instead of giving a proof of the spec, ZKLean proves that *some* proof exists for the spec. 1000x efficiency🫡

zefram.eth profil fotoğrafı
zefram.eth17 gün önce

This means you can: - Cheaply check formal specs released by your dependencies - Ensure your formal proofs don't break on every release - Cheaply prove to someone your software is formally verified Repo:

zefram.eth profil fotoğrafı
zefram.eth17 gün önce

I also made a library called HTTPV (HTTP-Verified) HTTPV lets your server serve ZKLean certificates for each API endpoint, and lets your clients verify those certificates cheaply. Drop-in replacement for Bun.serve() Repo:

Griff Green - griff.eth profil fotoğrafı
Griff Green - griff.eth17 gün önce

Are you considering trying to get funding from @thedaofund in the ETHSecurity Initiatives Round?

Alysson profil fotoğrafı
Alysson17 gün önce

If you build from scratch with bend 2 you don't need to rebuild to prove in lean

zefram.eth profil fotoğrafı
zefram.eth17 gün önce

Even bend apps could have dependencies tho

Gregor Mitscha-Baude profil fotoğrafı
Gregor Mitscha-Baude17 gün önce

can this also hide the definition of a computable function, that you prove some properties about, in zk?

zefram.eth profil fotoğrafı
zefram.eth17 gün önce

right now it's not using the hiding feature since it's utilizing the succinct verification of computation part, but I don't see why not

Mark Statkus profil fotoğrafı
Mark Statkus17 gün önce

Ken Thompson's "Reflections on Trusting Trust" from 1984, made literal. He showed that a compiler can insert a backdoor into the programs it builds, and into future copies of itself, with no trace in any source code. His conclusion was "you can't trust code that you did not totally create yourself." Then he pointed out that nobody creates the whole stack themselves.

Hebe | 🕊️🪑 profil fotoğrafı
Hebe | 🕊️🪑17 gün önce

interconnected software verification is the missing puzzle piece. stellar work

Kane profil fotoğrafı
Kane17 gün önce

this is next level innovation broo

lalalalalalala profil fotoğrafı
lalalalalalala17 gün önce

HTTPV's trust model says the certificate covers the Lean model; clients still trust the live handler to match it. I'd expose that boundary in the API result, so 'verified' isn't read as proof of this particular response.

Benzer Videolar

There’s a popular theory that AI will finally make formal verification mainstream because mathematical proof of correctness will be needed when machines write most or all of the code. But will this happen? Hillel Wayne is one of the best people to answer. Timestamps: 00:00 Intro 04:32 The Crossover Project 11:37 What software engineering does better 15:30 What traditional engineering does better 18:17 Formal methods 29:32 TLA+: what it is and demo 36:58 TLA+ at Amazon 38:10 Ways distributed systems break 41:03 Formal methods and systems thinking 46:20 The value of learning math 50:23 What TLA+ is good for and isn’t 52:50 Alloy: a declarative language for software modeling 58:53 Other formal methods tools 1:01:24 Property-based testing 1:05:31 AI and the need for formal verification 1:12:29 Logic for programmers 1:14:35 Hillel’s 2025 prediction on AI’s impact 1:21:30 Book recommendation Brought to you by: • Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages. • turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable. • WorkOS – everything you need to make your app enterprise ready. Two things I found especially interesting, talking with Hillel: 1. Amazon used TLA+ to find a bug almost impossible to locate without formal methods. In the paper How AWS uses formal methods, the AWS team shared that they’d found a complicated bug for which the shortest error trace to exhibit was 35 steps (!!). The bug passed unnoticed through extensive design review, code reviews, and testing. AWS concluded they wouldn’t have uncovered it if they’d stuck to conventional testing approaches. 2. Why not use formal verification for everything, then? It’s because specs in the real world are a nightmare to write. Even a simple problem like “find the file in a directory that has the most lines” gets complicated when modeled with formal methods. We would have to answer questions like: ‘do we look at ASCII or UTF-8 new line characters, what about unreadable files, and Symlinks?’ Without formal methods, we can write a simple verification that is right in 99%+ of cases. Formal methods require a lot of extra effort for the less than 1% of exotic use cases!

Gergely Orosz

35,008 görüntüleme • 3 ay önce

How do you actually formally verify the code underpinning Ethereum's future? In this episode (the finale of the lean Ethereum miniseries), Nico sits down with Alex Hicks (Alexander Hicks), lead of Protocol Snarkification at the Ethereum Foundation, to break down formal verification from first principles. They cover: – What formal verification actually is and the trust boundaries between proof assistants, SMT solvers, and kernels – The full verification stack for RISC-V ZKVMs: from SAIL specs to constraint extraction to soundness proofs – Why writing constraints directly in Lean makes proofs 10–100x more ergonomic – How AI is now proving hard theorems in hours for $200 — and what that unlocks for the whole pipeline They also explore the boundaries problem, why specs can have bugs too, and the end goal of a full Lean stack that bypasses Rust and LLVM entirely. Listen to the full episode ------------------------------------------------------------ TIMECODES: 09:16 – What is formal verification? Proof assistants vs SMT solvers 18:33 – Formal verification of code: specs, semantics, and trust boundaries 29:30 – Formally verifying the Lean Ethereum stack: RISC-V ZKVMs in focus 33:02 – Extracting ZKVM constraints into Lean and proving soundness 36:35 – Writing constraints directly in Lean: 10–100x better proof ergonomics 44:02 – Proving Polishchuk–Spielman in 8 hours for $200 with AI 51:01 – The end goal: a full Lean stack bypassing Rust and LLVM

Zero Knowledge Podcast

15,293 görüntüleme • 7 ay önce

Xavier Leroy (creator of OCaml) is an expert in compilers, formal verification of software and functional programming. This interview should be an approachable resource if you're curious about formal verification of software since I was learning that on the fly during it. In this episode: • OCaml compared with Rust and JavaScript • What is formal verification and how does it work • How languages call each other across boundaries • How to address "almost-correct" LLM code • How type inference works in programming languages Where to watch: • YouTube - • Spotify - • Apple Podcasts - • Transcript - Thank you to the sponsor of this episode for supporting my work: • WorkOS: makes your app Enterprise Ready with easy to use APIs to add SSO, SCIM, RBAC, and more in just a few lines of code, check them out at Chapters: 00:00 - Intro 00:43 - What sets OCaml apart 04:39 - OCaml vs Rust 07:57 - Why is manual memory management more performant 11:21 - Javascript vs OCaml 14:00 - Famous Rob Pike quote 16:05 - Type inference and how it works 22:12 - What is formal verification and how does it work 40:07 - What made multicore support difficult for OCaml 50:17 - How programming languages interface and call each other 57:41 - The danger of almost-correct LLM code 01:05:39 - How LLMs will change programming languages 01:10:26 - Industry vs academia 01:15:05 - Most interesting unsolved problems 01:18:30 - Top book recommendations for engineers 01:21:17 - Advice for his younger self 01:23:31 - Outro

Ryan Peterman

24,256 görüntüleme • 3 ay önce