Proof using.
unfold refined_raft_net_invariant_do_leader, allEntries_leaderLogs_term.
simpl. intros.
repeat find_higher_order_rewrite.
match goal with
| [ H : nwState ?net ?h = (?gd, ?d) |- _ ] =>
((replace gd with (fst (nwState net h)) in * by (now rewrite H));
(replace d with (snd (nwState net h)) in * by (now rewrite H))); clear H
end.
destruct_update.
- simpl in *.
find_apply_hyp_hyp.
intuition.
right.
break_exists_exists.
find_higher_order_rewrite.
destruct_update; auto.
- find_apply_hyp_hyp.
intuition.
right.
break_exists_exists.
repeat find_higher_order_rewrite.
destruct_update; auto.
Qed.

(* Specifications: *)
Lemma allEntries_leaderLogs_term_do_generic_server :
refined_raft_net_invariant_do_generic_server allEntries_leaderLogs_term.