anchor.diff:          with
           | Failure _ -> failwith "CHOOSE"
   
  +/// Existentially quantifies a hypothesis of a theorem.
   let SIMPLE_CHOOSE v th = CHOOSE (v, ASSUME(mk_exists(v, hd(hyp th)))) th
   
   (* ------------------------------------------------------------------------- *)
  
positive.code: (* Useful derived deductive rule.                                            *)
  (* ------------------------------------------------------------------------- *)
  
  let PROVE_HYP ath bth = 
      if exists (aconv(concl ath)) (hyp bth) then EQ_MP (DEDUCT_ANTISYM_RULE ath bth) ath
      else bth
  
negative.code:                   concl th2, q] <| pth()
          PROVE_HYP th2 (PROVE_HYP th1 th)
  
  /// Extracts left conjunct of theorem.
  let CONJUNCT1 = 
      let P = parse_term @"P:bool"
      let Q = parse_term @"Q:bool"
  