Module DS := Backward_Dataflow_Solver(RegsetLat)(NodeSetBackward).
Definition analyze (f: function): option (PMap.t Regset.t) :=
DS.fixpoint f.(fn_code) successors_instr (transfer f).
(** Basic property of the liveness information computed by [analyze]. *)

Lemma analyze_solution:
forall f live n i s,
analyze f = Some live ->
f.(fn_code)!n = Some i ->
In s (successors_instr i) ->
Regset.Subset (transfer f s live!!s) live!!n.