method private image (glob:global) =
    (* extract just the name of the global , for printing purposes *)
    match glob with
      | GVar (v, _, _) -> v.vname ^ " (GVar) "
      | GVarDecl (_, v, _) -> v.vname ^ " (GVarDecl) "
      | GFun (fdec, _) -> fdec.svar.vname ^ " (GFun) "
      | GType (ty, _) -> ty.tname
      | GCompTag (ci, _) | GCompTagDecl (ci, _) -> ci.cname
      | GEnumTagDecl (ei, _) | GEnumTag (ei, _) -> ei.ename
      | GAsm (_, _) | GPragma _ | GText _ -> ""
      | GAnnot (an,_) ->
        begin
          match an with
            | Dfun_or_pred (li, _) -> li.l_var_info.lv_name
            | Dvolatile (_, _, _, _) -> " (Volatile) "
            | Daxiomatic (s, _, _) -> s
            | Dtype (lti, _) ->  lti.lt_name
            | Dlemma (ln, _, _, _, _, _) ->  ln
            | Dinvariant (toto, _) -> toto.l_var_info.lv_name
            | Dtype_annot (ta, _) -> ta.l_var_info.lv_name
            | Dmodel_annot (ta, _) -> ta.l_var_info.lv_name
        end