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]