Section SpecLemmas.
Context {orig_base_params : BaseParams}.
Context {one_node_params : OneNodeParams orig_base_params}.
Context {raft_params : RaftParams orig_base_params}.
Context {rri : raft_refinement_interface}.
Proof using.
unfold update_elections_data_requestVote.
intros.
repeat break_match; repeat tuple_inversion; intuition;
simpl in *; intuition;
tuple_inversion; intuition.
Qed.

Lemma votes_update_elections_data_request_vote_reply :
forall h st src t r st' t' h',
handleRequestVoteReply h (snd st) src t r = st' ->
In (t', h') (votes (update_elections_data_requestVoteReply h src t r st)) ->
In (t', h') (votes (fst st)).