Suppose that my deck contains a Grindstone and 4 copies of Progenitus, and that every other card in my deck shares a color.
I use Grindstone's ability, targeting myself.
Because every card in my deck shares a color, Grindstone's ability will always repeat. Whenever it mills Progenitus, I shuffle my deck. Eventually (after much milling and much shuffling), my deck is reduced to 4 cards. I know that my deck contains only Progenitus, and therefore that all future iterations of Grindstone will have exactly the same result, but my opponent only knows that I have at least 2 copies of Progenitus - the other two cards in my deck could be anything (but are highly likely to be Progenitus).
Hypothetically from my opponent's perspective, I could conceivably mill a card other than Progenitus, which (ignoring the fact that no such cards have ever been printed) could conceivably have a replacement effect which would interrupt the loop. Announcing that this is an infinite loop would require announcing privileged information about my deck.
How do the rules handle this? Am I required to announce that the loop is infinite, even though it contains hidden information, or would the rules allow me to keep milling and shuffling until one of us resigns?