anchor.diff:      weak : bool;
       hnf  : bool;
       primops : bool;
  -    eager_unfolding : bool;
  -    inlining : bool;
       no_delta_steps : bool;
       unfold_until : option<S.delta_depth>;
       unfold_only : option<list<I.lid>>;
  
positive.code:     unascribe = false;
  }
  
  let rec to_fsteps (s : list<step>) : fsteps =
      let add_opt x = function
          | None -> Some [x]
          | Some xs -> Some (x::xs)
      in
      let add_one s fs = match s with
      | Beta -> { fs with beta = true }
      | Iota -> { fs with iota = true }
      | Zeta -> { fs with zeta = true }
  
negative.code:     | Weak -> { fs with weak = true }
      | HNF -> { fs with hnf = true }
      | Primops -> { fs with primops = true }
      | Eager_unfolding -> fs // eager_unfolding is not a step
      | Inlining -> fs // not a step
      | NoDeltaSteps ->  { fs with no_delta_steps = true }
      | UnfoldUntil d -> { fs with unfold_until = Some d }
      | UnfoldOnly lids -> { fs with unfold_only = Some lids }
  