(** Auxiliary for the compilation of [switch] statements. *)

Definition tr_jumptable (nexits: list node) (tbl: list nat) (ttbl: list node) : Prop :=
  forall v act,
  list_nth_z tbl v = Some act ->
  exists n, list_nth_z ttbl v = Some n /\ nth_error nexits act = Some n.

Lemma tr_exitexpr_incr: forall s1 s2, state_incr s1 s2 -> forall map a ns nexits, tr_exitexpr s1.(st_code) map a ns nexits -> tr_exitexpr s2.(st_code) map a ns nexits.