let compile_user_axiom name predicate =
    if not (Hashtbl.mem user_axioms name) then
      let context = push_context "axiom" in
      try
        let env = axiom_env "WP_nowhere" in
        let def = prop env predicate in
        Hashtbl.add user_axioms name
          (flush_context "axiom" context def)
      with err ->
        kill_context "axiom" context ;
        raise err