let rec access e = match e with
    | Fol.Tdata (E1addr v) -> Fol.Tvar (WpFol.lv_to_fol_var v)
    | Fol.Tdata (E1depl (e, ch)) -> Fol.Tdata (E1proj (access e, ch))
    | Fol.Tdata (E1muI (_p, x)) -> x
    | Fol.Tdata _ | Fol.Tvar _ -> Fol.Tdata (E1indir e)
    | _ -> abort ("indirect access to "^(Pretty_utils.sfprintf "%a" pp_exp1 e))