(** Completeness part 1: [step_expr] contains all possible non-error reducts. *)

(* Specifications: *)
Lemma lred_topred:
forall l1 m1 l2 m2,
lred ge e l1 m1 l2 m2 ->
exists rule, step_expr LV l1 m1 = topred (Lred rule l2 m2).
Lemma rred_topred:
forall w' r1 m1 t r2 m2,
rred ge r1 m1 t r2 m2 -> possible_trace w t w' ->
exists rule, step_expr RV r1 m1 = topred (Rred rule r2 m2 t).
Lemma callred_topred:
forall a fd args ty m,
callred ge a m fd args ty ->
exists rule, step_expr RV a m = topred (Callred rule fd args ty m).