let userdef_mem_signature m =
    Xmap.fold
      (fun v vi fs -> (vi.v_var,Fclos(vi.v_arity,vi.v_is_array,v))::fs)
      m.vars
      (List.map (fun (y,c) -> y,Mclos c) (M.userdef_mem_signature m.mem))