JuliaSymbolics / SymbolicUtils.jl

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

Test: Add `isequal` tests for `Missing` and `Symbolic` types #640

Closed bowenszhu closed 1 month ago

bowenszhu commented 1 month ago

Following https://github.com/JuliaSymbolics/SymbolicUtils.jl/pull/639 Added tests to verify the current behavior of isequal with these types, ensuring that it returns false as expected without MethodError. These tests enhance the robustness of the test suite and protect against potential regressions in the future.

github-actions[bot] commented 1 month ago

Benchmark Results

master a3cfff7e1cd47f... master/a3cfff7e1cd47f...
overhead/acrule/a+2 0.746 ± 0.016 μs 0.761 ± 0.014 μs 0.98
overhead/acrule/a+2+b 0.716 ± 0.013 μs 0.736 ± 0.012 μs 0.973
overhead/acrule/a+b 0.249 ± 0.01 μs 0.256 ± 0.0079 μs 0.974
overhead/acrule/noop:Int 25.9 ± 0.92 ns 25 ± 0.06 ns 1.04
overhead/acrule/noop:Sym 0.0365 ± 0.0052 μs 0.0364 ± 0.0053 μs 1
overhead/rule/noop:Int 0.0437 ± 0.0014 μs 0.0442 ± 0.0006 μs 0.988
overhead/rule/noop:Sym 0.0549 ± 0.0039 μs 0.0535 ± 0.0028 μs 1.03
overhead/rule/noop:Term 0.0541 ± 0.0035 μs 0.054 ± 0.0031 μs 1
overhead/ruleset/noop:Int 0.134 ± 0.0075 μs 0.128 ± 0.003 μs 1.05
overhead/ruleset/noop:Sym 0.154 ± 0.0066 μs 0.146 ± 0.0046 μs 1.06
overhead/ruleset/noop:Term 3.22 ± 0.13 μs 3.11 ± 0.12 μs 1.03
overhead/simplify/noop:Int 0.14 ± 0.0023 μs 0.136 ± 0.00079 μs 1.03
overhead/simplify/noop:Sym 0.149 ± 0.0026 μs 0.156 ± 0.0076 μs 0.957
overhead/simplify/noop:Term 0.0361 ± 0.0014 ms 0.0372 ± 0.0017 ms 0.971
overhead/simplify/randterm (+, *):serial 0.0881 ± 0.0013 s 0.0873 ± 0.0015 s 1.01
overhead/simplify/randterm (+, *):thread 0.0518 ± 0.027 s 0.0524 ± 0.029 s 0.988
overhead/simplify/randterm (/, *):serial 0.215 ± 0.0065 ms 0.221 ± 0.0072 ms 0.973
overhead/simplify/randterm (/, *):thread 0.248 ± 0.0075 ms 0.244 ± 0.0067 ms 1.02
overhead/substitute/a 0.0617 ± 0.0014 ms 0.0596 ± 0.0014 ms 1.04
overhead/substitute/a,b 0.0537 ± 0.0014 ms 0.0523 ± 0.0014 ms 1.03
overhead/substitute/a,b,c 17 ± 0.67 μs 17.5 ± 0.64 μs 0.969
polyform/easy_iszero 30 ± 1.7 μs 28.9 ± 1.7 μs 1.04
polyform/isone 3.1 ± 0.009 ns 2.79 ± 0.009 ns 1.11
polyform/iszero 1.15 ± 0.032 ms 1.1 ± 0.026 ms 1.04
polyform/simplify_fractions 1.68 ± 0.04 ms 1.61 ± 0.035 ms 1.04
time_to_load 2.11 ± 0.0085 s 2.11 ± 0.0088 s 1

Benchmark Plots

A plot of the benchmark results have been uploaded as an artifact to the workflow run for this PR. Go to "Actions"->"Benchmark a pull request"->[the most recent run]->"Artifacts" (at the bottom).