Advisor wants to be the first author I'm a computer science graduate student (Master degree), I have done my thesis defense, and it is accepted. So, the problem is that I want to publish a paper based on my thesis but the advisor wants her name to be the FIRST name! Claiming that she has done enough work to be as first author. So, here how the research has been done:


At the beginning she didn't have any good idea to be done as thesis. Thus, I had to go through existing research for couple of months until I came up with a new idea.
As any new idea, it develops with the time. What I mean is that she suggested few things to be added. However, I added much more things to enhance the algorithm (my idea) and achieve better results .
I wrote the whole thesis, but she revised almost all of it (except Related work and conclusion) because English is not my first language. 
She did the mathematical proof ( I mean she found the equations to proof that our algorithm is better)
However, I codded all the simulation programs, and I did the simulations and collected the results. 
Also, she stayed in contact with me during the summer (one Skype call a week)


I spent almost two years working on this research, and I don't want to be unfair with her. I would like to have your opinion
In my experience, in CS, it is rare but not unheard of for a professor to be first author.  Usually I think that is really when it is the professor who has taken lead, both in running a project and in writing the text, and typically it is when it is a group project where each student has a moderate contribution but it's the advisor who pulled it together.  This is often the case when the paper is an overview of the project as a whole.

In the case of your project, it certainly sounds like you're getting a raw deal and should push back.  But without seeing the professor's side of the story, it can be hard to tell.  They may have a different view of the relative contribution. 

IMHO, even if it's 50-50 or 60-40, the student should get priority.  There's a tipping point where it's more understandable, but from your description, you're nowhere close to it.  

Good luck!