All your commits have changed ids, so the diversion is not truly a diverge.
To get your problem resolved you have to overwrite your remote branch:
git push -f origin experiment
http://git-scm.com/book/ch3-6.html
Explanation:
See how in this image C3 is not put as C3 after the rebase, but as C3'. This is because it is not exactly C3, but it has all of its code changes.

On this other image you get the picture of what a rebase is seen when a remote is involved, and why there is a diversion.

In any case, after you do the forced push, it will tell you that it did a (force update), you should be fine at that point.
Checkout the link at the top, and search for "git push --force". You will see a more detailed explanation.