Details

Time bar (total: 2.5s)

analyze495.0ms (19.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
12.5%87.4%0.1%7
31.2%68.6%0.1%8
39%57.7%3.3%9
47.6%46%6.4%10
58.1%35.5%6.4%11
62.2%29.1%8.7%12
66.2%22.7%11.1%13
71.3%17.6%11.1%14
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample26.0ms (1%)

Algorithm
intervals
Results
9.0ms256×body128valid
1.0ms17×body128invalid
Compiler

Compiled 24 to 18 computations (25% saved)

simplify23.0ms (0.9%)

Algorithm
egg-herbie
Rules
419×fma-def_binary64
121×fma-neg_binary64
46×distribute-rgt-in_binary64
45×associate-*r*_binary64
43×associate-*l*_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11710
23210
37310
417510
521610
629010
741110
843110
948110
1048410
1150410
1245310

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
3.4b
Counts
2 → 1
Alt Table
StatusErrorProgram
3.4b
(*.f64 x (-.f64 1 (*.f64 y z)))
Compiler

Compiled 30 to 21 computations (30% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 1 (*.f64 y z))
3.2b
(*.f64 x (-.f64 1 (*.f64 y z)))

series12.0ms (0.5%)

Counts
2 → 42
Calls

2 calls:

8.0ms
(*.f64 x (-.f64 1 (*.f64 y z)))
3.0ms
(-.f64 1 (*.f64 y z))

rewrite9.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt_binary64
prod-diff_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
distribute-lft-in_binary64
Counts
2 → 52
Calls

2 calls:

4.0ms
(*.f64 x (-.f64 1 (*.f64 y z)))
2.0ms
(-.f64 1 (*.f64 y z))

simplify65.0ms (2.6%)

Algorithm
egg-herbie
Rules
900×fma-def_binary64
608×distribute-neg-out_binary64
601×unsub-neg_binary64
328×associate-*l*_binary64
264×*-commutative_binary64
Counts
94 → 78
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0811122
11631031
2520977
31456950
42828950
55227950

prune64.0ms (2.5%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New72678
Fresh000
Picked101
Done000
Total73679
Error
0.0b
Counts
79 → 6
Alt Table
StatusErrorProgram
17.2b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 1 (*.f64 y z)))) (sqrt.f64 (-.f64 1 (*.f64 y z))))
4.6b
(*.f64 (*.f64 (cbrt.f64 x) (cbrt.f64 x)) (*.f64 (cbrt.f64 x) (-.f64 1 (*.f64 y z))))
3.3b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z y))) x) (*.f64 (fma.f64 (neg.f64 z) y (*.f64 z y)) x))
33.4b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))))
4.6b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))))
4.3b
(-.f64 x (*.f64 y (*.f64 z x)))
Compiler

Compiled 1279 to 645 computations (49.6% saved)

localize11.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 1 1 (neg.f64 (*.f64 z y)))
3.2b
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z y))) x)
49.2b
(fma.f64 (neg.f64 z) y (*.f64 z y))

series24.0ms (0.9%)

Counts
3 → 84
Calls

3 calls:

11.0ms
(fma.f64 (neg.f64 z) y (*.f64 z y))
9.0ms
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z y))) x)
4.0ms
(fma.f64 1 1 (neg.f64 (*.f64 z y)))

rewrite5.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
3 → 40
Calls

3 calls:

3.0ms
(*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z y))) x)
0.0ms
(fma.f64 (neg.f64 z) y (*.f64 z y))
0.0ms
(fma.f64 1 1 (neg.f64 (*.f64 z y)))

simplify64.0ms (2.5%)

Algorithm
egg-herbie
Rules
712×fma-def_binary64
629×distribute-rgt-neg-out_binary64
627×distribute-rgt-in_binary64
578×distribute-lft-in_binary64
387×distribute-neg-out_binary64
Counts
124 → 79
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0641027
1114945
2299897
3884897
42991897
55217897

prune62.0ms (2.4%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New78179
Fresh145
Picked011
Done000
Total79685
Error
0.0b
Counts
85 → 6
Alt Table
StatusErrorProgram
17.2b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 1 (*.f64 y z)))) (sqrt.f64 (-.f64 1 (*.f64 y z))))
3.3b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z y))) x) (*.f64 (fma.f64 (neg.f64 z) y (*.f64 z y)) x))
33.4b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))))
4.6b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))))
4.6b
(+.f64 (*.f64 (*.f64 (-.f64 1 (*.f64 y z)) (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (cbrt.f64 x)) (*.f64 (fma.f64 (neg.f64 z) y (*.f64 z y)) x))
4.3b
(-.f64 x (*.f64 y (*.f64 z x)))
Compiler

Compiled 2026 to 742 computations (63.4% saved)

localize7.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 y (*.f64 z x)))
5.9b
(*.f64 y (*.f64 z x))

series17.0ms (0.7%)

Counts
2 → 18
Calls

2 calls:

8.0ms
(*.f64 y (*.f64 z x))
8.0ms
(-.f64 x (*.f64 y (*.f64 z x)))

rewrite9.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
Counts
2 → 40
Calls

2 calls:

4.0ms
(*.f64 y (*.f64 z x))
3.0ms
(-.f64 x (*.f64 y (*.f64 z x)))

simplify111.0ms (4.4%)

Algorithm
egg-herbie
Rules
721×fma-def_binary64
462×fma-neg_binary64
392×distribute-rgt-neg-in_binary64
378×distribute-lft-neg-in_binary64
300×distribute-rgt-in_binary64
Counts
58 → 55
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
080682
1195637
2585609
31582608
44260608
54932608
64986608
74996608
84794608

prune38.0ms (1.5%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New53255
Fresh134
Picked011
Done011
Total54761
Error
0.0b
Counts
61 → 7
Alt Table
StatusErrorProgram
4.3b
(-.f64 x (*.f64 y (*.f64 z x)))
4.7b
(-.f64 x (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (*.f64 z x))))
3.3b
(+.f64 (*.f64 (fma.f64 1 1 (neg.f64 (*.f64 z y))) x) (*.f64 (fma.f64 (neg.f64 z) y (*.f64 z y)) x))
33.4b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))))
4.6b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))))
4.6b
(+.f64 (*.f64 (*.f64 (-.f64 1 (*.f64 y z)) (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (cbrt.f64 x)) (*.f64 (fma.f64 (neg.f64 z) y (*.f64 z y)) x))
3.4b
(-.f64 x (*.f64 (*.f64 y z) x))
Compiler

Compiled 970 to 360 computations (62.9% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 (*.f64 y z) x))
6.2b
(*.f64 (*.f64 y z) x)

series16.0ms (0.6%)

Counts
2 → 72
Calls

2 calls:

8.0ms
(*.f64 (*.f64 y z) x)
8.0ms
(-.f64 x (*.f64 (*.f64 y z) x))

rewrite11.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
Counts
2 → 41
Calls

2 calls:

6.0ms
(-.f64 x (*.f64 (*.f64 y z) x))
4.0ms
(*.f64 (*.f64 y z) x)

simplify75.0ms (2.9%)

Algorithm
egg-herbie
Rules
968×fma-def_binary64
524×fma-neg_binary64
417×distribute-rgt-neg-in_binary64
384×distribute-lft-neg-in_binary64
279×cancel-sign-sub-inv_binary64
Counts
113 → 68
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0811123
12001077
26921049
318091047
445831047
548191047

prune37.0ms (1.5%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New67168
Fresh134
Picked011
Done112
Total69675
Error
0.0b
Counts
75 → 6
Alt Table
StatusErrorProgram
4.3b
(-.f64 x (*.f64 y (*.f64 z x)))
4.7b
(-.f64 x (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (*.f64 z x))))
33.4b
(*.f64 (sqrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))) (sqrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))))
4.6b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z))))) (cbrt.f64 (*.f64 x (-.f64 1 (*.f64 y z)))))
3.4b
(-.f64 x (*.f64 (*.f64 y z) x))
3.8b
(-.f64 x (*.f64 (*.f64 (*.f64 y z) (*.f64 (cbrt.f64 x) (cbrt.f64 x))) (cbrt.f64 x)))
Compiler

Compiled 963 to 273 computations (71.7% saved)

regimes501.0ms (19.7%)

Accuracy

Total 1.7b remaining (97.8%)

Threshold costs 0b (0%)

Counts
72 → 2
Compiler

Compiled 7818 to 5089 computations (34.9% saved)

bsearch2.0ms (0.1%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

simplify4.0ms (0.2%)

Algorithm
egg-herbie
Rules
11×*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
distribute-rgt-neg-in_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02043
14043
26043
37043
47543
57643
67543

end6.0ms (0.3%)

Compiler

Compiled 96 to 51 computations (46.9% saved)

sample843.0ms (33.1%)

Algorithm
intervals
Results
268.0ms8000×body128valid
18.0ms528×body128invalid
Compiler

Compiled 149 to 89 computations (40.3% saved)

Profiling

Loading profile data...