Remark select_reg_l_monotone:
forall r q1 q2,
OrderedEquation.eq q1 q2 \/ OrderedEquation.lt q1 q2 ->
select_reg_l r q1 = true -> select_reg_l r q2 = true.
Remark select_reg_h_monotone:
forall r q1 q2,
OrderedEquation.eq q1 q2 \/ OrderedEquation.lt q2 q1 ->
select_reg_h r q1 = true -> select_reg_h r q2 = true.
Remark select_reg_charact:
forall r q, select_reg_l r q = true /\ select_reg_h r q = true <-> ereg q = r.

(* Specifications: *)
Lemma reg_unconstrained_sound:
forall r e q,
reg_unconstrained r e = true ->
EqSet.In q e ->
ereg q <> r.
Lemma reg_unconstrained_satisf:
forall r e rs ls v,
reg_unconstrained r e = true ->
satisf rs ls e ->
satisf (rs#r <- v) ls e.