let is_literal_instance ?(p_preserving: bool = false)
    (instance: literal) (general: literal) : bool =
  instance.Term.sign = general.Term.sign
  &&
  is_term_instance ~p_preserving:p_preserving general.Term.atom instance.Term.atom