Hacker News new | ask | show | jobs
by JoshCole 1461 days ago
If error in abstraction is never right to teach as the OP claims, then you're saying that computation using numbers shouldn't be taught. It literally doesn't matter what computer programming language you use. Every single one of them has this fundamental problem, because Turing machines have this problem. They aren't defined for the reals. They are defined for the computable numbers. So you have an abstraction with error in it. You were taught it. Occasionally you are going to go on for years with this not biting you, but then it will and you'll have to adjust - maybe switching to arbitrary precision in a case where precision matters. Maybe switching to floating point when you realize that you have too much data to fit in storage.

You're claiming that if someone points out that abstractions with error - which are literally impossible to avoid - are useful despite the error, then they're just pretending to know things. But anyone complaining about abstractions having error as a basis for abstraction being wrong is fundamentally missing the point of abstraction.

We need abstraction. It isn't illogical to tolerate the error. It is suicide to not tolerate the error, because you won't terminate - which means you can't react. Haven't you ever wondered why people aren't purely rational? Why we think fast, not just slow, but also fast? These questions have answers. You can look at the foundations of learning in terms of graphs and see why it has to be so. I'm sorry it goes over your head, but it is fascinating regardless of whether or not others understand it. And I think it is worth sharing, because it is fundamental truth.

This is formally provable, but to put that another way - I don't care if you want to be wrong; good for you, saving yourself some time. Enjoy your day.