Isn't is both a guess and check, though?
Guess the nonce, run it all through SHA-256 complex math algo to get a hash, and see if that hash meets the criteria to be considered valid.
No? Then replace the nonce with a new guess and run the math again to get a new hash.
So it is both guessing AND doing complex math to check.
And by complex math, I only mean that you can't simply look at the mathematical functions and the output (the hash) you would need from them and work backwards to figure out what the input (the nonce) needs to be.