Proof using vwltsi.
red. unfold allEntries_votesWithLog. intros. simpl in *.
repeat find_higher_order_rewrite.
destruct_update; simpl in *.
- find_eapply_lem_hyp votesWithLog_update_elections_data_append_entries; eauto.
find_copy_apply_lem_hyp votesWithLog_term_sanity_invariant; eauto.
find_eapply_lem_hyp update_elections_data_appendEntries_allEntries'; eauto.
intuition; do 2 (unfold raft_data, ghost_data in *; simpl in *); try omega.
eapply_prop_hyp votesWithLog votesWithLog; eauto. intuition.
right. break_exists_exists. intuition.
find_higher_order_rewrite. destruct_update; simpl in *; auto.
rewrite update_elections_data_appendEntries_leaderLogs. auto.
- eapply_prop_hyp votesWithLog votesWithLog; eauto. intuition.
right. break_exists_exists. intuition.
find_higher_order_rewrite. destruct_update; simpl in *; auto.
rewrite update_elections_data_appendEntries_leaderLogs. auto.
Qed.

(* Specifications: *)
Lemma allEntries_votesWithLog_append_entries_reply :
refined_raft_net_invariant_append_entries_reply allEntries_votesWithLog.