We often have 2 propositions that have the same truth table, in that they are true and false given the same conditions.
Nevertheless, we still feel as though there different semantics (i.e meaning..), lurking in the background.
Example : the law of non-contradiction: ~(P ∧ ~P), and the proposition if P then P, (P → P) have the same truth table:
╔═══╦═══════════╦═════════╗ ║ P ║ ~(P · ~P) ║ (P → P) ║ ╠═══╬═══════════╬═════════╣ ║ F ║ T ║ T ║ ╠═══╬═══════════╬═════════╣ ║ T ║ T ║ T ║ ╚═══╩═══════════╩═════════╝
But when translated into English, we can see that a semantic layer emerges, which is not contained in the logical form. Mainly, these two propositions seem to have a different meaning:
Law of non-contradiction: It is not the case that a cat is white and not-white.
If P then P: If a cat is white then it is white.
The second proposition, does not say anything about white being not-not-white as the first proposition implies.
The law of non-contradiction seems to determine what not- stands for, in that nothing can be and not-be.
While the second proposition does not imply this meaning of non-contradiction.
In our example, the first proposition implies that a cat cannot be white and not-white at the same time, while the second only asserts that if it is a white then it is white (without saying anything about the not- case)
Although both have the same truth table.
Why is that? Are there any philosophical resources to study these propositions on a semantic level? And how does meaning emerge from propositions with the same terms (i.e: letters like P), and the same truth table?
Note I am personally inclined to say that the different semantics are due to the meaning already encoded in the propositional symbols (· , → , ~ ) and the parentheses '(' and ')', but I need some resources to look into this in further detail.