🧵 View Thread
🧵 Thread (9 tweets)

philosophical extrapolations of some incompleteness stuff https://t.co/v7GgNHKsVN

logic is about tautologies, things that are true no matter how you fill in the details (A and A -> B) -> B is true no matter how you fill in the truth values for A and B abstract a bit: "as long as your implementation matches this interface, we guarantee XYZ"

an interface is like a filter over reality. i'm gonna ignore a lot of your structure and complexity, smash you through the interface, so that I can get some limited guarantees about what you'll be like this works fine if you only care about things on the level of the interface

there's a whole class of logics/interfaces that have really awesome guarantees about what they can prove "if I prove something, it will be true of everything that passes my filter" "if something is true of everything that passes my filter, i can prove it" dope as fuck!

here's the thing though, with these logics, you can never specify exactly which implementation you're talking about. unless you're filter only admits boring lame impl, there are going to be infinities of impls that pass your filter

gödel's first incompleteness theorem says something like "hey, I know you made this interface to talk about only N, but I can use your interface to make statements that are true in N, but not true in other models. so your interface can't prove all true things about N" (N = nats)

if an interface has the dope property that you can prove all sorts of shit about it, it will NEVER be expressive enough to talk about just one thing and if you use a logic strong enough to talk about just one thing, you know longer can prove everything you want