I've recently read a short intro to SR and am quite curious to learn more but there are some things that bother me. One such issue is the fundamental speed of light (or is it properly 'velocity' even for light? English is not my mother tongue). I understand that time dilation would be impossible without the speed of light being constant to any observer irrespective of the observer's movement in reference to the light source but why is it constant? For me it seems sort of counter-intuitive. Has it been proven empirically? Or is it just a dogma? Here's an example that got me thinking: Suppose you're in a train (that's moving in reference to Earth) with a flashlight in your hand and a mirror on ceiling above you. You turn on the flashlight, put it on the floor and direct it to the mirror. Now the light beam goes up to the mirror and comes down to the floor. You know the distance the light beam has traveled (2 times the height of the carriage you're in) and so you can calculate the time (because you know c) it took for the beam to be reflected on the floor. Now suppose an observer, from outside the train, standing on the ground, is watching. If the train is moving with a constant velocity, than the observer sees the light beam forming two sides of an isosceles triangle, hence, traveling a longer distance than observed by the person in the train and taking more time to do so. This is true, if the speed of light is constant to any observer. So, why is it constant (or why it is widely accepted that it is constant)?