Hacker News new | past | comments | ask | show | jobs | submit login

I'd say the major shortcoming of logic is its inability to express uncertainty.

It's well-suited for mathematical proof as practiced, where axioms and definitions are precisely defined, and there is no reliance on empirical observation with potentially noisy data.

However, most of real-life is not as clear-cut. Deriving the truth of a statement may depend on multiple potentially faulty pieces of evidence which must be taken into account together. For this, one needs to assign probabilities.

This is useful even when applied back to mathematics. In practice, mathematicians form conjectures "likely to be true" long before they are formally proven. Additionally, they must narrow the search space in their minds in order to try the most likely avenues of proof, a process we refer to as "creativity".

Even using probability is only one more step towards solving the question of formally codifying general reasoning. We must also consider factors such as use of language and forming concepts (what precisely IS a "chair", after all?), and further aspects which form a basis for human action and which cannot be logically derived, namely our morality and base goals. Not to mention the entire plethora of such questions with which the field of philosophy concerns itself.

(These are the types of questions to which we will need to find some answer if we are ever to construct a useful generally reasoning AI)

Much as classical Newtonian mechanics is a useful approximation of physics at large scales and low speeds, formal logic is a useful approximation of reasoning at high certainty and low flexibility of interpretation.




> I'd say the major shortcoming of logic is its inability to express uncertainty.

There are formal logics that incorporate uncertainty, non-crisp truth values, or both.


Indeed! I was speaking somewhat imprecisely - I was referring to logic in the sense of Bertrand Russel's work. I should rather say the major shortcoming of CLASSICAL logic is its inability to express uncertainty.

That being said, there are many flavours of non-classical logic and (paraconsistent, multivalued etc.) but their usage remains scarce outside of work in logic itself. Some intuitionistic, constructivist, and computational logics seem to be gaining popularity, especially in computer-related circles (computer-aided proof, numerical methods etc.)


Handling uncertainty is difficult regardless; attaching probabilities to judgements did not ensure the social sciences avoided the replication crisis.

I'm not sure what you mean by "low flexibility of interpretation": purely logical proofs are supposed to assume nothing about interpretation.


> Handling uncertainty is difficult regardless; attaching probabilities to judgements did not ensure the social sciences avoided the replication crisis.

Indeed! I'd say that using probabilities is necessary (or at least very useful), but not sufficient for handling uncertainty.

> I'm not sure what you mean by "low flexibility of interpretation": purely logical proofs are supposed to assume nothing about interpretation.

Yes. I found this part hard to phrase. What you are saying is correct.

I meant it in the sense that there are some assumptions made in logic which do not necessarily hold in normal reasoning. As a simple example, classical logic requires no contradictions whereas the average person may hold several contradictory beliefs without going insane (human compartmentalization is there for a reason, after all!). Paraconsistent logics aim to address this. Classical logic also does not take into account the passage of time.

But by "flexibility of interpretation" I meant something like in logic to derive the truth or falsehood of a statement P(X) about some element X, we can only use known facts about X (i.e., previous statements Q, R, S). We pin down a very specific definition which we can interpret any way we want, but we pick axioms Q, R, S to match our interpretation. This is what I meant by the "interpretation of X is inflexible" (poor phrasing). I mean that the properties / axioms are decided at the beginning and do not shift.

However, when we reason in every day life about e.g. chairs, you and I don't start by pinning down an exact definition of what a "chair" is - we assume some shared knowledge and then debate despite starting from different worldviews. During the debate, we might decide to start pinning down a definition of a chair for the purpose of the debate (is it "something that has been created with the explicit purpose of being sat on"? What is "created"? What if I come across a log that I use to sit on every day? What if I take a dining room chair and stick it to the roof so no-one can sit on it?). If you are convincing enough, the way I use the word "chair" in every day life might change. This is what I mean by the "interpretation of the word chair is flexible".

---

My own background is in mathematics and programming, with interest in mathematical logic. I'm afraid my philosophical background is rather lacking. I'm sure such concepts have been described in some depth by various philosophers, but I'm not sure which, or I would just reference the relevant concepts by their common name / link the relevant Wikipedia / Standford Encyclopedia of Philosophy articles.


> However, most of real-life is not as clear-cut. Deriving the truth of a statement may depend on multiple potentially faulty pieces of evidence which must be taken into account together. For this, one needs to assign probabilities.

This what the fuzzy people want you to believe. The logicians have a better answer. For this you need more context. E.g in programming you would add types, pre- and post conditions. And not this statement will be 85% true. As the current AI hype is pretending.


I'm all for using types, and pre- and post-conditions where applicable, but I don't see how they would be a useful replacement to the situations in which probabilities would apply. Could you elaborate?

To give an example where I think probabilities would be used: consider a recognition AI that should figure out who someone is. You have a phone, on which you have some photos of its owner, some voice recordings, and some text messages. For each of those, the AI can assign probabilities that e.g. my voice matches the recordings, my face matches the photos, and my writing style matches the texts. Then it could combine these into an aggregate estimate probability that the phone belongs to me.

How would you use types and pre- and post- conditions to solve this problem?


Some cases can be solved with probabilities, most not. These can be improved by better context.

The phone either belongs to you or not. Schrödingers cat is either dead or alive, but not 80% dead as some people assert.


Oh, okay... are you referring to fuzzy logic where statements have a partial truth value?

I'm (mostly) referring to the case where the truth value is either true or false, but where you aren't sure, so you can say "80% probability this is your phone".

There are also cases where truth values aren't as clear cut, which I also mention, such as the question of whether or not something IS a chair. (Is a chair taped to the ceiling still a chair? Is a log I sit on out in the middle of the forest a chair? Etc.)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: