let rec insert_term term =
  match term with
    | Func func ->
        if func.in_db then
          term

        else begin
          let subterms =
            Array.map insert_term func.subterms
          in
            request_func (func.symbol, subterms)
        end

    | _ ->
        term