Proof using.
red. unfold ghost_log_correct. intros. simpl in *.
match goal with
| H : nwState ?net ?h = (?gd, ?d) |- _ =>
replace gd with (fst (nwState net h)) in * by (rewrite H; reflexivity);
replace d with (snd (nwState net h)) in * by (rewrite H; reflexivity);
clear H
end.
find_apply_hyp_hyp; intuition; eauto.
find_apply_lem_hyp doGenericServer_packets.
subst. simpl in *. intuition.
Qed.

(* Specifications: *)
Lemma ghost_log_correct_reboot :
msg_refined_raft_net_invariant_reboot ghost_log_correct.