let rec dom_of a =
  try
    let (a1, a2) = d_interp a in
        Dom.mult (dom_of a1) (dom_of a2)
  with
      Not_found -> Term.Var.dom_of a