To this day, Dragon Ball Z
fans still debate many details and questions left unanswered about many moments and story arcs from the series. One of the most ambiguous are the effects of Future Trunks' time traveling, and how much it affected the present timeline throughout the Android
and Cell Sagas. When Trunks returns to the present and finds Android 19's destroyed head on the battlefield, he's deeply concerned because he's never seen this particular android before. He's stunned again upon seeing Android 20/Dr. Gero, leading to his conclusion that the Z fighters of the present had been battling the wrong androids.
The common theory, supported by Trunks
himself, is that his time traveling caused a sort of butterfly effect with dimensional ripples that changed various details from his own timeline. Unfortunately it's impossible to back this up with complete certainty, so it's speculation at best. But what if the real explanation is actually much simpler? It's just as plausible, if not more so, that the Android Saga's timeline in the present played out mostly the same way in the future. Only a few crucial details kept Trunks from having all the historical information he needed.
As a side note, the out-of-universe explanation is that, in the original version of the manga
, Future Trunks does specifically mention Androids 19 and 20 when speaking with Goku. Akira Toriyama intended for them to be more prominent villains, but his editor wasn't crazy about their designs, leading to Toriyama creating Androids 17 and 18 as well. In the anime, however, Trunks only battled 17 and 18 in the future and never gave Goku their names or a proper description, making his confusion upon seeing 19 and 20 more understandable.
Future Trunks was only a baby when the war against the androids began, so all the information he provided to Goku was learned secondhand from Bulma and Gohan and gleaned from his own encounters with Androids 17 and 18. He correctly said that two androids would appear on Amenbo Island and start attacking the city. It's assumed that, in Trunks' future, those two androids were 17 and 18 rather than 19 and 20. There's no firm evidence to back this up, however.
Goku had already died of the heart virus before the battle began, and the rest of the Z fighters except Gohan were killed by 17 and 18. Due to Chi Chi's extremely protective nature
-- along with the fact that the future Z fighters weren't warned about any coming androids -- it's highly likely that Gohan wasn't at the original battle. Future Bulma also had no prior knowledge of Androids 19 and 20, meaning the only two people still alive to tell Trunks about the androids' history only ever knew of 17 and 18.
Knowing this, the future's timeline could have played out much the same way — only without Goku or Gohan's presence. Androids 19 and 20 appear on Amenbo Island. Vegeta, who trained as intensely as he always does and became a Super Saiyan, encounters them and defeats 19 in battle. Likewise, Piccolo overpowers Android 20, who is then forced to retreat to his lab. He awakens 17 and 18 who, despite being less powerful in the future timeline, still murder Dr. Gero
. Then, as 17 and 18 outclass the Z fighters and are crueler than their present versions
, they murder everyone except Gohan. It simply seems more likely that Gohan learned about the androids after
their initial killing spree.
Trunks is also puzzled by Androids 17 and 18 being more powerful in the present than the future. Future Goku's early death, rather than time travel effects, could also explain this. In the future, if Gero knew of Goku's death, he would have had time to continue tinkering with 17 and 18 before bringing them back out of hibernation. This is possible since an electronic bug had been tracking the Z fighters (and Frieza while he was on Earth) and sending info back to his lab for Cell's creation. Also, with the main object of Gero's hatred gone, in his eyes there was no longer a need to make them quite so powerful, especially if they had a history of disobedience. Present Gero, on the other hand, was still hell-bent on destroying Goku.
That said, the butterfly effect explanation shouldn't be completely disregarded. Future Goku died of the heart virus well before any androids showed up, but present Goku only contracted it the day he met 19 and 20. Unless it was a pure coincidence, this can only be put down to the ripple effects of Trunks' time travel. However extensive — or not — the shifts were, Trunks' medicine from the future saved Goku's life and ensured his crucial presence at the later Cell Games.
But as for the androids, sometimes the simplest explanation can work just as well: a very similar timeline played out, but because all the fighters who took part in the initial battle had died, Gohan, Bulma and, most importantly, Trunks simply never learned the full story.