logoalt Hacker News

foxglacier12/09/20241 replyview on HN

Is "absurd" a term of art here, or you just mean it conflicts with common intuition? This sort of thing comes up a lot in programming languages. For example, is Null=Null true or false? What about Null!=Null? Maybe they can both be true or both false. It's strange because there's no simple obvious right answer but we need some answer and programming languages manage to define that sort of thing so it ends up logically consistent. Closer to this topic, how about a typed collection with no item in it? We expect the type system to enforce "all its items are green" but when it's empty, that constraint would become absurd and we can no longer pass an empty collection to a function that requires a collection of greens?

A simple program to test "all my hats are green" allows the empty set to be all green:

    AllGreen = True
    For each hat in MyHats:
      If hat <> green:
        AllGreen = False

Replies

scoofy12/09/2024

I'll add the exchange back here to continue this thread

-----

>>scoofy: I mean, it's important to remember that the axioms of first-order logic are arbitrary. We could easily argue that the truth value of an empty group is undecidable, and that would better correlate to natural language logic.

The fact that we compact these edge cases into arbitrary truth values is just for ease of computing.

This is also relevant to the arbitrary choice of the 'inclusive or' as a default over an 'exclusive or', which most people use in natural language.

---

>foxglacier: This addresses my previous reply to you, thanks. I wonder though if there's a problem in that common natural language is inherently limited to common concepts. Scientists famously use confusing language in their papers but they're writing for people who use the same language so it's OK. For example, they use "consistent with zero" to mean "might be zero" even though a common-language reader can interpret it as "not zero". I suppose logicians use "or" to mean inclusive or in their papers too.

-----

"Absurd" here I wouldn't say is a term of art. I just mean things that not only don't mean anything, but can't mean anything. Here, existence is always extremely relevant. This goes back to Kant's idea that existence can't/shouldn't be a predicate. The idea of talking about the actual color of a nonexistent hat is absurd in that a nonexistent hat can not have a color, period, because having a color presumes existence.

So, when I talk about the logic of natural language, we have to get really philosophical. I presume that there as at least significant equivalence from formal logic to natural language, if not ultimately being fully equivalent. Formal logic is effectively a model trying to capture logical reasoning, and there are some notable differences for simplicity's sake (the Frege-Russell ambiguity thesis is a common example: https://link.springer.com/chapter/10.1007/978-94-009-4780-1_... ), however, most-if-not-all of these formal logic ambiguity concerns are trivial for natural language to deal with as any ambiguity can be clarified by an interlocutor.

Where things get really weird, however, is as you go up to the axioms of logic, and try to justify them. The idea that foundations of logic itself is determined either inductively or instinctually is just bizarre. And mapping an inductive/instinctual logic to a formal system runs into a lot of philosophical problems that aren't really practical to worry about. It just gets weird and solipsistic, as it does when you get too caught up in philosophy.