anchor.diff:            (*         (Print.term_to_string (N.normalize [N.Beta] env act_typ)); *)
             let univs, act_defn = TcUtil.generalize_universes env act_defn in
             let act_typ = N.normalize [N.Beta] env act_typ in
  -          printfn "Checked action %s at type %s" (Print.term_to_string act_defn) (Print.tscheme_to_string (univs, act_typ));
             {act with 
                 action_univs=univs;
                 action_defn=act_defn;
  
positive.code:   let dmff_env, actions = List.fold_left (fun (dmff_env, actions) action ->
      // We need to reverse-engineer what tc_eff_decl wants here...
      let dmff_env, action_t, action_wp, action_elab =
        printfn "Elab and star of %s" (Print.term_to_string action.action_defn);
        elaborate_and_star dmff_env (action.action_univs, action.action_defn)
      in
      let name = action.action_name.ident.idText in
      printfn "Type-checking action %s at type %s and wp %s\n" name (Print.term_to_string action_t) (Print.term_to_string action_wp);
      let action_typ_with_wp = DMFF.trans_F dmff_env action_t action_wp in
      printfn "Got action type with wp %s\n" (Print.term_to_string action_typ_with_wp);
      let action_elab = register (name ^ "_elab") action_elab in
      let action_typ_with_wp = register (name ^ "_complete_type") action_typ_with_wp in
      dmff_env, { action with action_defn = apply_close action_elab; action_typ = apply_close action_typ_with_wp } :: actions
  
negative.code:       let env = Env.push_sigelt env se in
        let env, ses = ne.actions |> List.fold_left (fun (env, ses) a -> 
            let se_let = Util.action_as_lb a in
            Env.push_sigelt env se_let, se_let::ses) (env, [se]) in
        [se], env
  
  