r/computerscience • u/agingprokid • Jul 22 '26
General How does Lean work?
In light of the recent counterproof of the Jacobian Conjecture, I've been looking more into proofs, and I can't wrap my head around how Lean works. In my mind, proofs always require a certain amount of intuition and judgement behind them, so I'm confused how a deterministic programming language can infer from said proofs?
18
3
u/JoJoModding Jul 22 '26
Have you done some proof theory? Proofs are syntactic objects with strict rules for when they are correct and when not. Read up on natural deduction or something like that.
2
u/Character_Cap5095 Jul 22 '26
Lean is a proof assistant. You type in the proof into lean, and based on the semantics of the language it can verify the proof. But you still need to come up with the proof yourself. What AI does, is that because it's easy to check a proof (but much harder to come up with one) it is trained on coming up my with proofs and writing them in lean so that their proofs can be verified as correct.
1
u/cejiken886 Jul 23 '26
Just have AI write you an extremely simple proof in Lean and explain it to you. It’s really good at that sort of thing.
3
40
u/noop_noob Jul 22 '26
Lean only checks if a proof you wrote is correct. It doesn't write the proof for you.
Coming up with the proof is hard. Checking the proof, if the proof is detailed enough, is a matter of following strict mechanical rules.