Ltac unchanged :=
    red; intros; eapply allEntries_log_matching_unchanged; subst; eauto.

(* Specifications: *)
Lemma allEntries_log_matching_timeout : refined_raft_net_invariant_timeout allEntries_log_matching_inductive.
Lemma appendEntries_haveNewEntries_false : forall net p t n pli plt es ci h e, refined_raft_intermediate_reachable net -> In p (nwPackets net) -> pBody p = AppendEntries t n pli plt es ci -> haveNewEntries (snd (nwState net h)) es = false -> In e es -> In e (log (snd (nwState net h))).
Lemma packets_entries_eq: forall net p p0 entries es e e' (d : raft_data) (n : name) (pli : logIndex) (plt : term) (ci : logIndex) (t0 : term) (leaderId : name) (prevLogIndex : logIndex) (prevLogTerm : term) (leaderCommit : logIndex), refined_raft_intermediate_reachable net -> In p (nwPackets net) -> In p0 (nwPackets net) -> pBody p0 = AppendEntries t0 leaderId prevLogIndex prevLogTerm entries leaderCommit -> pBody p = AppendEntries (currentTerm d) n pli plt es ci -> eTerm e = eTerm e' -> eIndex e = eIndex e' -> In e entries -> In e' es -> e = e'.
Lemma allEntries_log_matching_append_entries : refined_raft_net_invariant_append_entries allEntries_log_matching_inductive.
Lemma allEntries_log_matching_append_entries_reply : refined_raft_net_invariant_append_entries_reply allEntries_log_matching_inductive.
Lemma allEntries_log_matching_request_vote : refined_raft_net_invariant_request_vote allEntries_log_matching_inductive.
Lemma allEntries_log_matching_request_vote_reply : refined_raft_net_invariant_request_vote_reply allEntries_log_matching_inductive.
Lemma allEntries_log_matching_do_leader : refined_raft_net_invariant_do_leader allEntries_log_matching_inductive.
Lemma allEntries_log_matching_do_generic_server : refined_raft_net_invariant_do_generic_server allEntries_log_matching_inductive.
Lemma allEntries_log_matching_state_same_packet_subset : refined_raft_net_invariant_state_same_packet_subset allEntries_log_matching_inductive.
Lemma allEntries_log_matching_reboot : refined_raft_net_invariant_reboot allEntries_log_matching_inductive.
Lemma allEntries_log_matching_inductive_invariant : forall net, refined_raft_intermediate_reachable net -> allEntries_log_matching_inductive net.