Proof using.
intros. unfold handleRequestVote, advanceCurrentTerm in *.
repeat break_match; find_inversion; simpl in *; auto.
Qed.

Theorem handleRequestVoteReply_log_term_type :
forall h st t h' r st',
type st' = Candidate ->
handleRequestVoteReply h st h' t r = st' ->
(log st' = log st /\ currentTerm st' = currentTerm st /\ type st' = type st).