JuliaSymbolics / SymbolicUtils.jl

Symbolic expressions, rewriting and simplification
https://docs.sciml.ai/SymbolicUtils/stable/
Other
541 stars 108 forks source link

Simplify degenerate ifelse cases. Fix JuliaSymbolics/Symbolics.jl#170 #468

Closed Omar-Elrefaei closed 1 year ago

Omar-Elrefaei commented 2 years ago

The change was tested with the issue's reproducible sample

julia> @variables x
julia> ∂ₓ = Differential(x)
julia> expr = expand_derivatives(∂ₓ(∂ₓ(max(1,x))))
IfElse.ifelse(1 > x, 0, 0)
julia> simplify(expr)

and now we yield a 0 instead of IfElse.ifelse(1 > x, 0, 0)