I just noticed this: ```python >>> import symengine as se >>> import sympy as sy >>> {be.__name__: (be.pi.args, be.pi.is_Atom) for be in [sy, se]} {'sympy': ((), True), 'symengine': ((), False)} ``` I think this is an oversight, no? Number and Symbol have `is_Atom` set to True. Looking at the classhierarchy of pi: ```python >>> se.pi.__class__.__mro__ (symengine.lib.symengine_wrapper.Pi, symengine.lib.symengine_wrapper.Constant, symengine.lib.symengine_wrapper.Expr, symengine.lib.symengine_wrapper.Basic, object) ``` I guess `Constant` is a good candidate for setting is_Atom to True?