How to train your program verifier

(risemsr.github.io)

23 points | by matt_d 4 days ago ago

3 comments

  • woodruffw 2 hours ago

    At a very quick look, no evidence is given that the "bugs" found in requests are in fact reachable, i.e. not prevented by construction. And sure enough, the very first one is impossible because of a validating guard[1]: `address_in_network` only gets called after `is_valid_cidr`, which enforces the presence of a slash.

    I think we should hold claims about effective static analysis and/or program verification to a higher standard than this.

    [1]: https://github.com/psf/requests/blob/4bd79e397304d46dfccd76f...

    • seanmcdirmid 8 minutes ago

      Most (all?) static analyzers are conservative, and reducing your false positive rate is always a struggle. You should never expect a false positive rate of zero (it’s probably impossible to not have false positives), but you shouldn’t be presenting your false positives as successes either.

  • saithound 28 minutes ago

    What if you asked your favorite AI agent to produce mathematics at the level of Vladimir Voevodsky, Fields Medal-winning, foundation-shaking work but directed toward something the legendary Nikolaj Bjørner (co-creator of Z3) could actually use?

    Well, you'd get this embarrassing mess, apparently.