I mean, everything in Bitcoin is there for a reason and not only technical reasons like math, cryptography, but also financial, economical, ideological.
True, but many times, some things are designed in that way, and not another, not because Satoshi was a God, and designed it with his brilliant mind. Many times, it was the case, because there was simply no better option at that time. However, he was not a genius. Because, if you take everything we know in 2023, and try to start from scratch, by releasing a better altcoin, then you would implement it in a completely different way, for many reasons.
For example, Satoshi started with "<pubkey> OP_CHECKSIG". Then, when he designed Script, he added "OP_DUP OP_HASH160 <address> OP_EQUALVERIFY OP_CHECKSIG". Why he added hashing in this place? To make the public key shorter! That was the main reason, maybe even the only reason! And now, imagine what we have in Taproot: everything is pubkey-based, without any hashing, and if you want a Script, you have TapScript, that is just committed to this particular public key.
Which means, Satoshi could end up with P2PK (which is more compatible with the whitepaper by the way, because no Script is described there), apply all of that for compressed public keys only, and just append some "commitment" field, if for a particular public key, that OP_CHECKSIG returned zero. Or, even better, if OP_CHECKSIG-based things were already set, and he didn't want to touch it, he could always require a single public key, and a valid signature for that, and then restrict spending the coin, by optionally adding the commitment to that. Then, if someone wanted Script-only path, everything could be committed just to the base point, and then the commitment could restrict the way how that particular coin could be spent. Then, we could end up with a single address type, and never introduce any new one, and everything would be always hidden under P2PK umbrella, exactly in the same way, as things are currently hidden under P2TR umbrella.
I think that even the brightest person couldn't have so much knowledge in so many fields to create something that is very close to perfection in conceptual terms.
Why? It is similar to learning different languages. If you know only your native language, then speaking or writing differently seems extremely hard. If you know two languages, you start getting to the point, where you can see similarities between them. If you speak three, four, and even more languages, then you start to see the whole tree of languages, and you can mix different words from different cultures, and you understand the whole etymology between single words.
The same is true in case of technical skills. Also, you should note that Satoshi probably knew less than you could expect. He didn't know about compressed keys. Which means, he knew, how to use public key cryptography, but was not an ultimate expert in that topic, and could not create some new elliptic curve from scratch. He knew about hashing, and he knew how to use a hash function, but imported for example existing SHA-1 implementation anyway, instead of rolling his own, optimized and multithreaded version, and tweaking it for the purpose of Hashcash.
My personal opinion is that Satoshi Nakamoto is not a single person.
Have you ever tried to manage a group of people? Even with two people, keeping a secret is extremely hard. I am currently a part of the group with Garlo Nicon, and some others. Guess what: if we would decide to write all messages from a single account, that would be extremely hard. Even though there are many topics, where we both agree, there are many of them, where we want to go in completely different directions.
And then, imagine Satoshi group, that would contain two people. Not three, not five, just two. One person wants to scale in one way, and another wants to do that in another way. Or one wants to name it "e-cash", and another thinks about "bit-coin". One thinks about creating a Script in a way, where each case would be handled separately, and another thinks about creating a separate language to describe the predicate.
The list of issues goes on and on. I can give you endless examples. Next one: some member of the group may want to stick with SHA-1, because it was battle-tested in Hashcash, and because it is shorter than SHA-256, while someone else could want SHA-256. And someone else could propose RIPEMD-160 as a compromise, because it is not "as weak as SHA-1", and not "as large as SHA-256".
So, if you still believe, that Satoshi was not alone, think about this thought experiment: take two Core developers, and find such a pair of people, that could form a group, that will think identically in all technical issues, and will take identical decisions in every single case. Imagine that the group started from 2007, and disappeared in 2010. Which means, you have to keep the group united for at least three years.
“Hal could have been one member of a group.”
Sure, but Occam's Razor again. As Benjamin Franklin noted: “Three can keep a secret, if two of them are dead.” In all my time researching Satoshi, I've yet to come across any evidence suggesting it was a group. If it was a group, then they all operated on the same sleep schedule, consistent across code commits, emails, and forum posts.