let rec get_var (x: var) (ar: act_ref) (b: b)
  : rslt option =
    assert (act_valid ar b);
    let act = act_assoc_valid ar b in
    begin if List.mem_assoc x act.act_vars then
      Some(List.assoc x act.act_vars)
    else
      begin match act.act_parent with
      | None -> None
      | Some(ar1) -> get_var x ar1 b
      end
    end