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

In classic logic the statement could be either true or false. But the statement "a sea-battle will be fought tomorrow" is neither. You can't say that this statement is true or false in advance, it's a prediction, it has only a sort of probability of being true or false.

The interesting outcome of the rejection of the excluded middle is a constructive logic (and math), where the proof that "statement is false is false" doesn't mean that statement is true (hence only the evidence of truthfulness could be considered a proof).




One solution to this is modal logic, where you have the modifiers "necessary" (written "[]" or as a box) and "possible" (written "<>" or as a diamond). So instead of "a sea-battle will be fought tomorrow", which is neither true nor false, you can only express "it is necessary that a sea battle be fought tomorrow" (which is false, you cannot know the future) or "it is possible that a sea battle be fought tomorrow" (which is true, unless it is impossible, in which case it is false).


> In classic logic the statement could be either true or false. But the statement "a sea-battle will be fought tomorrow" is neither.

I'm not buying it. The statement "a sea-battle will be fought tomorrow" is either true or false. Either it will be fought or it won't. You just don't know which one. It won't "maybe be fought".

Similarly, you don't know whether "a sea-battle was fought 3000 * 365 days ago". You don't have enough information to evaluate the truthfulness of either statement, and can only say what confidence you have the sea battle was/will be fought on the given day.


>The statement "a sea-battle will be fought tomorrow" is either true or false.

How would you prove such a statement? You can give it as an axiom, but you have to admit it true or false in advance.

You can't have a statement in classic logic which is not an axiom and couldn't be proved true or false. This

> You just don't know which one.

means that your statement is neither true nor false in a given model. How would you even reason using such a statement?


Today, we make the statement "a sea-battle will be fought tomorrow". Two days from now, the equivalent statement is "a sea-battle was fought yesterday". That statement is either true or false. As far as I can see, this leaves two possible views.

First view: The statement today is true or false, just as it will be two days from now. But today we don't know whether it's true or false.

Second view: The statement today is neither true nor false, but it will become true or false tomorrow, and will therefore be either true or false two days from now.

Pick whichever view you like. The argument is going to come down to differences of (unstated) definition of what it means for a statement to be true.


> You can't have a statement in classic logic which is not an axiom and couldn't be proved true or false.

Hm? What of Gödel sentences though? Or, like, the continuum hypothesis?

I think I might be misunderstanding you.


Roughly speaking, the aim of logic is to develop a formal language precise enough to reason about & access truths about the world. The idea that "a sea-battle will be fought tomorrow" is either true or false is not useful to this aim.


It's actually quite simple. Just follow each case of it being either:

1. if true, then "the battle is not fought on tomorrow's date" which is a truth for all time

2. if false, then "the battle is fought on tomorrow's date" and statements depending on it being true are invalid.

The fault in the line of proposed reasoning is the assumption of (1) and not admitting the possibility of (2) as a premise.


Yeah, and not all past truths are known. You don't know the number of hairs on Aristotle's head, you don't know if the sea battle was going to be fought the day after tomorrow yesterday.




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

Search: