Details

Time bar (total: 10.7s)

analyze2.1s (19.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
0%99.7%0.3%6
0%99.7%0.3%7
0%99.7%0.3%8
0%99.7%0.3%9
0%99.7%0.3%10
0%99.7%0.3%11
0%99.7%0.3%12
0%99.7%0.3%13
0%99.7%0.3%14
Compiler

Compiled 27 to 19 computations (29.6% saved)

sample2.5s (23.3%)

Symmetry

(sort x y)

(sort t a)

Results
1.5s8256×body128valid
940.0ms5003×body128invalid
Compiler

Compiled 80 to 56 computations (30% saved)

simplify65.0ms (0.6%)

Algorithm
egg-herbie
Rules
828×fma-def_binary64
568×div-sub_binary64
502×associate-/r/_binary64
476×distribute-neg-frac_binary64
465×cancel-sign-sub-inv_binary64
Counts
1 → 2
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01928
14228
211624
335224
488023
5204121
6415421
7436521
8494121

prune5.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
7.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
12.4b
(/.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) c)
21.3b
(/.f64 (+.f64 (-.f64 (*.f64 (*.f64 x 9) y) (*.f64 (*.f64 (*.f64 z 4) t) a)) b) (*.f64 z c))
Compiler

Compiled 137 to 92 computations (32.8% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z))
0.3b
(fma.f64 x (*.f64 9 y) b)
2.2b
(/.f64 (fma.f64 x (*.f64 9 y) b) z)
9.8b
(/.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) c)

series140.0ms (1.3%)

Counts
4 → 240
Calls

4 calls:

78.0ms
(/.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) c)
35.0ms
(fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z))
20.0ms
(/.f64 (fma.f64 x (*.f64 9 y) b) z)
6.0ms
(fma.f64 x (*.f64 9 y) b)

rewrite78.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
334×prod-diff_binary64
302×log1p-udef_binary64
166×add-sqr-sqrt_binary64
155×add-log-exp_binary64
155×log1p-expm1-u_binary64
Counts
4 → 116
Calls

4 calls:

76.0ms
(fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z))
76.0ms
(fma.f64 x (*.f64 9 y) b)
76.0ms
(/.f64 (fma.f64 x (*.f64 9 y) b) z)
76.0ms
(/.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) c)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01658
133058
2397458
3510458

simplify333.0ms (3.1%)

Algorithm
egg-herbie
Rules
834×associate-/r/_binary64
656×div-sub_binary64
485×distribute-lft-neg-in_binary64
456×unsub-neg_binary64
438×fma-neg_binary64
Counts
356 → 150
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
0434761
11134427
22724179
37153981
413843981
524583981
634733486
739333486
839233486
940583486
1041273486
1141433486
1248653486
1349283486

prune289.0ms (2.7%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New13812150
Fresh011
Picked101
Done000
Total13913152
Error
6.4b
Counts
152 → 13
Alt Table
StatusErrorProgram
39.7b
(*.f64 (sqrt.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z))) (*.f64 (sqrt.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z))) (/.f64 1 c)))
27.8b
(/.f64 (fma.f64 (*.f64 a t) -4 (/.f64 b z)) c)
13.3b
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z))) 2) (*.f64 (cbrt.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z))) (/.f64 1 c)))
41.4b
(*.f64 -4 (/.f64 (*.f64 a t) c))
21.3b
(/.f64 (+.f64 (-.f64 (*.f64 (*.f64 x 9) y) (*.f64 (*.f64 (*.f64 z 4) t) a)) b) (*.f64 z c))
12.3b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
44.1b
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) c) 3))
31.6b
(/.f64 (+.f64 (*.f64 9 (/.f64 (*.f64 y x) z)) (/.f64 b z)) c)
12.5b
(*.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) (/.f64 1 c))
37.0b
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) c)) 2)
13.2b
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) c)) 3)
46.6b
(/.f64 b (*.f64 c z))
39.4b
(*.f64 (/.f64 1 (sqrt.f64 c)) (/.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) (sqrt.f64 c)))
Compiler

Compiled 3601 to 2140 computations (40.6% saved)

localize18.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))
4.3b
(/.f64 b (*.f64 c z))
6.7b
(/.f64 (*.f64 a t) c)
10.3b
(/.f64 (*.f64 y x) (*.f64 c z))

series88.0ms (0.8%)

Counts
4 → 0
Calls

4 calls:

32.0ms
(*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))
28.0ms
(/.f64 (*.f64 y x) (*.f64 c z))
15.0ms
(/.f64 b (*.f64 c z))
13.0ms
(/.f64 (*.f64 a t) c)

rewrite84.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
174×times-frac_binary64
174×add-sqr-sqrt_binary64
167×egg-rr
162×add-log-exp_binary64
162×log1p-expm1-u_binary64
Counts
4 → 167
Calls

4 calls:

81.0ms
(*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))
81.0ms
(/.f64 b (*.f64 c z))
81.0ms
(/.f64 (*.f64 a t) c)
81.0ms
(/.f64 (*.f64 y x) (*.f64 c z))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01637
134437
2491937
3512837

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Counts
167 → 167
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
100

prune217.0ms (2%)

Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New15611167
Fresh9312
Picked101
Done000
Total16614180
Error
0.7b
Counts
180 → 14
Alt Table
StatusErrorProgram
11.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 (/.f64 a 1) (/.f64 t c))))
12.5b
(*.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) (/.f64 1 c))
12.3b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 9 (/.f64 (*.f64 c z) (*.f64 y x)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
14.3b
(-.f64 (+.f64 (*.f64 (/.f64 b c) (/.f64 1 z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
12.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 (*.f64 (/.f64 (*.f64 y x) c) 9) z)) (*.f64 4 (/.f64 (*.f64 a t) c)))
40.0b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 (/.f64 a (sqrt.f64 c)) (/.f64 t (sqrt.f64 c)))))
14.4b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 (*.f64 y 9) (/.f64 c (/.f64 x z)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
31.6b
(/.f64 (+.f64 (*.f64 9 (/.f64 (*.f64 y x) z)) (/.f64 b z)) c)
13.5b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 y z) (/.f64 x c)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
12.0b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 t (*.f64 a (/.f64 1 c)))))
12.1b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 a (/.f64 1 (/.f64 c t)))))
46.6b
(/.f64 b (*.f64 c z))
12.9b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 y c) (/.f64 x z)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
21.4b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 (/.f64 t (cbrt.f64 (*.f64 c c))) (/.f64 a (cbrt.f64 c)))))
Compiler

Compiled 5374 to 2068 computations (61.5% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))
4.3b
(/.f64 b (*.f64 c z))
5.6b
(*.f64 (/.f64 a 1) (/.f64 t c))
10.3b
(/.f64 (*.f64 y x) (*.f64 c z))

series12.0ms (0.1%)

Counts
1 → 36
Calls

1 calls:

12.0ms
(*.f64 (/.f64 a 1) (/.f64 t c))

rewrite104.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
713×log1p-expm1-u_binary64
713×expm1-log1p-u_binary64
129×expm1-udef_binary64
129×log1p-udef_binary64
90×fma-neg_binary64
Counts
1 → 46
Calls

1 calls:

103.0ms
(*.f64 (/.f64 a 1) (/.f64 t c))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
087
11507
218667
349797
449967
550077

simplify14.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Counts
82 → 46
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06252
19252
213252
316252
417252
517252

prune247.0ms (2.3%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New1664170
Fresh4913
Picked011
Done000
Total17014184
Error
0.0b
Counts
184 → 14
Alt Table
StatusErrorProgram
14.4b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 (*.f64 y 9) (/.f64 c (/.f64 x z)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
11.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (/.f64 (/.f64 t c) (/.f64 1 a))))
11.2b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 x z) (/.f64 y c)))) (*.f64 4 (*.f64 (/.f64 a 1) (/.f64 t c))))
11.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 (/.f64 a 1) (/.f64 t c))))
12.5b
(*.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) (/.f64 1 c))
12.3b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 9 (/.f64 (*.f64 c z) (*.f64 y x)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
14.3b
(-.f64 (+.f64 (*.f64 (/.f64 b c) (/.f64 1 z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
31.6b
(/.f64 (+.f64 (*.f64 9 (/.f64 (*.f64 y x) z)) (/.f64 b z)) c)
11.7b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (/.f64 a (/.f64 c t))))
12.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 (*.f64 (/.f64 (*.f64 y x) c) 9) z)) (*.f64 4 (/.f64 (*.f64 a t) c)))
40.0b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 (/.f64 a (sqrt.f64 c)) (/.f64 t (sqrt.f64 c)))))
10.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 y (*.f64 c z)) x))) (*.f64 4 (*.f64 (/.f64 a 1) (/.f64 t c))))
13.5b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 y z) (/.f64 x c)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
12.0b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 t (*.f64 a (/.f64 1 c)))))
Compiler

Compiled 5643 to 2466 computations (56.3% saved)

localize20.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.3b
(/.f64 b (*.f64 c z))
5.5b
(/.f64 y (*.f64 c z))
5.6b
(*.f64 (/.f64 a 1) (/.f64 t c))
7.2b
(*.f64 (/.f64 y (*.f64 c z)) x)

series47.0ms (0.4%)

Counts
2 → 48
Calls

2 calls:

29.0ms
(*.f64 (/.f64 y (*.f64 c z)) x)
18.0ms
(/.f64 y (*.f64 c z))

rewrite55.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
867×log1p-expm1-u_binary64
867×expm1-log1p-u_binary64
86×add-sqr-sqrt_binary64
79×add-log-exp_binary64
78×add-cube-cbrt_binary64
Counts
2 → 71
Calls

2 calls:

54.0ms
(/.f64 y (*.f64 c z))
54.0ms
(*.f64 (/.f64 y (*.f64 c z)) x)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
116617
2222917
3542717

simplify21.0ms (0.2%)

Algorithm
egg-herbie
Rules
14×associate-/l*_binary64
associate-*r/_binary64
associate-/r/_binary64
*-commutative_binary64
associate-/r*_binary64
Counts
119 → 71
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08480
117480
238480
363480
469480
568480
668480

prune224.0ms (2.1%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New1543157
Fresh3912
Picked101
Done011
Total15813171
Error
0.0b
Counts
171 → 13
Alt Table
StatusErrorProgram
14.4b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 (*.f64 y 9) (/.f64 c (/.f64 x z)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
11.2b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 x z) (/.f64 y c)))) (*.f64 4 (*.f64 (/.f64 a 1) (/.f64 t c))))
11.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 (/.f64 a 1) (/.f64 t c))))
12.5b
(*.f64 (fma.f64 t (*.f64 a -4) (/.f64 (fma.f64 x (*.f64 9 y) b) z)) (/.f64 1 c))
12.3b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 9 (/.f64 (*.f64 c z) (*.f64 y x)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
14.3b
(-.f64 (+.f64 (*.f64 (/.f64 b c) (/.f64 1 z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
12.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (/.f64 (*.f64 (/.f64 (*.f64 y x) c) 9) z)) (*.f64 4 (/.f64 (*.f64 a t) c)))
40.0b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (/.f64 (*.f64 y x) (*.f64 c z)))) (*.f64 4 (*.f64 (/.f64 a (sqrt.f64 c)) (/.f64 t (sqrt.f64 c)))))
31.6b
(/.f64 (+.f64 (*.f64 9 (/.f64 (*.f64 y x) z)) (/.f64 b z)) c)
13.5b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 y z) (/.f64 x c)))) (*.f64 4 (/.f64 (*.f64 a t) c)))
10.8b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 y (*.f64 c z)) x))) (*.f64 4 (/.f64 a (/.f64 c t))))
10.7b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 y (*.f64 c z)) x))) (*.f64 4 (/.f64 t (*.f64 c (/.f64 1 a)))))
10.6b
(-.f64 (+.f64 (/.f64 b (*.f64 c z)) (*.f64 9 (*.f64 (/.f64 y (*.f64 c z)) x))) (*.f64 4 (/.f64 (/.f64 t c) (/.f64 1 a))))
Compiler

Compiled 4844 to 2076 computations (57.1% saved)

regimes3.4s (32.1%)

Accuracy

Total 4.0b remaining (99%)

Threshold costs 0b (0%)

Counts
126 → 5
Compiler

Compiled 36576 to 24806 computations (32.2% saved)

bsearch5.0ms (0.1%)

Compiler

Compiled 26 to 18 computations (30.8% saved)

simplify11.0ms (0.1%)

Algorithm
egg-herbie
Rules
28×*-commutative_binary64
18×+-commutative_binary64
15×sub-neg_binary64
14×distribute-rgt-neg-in_binary64
13×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062277
196277
2123277
3154277
4179277
5190277
6193277
7191277

end562.0ms (5.2%)

Compiler

Compiled 1552 to 923 computations (40.5% saved)

Profiling

Loading profile data...