Remove floor, ceiling for integer symbols
Original Intent
Allow optimizations by SymPy when we know that a TypedSymbol
is_integer
or is_real
(e.g. drop rounding functions).
We can deduce some of those properties with Numpy's type system (https://docs.scipy.org/doc/numpy-1.13.0/reference/arrays.scalars.html).
We have to be careful since all the is_*
methods have ternary logic (True
, False
, None
== we don't know).
Field.Access can take advantage of those optimizations by making it a subclass of TypedSymbol
.
Extended Changes
By writing a test I realized that it would be handy to compare AssignmentCollection
s and use the functions find
, match
, subs
, replace
of SymPy.
Edited by Stephan Seitz