Yup. And #2 should have been established in session zero or it's IMO a cop-out on the part of the GM.
Or maybe not session 0, but certainly once it is understood what this player is up to. "Hey, look, I'm not going to say you
can't gather those ingredients and mix them, but I'll warn you up front there's no guarantee that chemistry works the same in my gameworld as it does in the real world...."
The gunpowder case is so...egregious?...that it's maybe not the best example, but let's play out #1 anyway:
"Why would your character do that...other than 'because I want to'?"
"Because it would be awesome!"
"You've never before played this character this way...."
"It says right here on my character sheet that my goal is to
spread the glory of my god across all the nations. Gunpowder would definitely help me do that."
"Why would your character even know how to mix up an explosive?"
"I read it in a book, back at the temple."
"No, you didn't, because it hasn't been invented in this world, so it wouldn't be in a book."
"Maybe it's a lost book, and I discovered it."
"Look, if you want to go back to your monastery or temple or whatever and search the library, I'll tell you what books are there. But it's not
that book."
"Ok, fine, then I had a dream and my god told me to mix these three ingredients, in exactly this proportion. Maybe I'm the inventor!"
"Errr....when did you have this dream, exactly?"
"It's recurring. That's why I can't ignore it."
"No, it doesn't work that way. If you're going to have a dream that reveals information like that, it has to come from the GM."
"What? I can't have a dream without your permission?"
"Not this dream."
"WTF?"
Now, I wouldn't want this particular player at my table, and I doubt you would either. My goal is to illustrate that trying to impose a certain style of roleplaying by demanding that players justify their choices is quixotic. Against any sort of determined resistance it will eventually dead-end at "Because I told you so!" (Or you accede and let them have their way.)
If I
really don't like the way somebody roleplays, I stop playing with them. But if am going to play with them, I don't waste time critiquing their roleplaying (except maybe in my head). That way lies madness.