code: def _expr_to_smtlib(e, daggify=True):
      
      if e.is_symbol():
          return "(declare-fun %s %s)" % (e.symbol_name(), e.symbol_type().as_smtlib())
      else:
          return "(assert %s)" % e.to_smtlib(daggify=daggify)
docs: Dump the symbol in its smt-format depending on its type
  
      :param e: symbol to dump
      :param daggify: The daggify parameter can be used to switch from a linear-size representation that uses ‘let’
                      operators to represent the formula as a dag or a simpler (but possibly exponential) representation
                      that expands the formula as a tree
  
      :return string: smt-lib representation of the symbol