Apologies to any computer scientists who might be reading this. I only took a very basic course on Java, and even then the class consisted mostly of messing around with GUIs. My knowledge of computers is slightly higher than the average user, but only just. I was tempted to do a ton of research to make things more realistic, but decided against it. I do have friends who are electrical engineers. Two are currently working on very cool microelectronics projects, but most of the jargon is beyond me. And yes, I know that working on hardware is very different from coding.
In any case, stone knives and bearskins aside, I decided that the issue of science/tech gap would not be central in this arc.
P = NP is one of the million dollar questions chosen by the Clay Mathematics Institute. Go read about it on wikipedia for starters, if you’re interesting in learning more about it. It’s an interesting issue, and it revolves around the question of whether we can solve all problems we pose to a computer (this is a terrible, terrible simplification). As powerful as our computers are, there are problems that they can’t solve in polynomial time i.e. a finite amount of time. Most theoretical computer scientist don’t think that P = NP, given the assumption that the machine is a deterministic sequential machine.