Proof using.
unfold doLeader, type_term_log_monotonic.
intros.
repeat break_match; repeat find_inversion; simpl in *; auto; try congruence.
Qed.

Lemma doLeader_message_entries :
forall st h os st' ms m t n pli plt es ci e,
doLeader st h = (os, st', ms) ->
In m ms ->
snd m = AppendEntries t n pli plt es ci ->
In e es ->
currentTerm st = t /\
type st = Leader /\
In e (log st).