anchor.diff:          with _ ->
                fail (BU.format1 "Variable not found: %s" (Print.bv_to_string x)))
   
  -let clear_hd (x:name) : tac<unit> = ret ()
  -let revert_hd (xs:list<name>) : tac<unit> = ret()
  +let clear_hd (x:name) : tac<unit> = fun p -> failwith "Not yet implemented: clear_hd"
  +let revert_hd (xs:list<name>) : tac<unit> = fun p -> failwith "Not yet implemented: revert_hd"
   
   (* We often have VCs of the form
            forall x. x==e ==> P
  
positive.code: 
  let intros_no_names = bind intros (fun _ -> ret ())
  
  let imp_intro : tac<name> = failwith "Not yet implemented"
  
  let split : tac<unit>
      = with_cur_goal (fun goal ->
  
negative.code:     | [_] -> ret a
      | _ -> fail "expected at most one goal remaining"))
  
  let merge_sub_goals : tac<unit> = fun p -> failwith "Not yet implemented: merge_sub_goals"
  
  let visit_strengthen (try_strengthen:tac<unit>)
      : tac<unit>
  