9 Now David knew that Saul was plotting evil against him; so he said to Abiathar the priest, “Bring the ephod here.” 10 Then David said, “O Lord God of Israel, Your servant has heard for certain that Saul is seeking to come to Keilah to destroy the city on my account. 11 Will the men of Keilah surrender me into his hand? Will Saul come down just as Your servant has heard? O Lord God of Israel, I pray, tell Your servant.” And the Lord said, “He will come down.” 12 Then David said, “Will the men of Keilah surrender me and my men into the hand of Saul?” And the Lord said, “They will surrender you.” 13 Then David and his men, about six hundred, arose and departed from Keilah, and they went wherever they could go. When it was told Saul that David had escaped from Keilah, he gave up the pursuit. 1 Samuel 23:9-13
In answering David, clearly God was telling about events in an alternate reality. We could call it the David stays reality. In that reality, Saul comes and the Keilahites give him up.
In the David leaves reality, David takes this as a warning from God and leaves Keilah. Saul doesn’t come and the Keilahites are no longer in a position to give him up.
If we believe that God knew in advance that David would leave, then we must believe that God knew both the David leaves reality, which came to pass, and the David stays reality, which God predicted.
If God knew those two possible realities, why couldn’t his knowledge extend to all possible alternate realities? Wouldn’t God know every possible outcome of every possible decision made by human beings?
We do not glorify God by assuming that his knowledge is limited to events that he himself has set in motion. There are ‘what ifs’ – alternate realities – and he knows them as well.
God will not lose control of the universe because of the free choices we make. Nothing we do can surprise God. He knows not only the possibilities, he knows which we will choose. No one can frustrate the plans of the LORD, the all-powerful Sovereign of the universe.
– SSXG