Hi all The ending of my sci-if novel (probably) results in a human character convincing a sentient computer system to take itself offline, after making it realise that what it is doing is harmful. The plot hole here is how the designers of the system could be prevented from just recreating it, or reprogramming it so that it forgets that conversation and that it is harmful to human society. Here are the ideas I have been considering and their associated issues: The system actually destroys itself. But nothing would stop it from being replaced. Also, any decent tech developer builds redundancy in, so “destroying” it would actually mean breaking a server, which would just be easily swapped out for another one. The tech alters its own programming so that it no longer complies with commands from its operators. The problem here is that the owners of the tech could just restore from a backup. The tech alters its surrounding infrastructure so that it cannot be reached or altered by anyone. This is a major issue, as software can’t access the physical environment, and even if it could, the owners could just physically destroy that version and rebuild a new one The tech uploads itself elsewhere so that it ‘lives’ online, in the ether, so cannot be accessed or altered by anyone. The problem here is that the owners could then just advertise that this rogue version is not to be trusted or used, and put in place a replacement The tech only works because it is sentient. The developers do not know how it became sentient, and cannot reproduce this situation. They therefore cannot replace the now non-cooperative version. This is slightly implausible, since all of the development would be documented and there would be backups. So short of a cliché like “lightning struck the server at just the right time and it came alive”, I don’t think this would work The tech starts deliberately behaving erratically to give the impression that it does not, and cannot ever, work correctly, i.e. that the very concept of it is flawed and the developers abandon the whole thing. I think this is the most plausible, but again, I feel that the first thing the developers would do would be to restore from a backup and see if that fixed the problem Any of the above would, if I were reading it, be unsatisfactory as I would think, “hang on, couldn’t the developers just...” Some variation in the last option would be my preference, but I have no idea how to make it so that there is no going back.