It seems to me that the ‘implies’ in English language does not mean the same thing as the logical operator ‘implies’, in a similar way how ‘OR’ word in most cases means ‘Exclusive OR’ in our everyday language use.
Let’s take two examples:
If today is Monday then tomorrow is Tuesday.
This is true.
But if we say:
If the sun is green then the grass is green.
This is also considered true. Why? What is the ‘logic’ in natural English behind this? It blows my mind.
Humans are bad at logic until they have to employ it to figure out human affairs. Think of “if $A$ then $B$” as a kind of promise: “I promise to you that if you do $A$ then I will do $B$”. Such a promise says nothing about what I might do if you fail to do $A$. In fact, I might do $B$ anyhow, and that would not make me a liar.
For instance, suppose your mother tells you:
If you clean up your room I will make pancakes.
And let us say that you did not clean up your room, but when you walked into the kitchen your mom was making pancakes. Ask yourself, whether this makes your mom a liar. It does not! She would be a liar only if you cleaned the room but she refused to make pancakes. There might be other reasons that she decided to make pancakes (perhaps your sister cleaned up her room). Your mom did not tell you “If you do not clean up the room I will not make pancakes,” did she?
So, if I say
“If the sun is green then the grass is green.”
that does not make me a liar. The sun is not green (you did not clean up the room), but the grass turned out to be green anyhow (but your mom made pancakes anyhow).