Definition type_term_log_monotonic st st' :=
    type st' = Leader ->
    type st = Leader /\
    currentTerm st' = currentTerm st /\
    (forall e, In e (log st) -> In e (log st')).Notation appendEntries_leader_predicate ps st :=
    (forall p t lid pli plt es lci e,
      In p ps ->
      pBody p = AppendEntries t lid pli plt es lci ->
      In e es ->
      currentTerm st = t ->
      type st = Leader ->
      In e (log st)).

Lemma appendEntries_leader_predicate_TTLM_preserved : forall ps st st', appendEntries_leader_predicate ps st -> type_term_log_monotonic st st' -> appendEntries_leader_predicate ps st'.