Section AllEntriesLeaderLogs.
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}.
Context {aerlli : append_entries_leaderLogs_interface}.
Context {ollpti : one_leaderLog_per_term_interface}.
Context {llsi : leaderLogs_sorted_interface}.
Context {rlmli : refined_log_matching_lemmas_interface}.
Context {aercfli : append_entries_came_from_leaders_interface}.
Context {aeli : allEntries_log_interface}.
Context {lsi : leader_sublog_interface}.
Context {lhsi : leaders_have_leaderLogs_strong_interface}.
Proof using aeli.
intros. unfold leader_without_missing_entry.
find_apply_lem_hyp allEntries_log_invariant.
unfold allEntries_log in *.
intros. copy_eapply_prop_hyp allEntries allEntries.
intuition. right. break_exists; intuition; repeat eexists; eauto.
Qed.

Lemma appendEntriesRequest_exists_leaderLog_invariant :
forall net,
refined_raft_intermediate_reachable net ->
appendEntriesRequest_exists_leaderLog net.