undefine : 'a -> ('a, 'b) func -> ('a, 'b) func

SYNOPSIS
Remove definition of a finite partial function on specific domain value.

DESCRIPTION
This is one of a suite of operations on finite partial functions, type ('a,'b)func. These may sometimes be preferable to ordinary functions since they permit more operations such as equality comparison, extraction of domain etc. The call undefine x f removes a definition for the domain value x in the finite partial function f; if there was none to begin with the function is unchanged.

FAILURE CONDITIONS
Never fails.

EXAMPLE
  # let f = itlist I [1 |-> "1"; 2 |-> "2"; 3 |-> "3"] undefined;;
  val f : (int, string) func = 
  # dom f;;
  val it : int list = [1; 2; 3]
  # dom(undefine 2 f);;
  val it : int list = [1; 3]

SEE ALSO
|->, |=>, apply, applyd, choose, combine, defined, dom, foldl, foldr, graph, is_undefined, mapf, ran, tryapplyd, undefined.