It was my understanding that you could only ever have a Pokémon who is a level and a half above your current trainer level. Yet the other day I saw a Pokémon in a gym, that seemed to exceed the trainers level by more than that.
According to the tools provided by The SilphRoad, a Gyarados at level 21.5 (1.5 above the level 20 trainer) should have a maximum CP of 1651. However, the Gyarados in the gym had a CP of 2200. Which again, according to the SilphRoad tools, should only be able to be owned by a level 28 trainer.
Is it possible to catch or hatch a Pokémon that exceeds your level by more than 1.5? Or are the SilphRoad tools inaccurate?