Matthew, that looks about right logically, but to make it read better as a proof, you might want to reverse your argument. (I know you have used if and only if, but the logic of what you are doing is still a little hidden.) Also you write "From (1) we have: <sequence of if and only ifs>." (But you don't have the full-stop at the end!) This is confusing. The sequence of iffs is not a consequence of (1), it is just the first statement which is a consequence/restatement of (1).
As a side question, does the align environment work here? I was having problems with it in a previous post. It's just that it's more standard to align your "\\(\iff\\)"s.
statement1 <=> statement2
But maybe you know this and can't get it to work here.