(* This code extends 'mini_prelude'. *) datatype ('a) tree = Tree of ('a) tree * 'a * ('a) tree | Empty ; val empty = Empty ; fun member v4 = (fn v5 => (fn v6 => (case v6 of Empty => false | (Tree (v3, v2, v1)) => (if ((v4 v5) v2) then (((member v4) v5) v3) else (if ((v4 v2) v5) then (((member v4) v5) v1) else true))))) ; fun insert v4 = (fn v5 => (fn v6 => (case v6 of Empty => (Tree (Empty, v5, Empty)) | (Tree (v3, v2, v1)) => (if ((v4 v5) v2) then (Tree ((((insert v4) v5) v3), v2, v1)) else (if ((v4 v2) v5) then (Tree (v3, v2, (((insert v4) v5) v1))) else (Tree (v3, v2, v1))))))) ;