Can someone explain Gödel’s incompleteness theorems in layman terms?

Can you explain it in a fathomable way at high school level?

The problem with Gödel’s incompleteness is that it is so open for exploitations and problems once you don’t do it completely right. You can prove and disprove the existence of god using this theorem, as well the correctness of religion and its incorrectness against the correctness of science. The number of horrible arguments carried out in the name of Gödel’s incompleteness theorem is so large that we can’t even count them all.

But if I were to give the theorem in a nutshell I would say that if we have a list of axioms which we can enumerate with a computer, and these axioms are sufficient to develop the basic laws of arithmetics, then our list of axioms cannot be both consistent and complete.

In other words, if our axioms are consistent, then in every model of the axioms there is a statement which is true but not provable.

Caveats:

1. Enumerate with a computer means that we can write a program (on an ideal computer) which goes over the possible strings in our alphabet and identify the axioms on our list. The fact the computer is “ideal” and not bound by physical things like electricity, etc. is important. Moreover if you are talking to high school kids which are less familiar with theoretical concepts like that, it might be better to talk about them at first. Or find a way to avoid that.
2. By basic laws of arithmetics I mean the existence of successor function, addition and multiplication. The usual symbols may or may not be in the language over which our axioms are written in. This is another fine point which a lot of people skip over, because it’s usually clear to mathematician (although not always), but for high school level crowd it might be worth pointing out that we need to be able to define these operations and prove they behave normally to some extent, but we don’t have to have them in our language.
3. It’s very important to talk about what is “provable” and what is “true”, the latter being within the context of a specific structure. That’s something that professional mathematician can make mistakes with, especially those less trained with the distinction of provable and true (while still doing classical mathematics, rather some intuitionistic or constructive mathematics).

Now, I would probably try to keep it simple. VERY simple. I’d talk about the integers in their standard model, and I would explain the incompleteness theorem within the context of this particular model, with a very specified language including all the required symbols.

In this case we can simply say that if $$T$$ is a list of axioms in our language which we can enumerate by an ideal computer, and all the axioms of $$T$$ are true in $$\Bbb N$$, then there is some statement $$\varphi$$ which is true in $$\Bbb N$$ but there is no proof from $$T$$ to the statement $$\varphi$$.

(One can even simplify things better by requiring $$T$$ to be closed under logical consequences, in which case we really just say that $$\varphi\notin T$$.)