Proof using.
unfold refined_raft_net_invariant_timeout, cronies_term.
intros. subst. simpl in *. repeat find_higher_order_rewrite.
update_destruct; subst; rewrite_update; eauto.
simpl in *.
find_eapply_lem_hyp handleTimeout_spec; eauto. intuition.
eapply le_trans; [|eauto]; eauto.
Qed.

(* Specifications: *)
Lemma doLeader_spec :
forall st h os st' ms,
doLeader st h = (os, st', ms) ->
currentTerm st' = currentTerm st.