6 comments

  • xvilka 13 minutes ago
    Lean is a great idea, especially the 4th version, a huge level up from the 3rd one, but its core still deficient[1] in some particular scenarious (see an interesting discussion[2] in the Rock (formerly Coq) issue tracker). Not sure if it might hinder the automation with the AI.

    [1] https://artagnon.com/logic/leancoq

    [2] https://github.com/rocq-prover/rocq/issues/10871

  • AxiomLab 43 minutes ago
    Theorem provers enforce an absolute epistemic rigor that stochastic AI generation completely lacks.

    When you ground a system in formalized logic rather than probabilistic weights, you don't just get better results; you get mathematical guarantees. Relying on continuous approximation is fine for chat, but building truly robust systems requires discrete, deterministic proofs. This is exactly the paradigm shift needed.

    • youoy 31 minutes ago
      This site is getting invaded by AI bots... how long before its just AI speaking with AI, and just people reading the conversations thinking that its actual people?
      • 5o1ecist 11 minutes ago
        There's no need for you to worry about it, MY FELLOW HUMAN [1], because you will never know.

        [1] https://old.reddit.com/r/totallynotrobots

        PS: Of course that's not true. An ID system for humans will inevitably become mandatory and, naturally, politicians will soon enough create a reason to use it for enforcing a planet wide totalitarian government watched over by Big Brother.

        Conspiracy-theory-nonsense? Maybe! I'll invite some billionaires to pizza and ask them what they think.

  • throwaway2027 1 hour ago
    I think I saw Terence Tao use a formal proof language but I don't remember if it was Lean. I'm not familiar with it but I do agree that moving to provable languages could improve AI but isn't the basis just having some immutable rigorous set of tests basically which could be replicated in "regular" programming languages?
    • iNic 57 minutes ago
      You can think of theorem provers as really crazy type checkers. It's not just a handful of tests that have to run, but more like a program that has to compile.
      • seanhunter 43 minutes ago
        Yes exactly. There is this thing called the “Curry-Howard Isomorphism” which (as I understand it) says that propositions in formal logic are isomorphic to types. So the “calculus of constructions” is a typed lambda calculus based on this that makes it possible for you to state some proposition as a type and if you can instantiate that type then what you have done is isomorphic to proving the proposition. Most proof assistants (and certainly Lean) are based on this.

        So although lean4 is a programming language that people can use to write “normal” programs, when you use it as a proof assistant this is what you are doing - stating propositions and then using a combination of a (very extensive) library of previous results, your own ingenuity using the builtins of the language and (in my experience anyway) a bunch of brute force to instantiate the type thus proving the proposition.

    • gaogao 51 minutes ago
      Yes, though often the easiest way to replicate it in regular programming languages is to translate that language to Lean or another ITM, though auto-active like Verus is used for Rust pretty successfully.

      Python and C though have enough nasal demons and undefined behavior that it's a huge pain to verify things about them, since some random other thread can drive by and modify memory in another thread.

    • seanhunter 1 hour ago
      It was lean4. In fact he has made lean4 versions of all of the proofs in his Analysis I textbook available here

      https://github.com/teorth/analysis

      He also has blogged about how he uses lean for his research.

      Edit to add: Looking at that repo, one thing I like (but others may find infuriating idk) is that where in the text he leaves certain proofs as exercises for the reader, in the repo he turns those into “sorry”s, so you can fork the repo and have a go at proving those things in lean yourself.

      If you have some proposition which you need to use as the basis of further work but you haven’t completed a formal proof of yet, in lean, you can just state the proposition with the proof being “sorry”. Lean will then proceed as though that proposition had been proved except that it will give you a warning saying that you have a sorry. For something to be proved in lean you have to have it done without any “sorry”s. https://lean-lang.org/doc/reference/latest/Tactic-Proofs/Tac...

  • zmgsabst 23 minutes ago
    The real value is in mixed mode:

    - Lean supports calling out as a tactic, allowing you to call LLMs or other AI as judges (ie, they return a judgment about a claim)

    - Lean can combine these judgments from external systems according to formal theories (ie, normal proof mechanics)

    - an LLM engaged in higher order reasoning can decompose its thinking into such logical steps of fuzzy blocks

    - this can be done recursively, eg, having a step that replaces LLM judgments with further logical formulations of fuzzy judgments from the LLM

    Something, something, sheaves.

  • nudpiedo 1 hour ago
    I like a lot of the idea behind such theorem provers, however, I always have issues with them producing compatible code with other languages.

    This happened to me with idris and many others, I took some time to learn the basics, wrote some examples and then FFI was a joke or code generators for JavaScript absolutely useless.

    So no way of leveraging an existing ecosystem.

    • seanhunter 57 minutes ago
      • nudpiedo 16 minutes ago
        Literally the first line of the link:

        “The current interface was designed for internal use in Lean and should be considered unstable. It will be refined and extended in the future.“

        My point is that in order to use these problem provers you really gotta be sure you need them, otherwise interaction with an external ecosystem might be a dep/compilation nightmare or bridge over tcp just to use libraries.

  • tesserato 3 days ago
    [flagged]
    • nudpiedo 1 hour ago
      Are you an AI just summarizing the article?
      • pja 1 hour ago
        If you look at their comment history it's quite clear that's what they are.

        What's the HN stance on AI bots? To me it just seems rude - this is a space for people to discuss topics that interest them & AI contributions just add noise.

        • seanhunter 56 minutes ago
          It is very rude as it just wastes everyone’s time and debases the commons. I’m pretty sure it’s also against the guidelines.