Proof using.
unfold handleClientRequest.
intros.
repeat break_match; repeat find_inversion; auto.
Qed.

(* Specifications: *)
Lemma handleClientRequest_commitIndex :
forall h st client id c out st' ms,
handleClientRequest h st client id c = (out, st', ms) ->
commitIndex st' = commitIndex st.
Lemma directly_committed_allEntries_preserved :
forall net net' e,
directly_committed net e ->
(forall h, In (eTerm e, e) (allEntries (fst (nwState net h))) ->
In (eTerm e, e) (allEntries (fst (nwState net' h)))) ->
directly_committed net' e.
Lemma leaderLogs_entries_match_client_request :
refined_raft_net_invariant_client_request leaderLogs_entries_match.
Lemma tryToBecomeLeader_matchIndex_preserved :
forall n st out st' ms,
tryToBecomeLeader n st = (out, st', ms) ->
matchIndex_preserved st st'.