Details

Time bar (total: 10.0s)

analyze1.9s (19.4%)

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
1.1%98.6%0.3%12
1.9%97.8%0.3%13
7%92.7%0.3%14
Compiler

Compiled 28 to 17 computations (39.3% saved)

sample1.4s (14.1%)

Results
1.3s8254×body128valid
1.0msbody2048valid
0.0msbody256valid
Compiler

Compiled 83 to 50 computations (39.8% saved)

simplify94.0ms (0.9%)

Algorithm
egg-herbie
Rules
765×sub-neg_binary64
731×fma-neg_binary64
652×neg-mul-1_binary64
505×fma-def_binary64
495×cancel-sign-sub-inv_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01729
13729
28529
319427
448627
5100327
6192027
7340627
8407827
9443127
10491927
11508527

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
24.3b
Counts
3 → 1
Alt Table
StatusErrorProgram
24.3b
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
Compiler

Compiled 100 to 55 computations (45% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 t y) a)
1.6b
(+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a))
3.1b
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b))
22.6b
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))

series199.0ms (2%)

Counts
4 → 240
Calls

4 calls:

145.0ms
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
28.0ms
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b))
19.0ms
(+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a))
6.0ms
(*.f64 (+.f64 t y) a)

rewrite38.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
40×*-un-lft-identity_binary64
20×add-sqr-sqrt_binary64
18×add-cube-cbrt_binary64
15×times-frac_binary64
13×distribute-lft-out_binary64
Counts
4 → 105
Calls

4 calls:

13.0ms
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
7.0ms
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b))
5.0ms
(+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a))
4.0ms
(*.f64 (+.f64 t y) a)

simplify184.0ms (1.8%)

Algorithm
egg-herbie
Rules
618×associate-/l*_binary64
298×+-commutative_binary64
292×fma-def_binary64
269×distribute-rgt-in_binary64
247×distribute-lft-in_binary64
Counts
345 → 284
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
077412872
1227712422
2503012422

prune268.0ms (2.7%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New27311284
Fresh000
Picked101
Done000
Total27411285
Error
3.9b
Counts
285 → 11
Alt Table
StatusErrorProgram
28.7b
(-.f64 (+.f64 a z) b)
24.3b
(*.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (/.f64 1 (+.f64 (+.f64 x t) y)))
42.6b
(*.f64 (/.f64 a (+.f64 y (+.f64 t x))) (+.f64 y t))
44.1b
z
42.9b
a
43.2b
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 (+.f64 x t) y))) (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (sqrt.f64 (+.f64 (+.f64 x t) y))))
40.7b
(/.f64 (fma.f64 a t (*.f64 y (-.f64 a b))) (+.f64 y (+.f64 t x)))
24.4b
(/.f64 1 (/.f64 (+.f64 (+.f64 x t) y) (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b))))
24.9b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (+.f64 y (+.f64 t x))) (cbrt.f64 (+.f64 y (+.f64 t x))))) (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (cbrt.f64 (+.f64 y (+.f64 t x)))))
25.0b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (+.f64 y (+.f64 t x)))) (cbrt.f64 (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (+.f64 y (+.f64 t x))))) (cbrt.f64 (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (+.f64 y (+.f64 t x)))))
24.3b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 a y) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 z x) (+.f64 y (+.f64 t x))) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (/.f64 (*.f64 y b) (+.f64 y (+.f64 t x))))
Compiler

Compiled 13538 to 3558 computations (73.7% saved)

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
7.3b
(/.f64 (*.f64 z x) (+.f64 y (+.f64 t x)))
7.7b
(/.f64 (*.f64 y z) (+.f64 y (+.f64 t x)))
9.3b
(/.f64 (*.f64 a y) (+.f64 y (+.f64 t x)))
9.5b
(/.f64 (*.f64 y b) (+.f64 y (+.f64 t x)))

series218.0ms (2.2%)

Counts
4 → 144
Calls

4 calls:

59.0ms
(/.f64 (*.f64 y b) (+.f64 y (+.f64 t x)))
53.0ms
(/.f64 (*.f64 z x) (+.f64 y (+.f64 t x)))
53.0ms
(/.f64 (*.f64 a y) (+.f64 y (+.f64 t x)))
52.0ms
(/.f64 (*.f64 y z) (+.f64 y (+.f64 t x)))

rewrite29.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
52×*-un-lft-identity_binary64
24×distribute-lft-out_binary64
24×add-cbrt-cube_binary64
24×add-exp-log_binary64
20×associate-/r*_binary64
Counts
4 → 116
Calls

4 calls:

6.0ms
(/.f64 (*.f64 a y) (+.f64 y (+.f64 t x)))
6.0ms
(/.f64 (*.f64 z x) (+.f64 y (+.f64 t x)))
6.0ms
(/.f64 (*.f64 y b) (+.f64 y (+.f64 t x)))
6.0ms
(/.f64 (*.f64 y z) (+.f64 y (+.f64 t x)))

simplify146.0ms (1.5%)

Algorithm
egg-herbie
Rules
928×associate-/l*_binary64
273×associate-/r/_binary64
230×sub-neg_binary64
219×associate-/l/_binary64
188×+-commutative_binary64
Counts
260 → 337
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
073710472
1227610144
2504210144

prune318.0ms (3.2%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New3352337
Fresh1910
Picked101
Done000
Total33711348
Error
2.0b
Counts
348 → 11
Alt Table
StatusErrorProgram
40.7b
(/.f64 (fma.f64 a t (*.f64 y (-.f64 a b))) (+.f64 y (+.f64 t x)))
21.4b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 a y) (+.f64 y (+.f64 t x))) (+.f64 (*.f64 z (/.f64 x (+.f64 y (+.f64 t x)))) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (/.f64 (*.f64 y b) (+.f64 y (+.f64 t x))))
42.6b
(*.f64 (/.f64 a (+.f64 y (+.f64 t x))) (+.f64 y t))
44.1b
z
42.9b
a
43.2b
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 (+.f64 x t) y))) (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (sqrt.f64 (+.f64 (+.f64 x t) y))))
28.7b
(-.f64 (+.f64 a z) b)
24.4b
(/.f64 1 (/.f64 (+.f64 (+.f64 x t) y) (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b))))
21.2b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 a y) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 z x) (+.f64 y (+.f64 t x))) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b)))
24.9b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (+.f64 y (+.f64 t x))) (cbrt.f64 (+.f64 y (+.f64 t x))))) (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (cbrt.f64 (+.f64 y (+.f64 t x)))))
25.0b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (+.f64 y (+.f64 t x)))) (cbrt.f64 (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (+.f64 y (+.f64 t x))))) (cbrt.f64 (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (+.f64 y (+.f64 t x)))))
Compiler

Compiled 24109 to 4824 computations (80% saved)

localize19.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
7.3b
(/.f64 (*.f64 z x) (+.f64 y (+.f64 t x)))
7.7b
(/.f64 (*.f64 y z) (+.f64 y (+.f64 t x)))
8.4b
(/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b))
9.3b
(/.f64 (*.f64 a y) (+.f64 y (+.f64 t x)))

series52.0ms (0.5%)

Counts
1 → 48
Calls

1 calls:

52.0ms
(/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b))

rewrite20.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
117×*-un-lft-identity_binary64
117×times-frac_binary64
57×add-sqr-sqrt_binary64
57×add-cube-cbrt_binary64
36×distribute-lft-out_binary64
Counts
1 → 96
Calls

1 calls:

9.0ms
(/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b))

simplify123.0ms (1.2%)

Algorithm
egg-herbie
Rules
337×cancel-sign-sub-inv_binary64
290×times-frac_binary64
287×fma-neg_binary64
259×associate-/l*_binary64
183×sub-neg_binary64
Counts
144 → 152
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03094674
18534562
235184541
349334541
450004541

prune413.0ms (4.1%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New4123415
Fresh4610
Picked101
Done000
Total4179426
Error
0.9b
Counts
426 → 9
Alt Table
StatusErrorProgram
17.0b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 a (/.f64 (+.f64 y (+.f64 t x)) y)) (+.f64 (/.f64 (*.f64 z x) (+.f64 y (+.f64 t x))) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b)))
40.7b
(/.f64 (fma.f64 a t (*.f64 y (-.f64 a b))) (+.f64 y (+.f64 t x)))
21.4b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 a y) (+.f64 y (+.f64 t x))) (+.f64 (*.f64 z (/.f64 x (+.f64 y (+.f64 t x)))) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (/.f64 (*.f64 y b) (+.f64 y (+.f64 t x))))
42.6b
(*.f64 (/.f64 a (+.f64 y (+.f64 t x))) (+.f64 y t))
44.1b
z
28.7b
(-.f64 (+.f64 a z) b)
20.1b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 a y) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 z x) (+.f64 y (+.f64 t x))) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (*.f64 (/.f64 y (+.f64 y (+.f64 t x))) b))
24.9b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (+.f64 y (+.f64 t x))) (cbrt.f64 (+.f64 y (+.f64 t x))))) (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (cbrt.f64 (+.f64 y (+.f64 t x)))))
18.1b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 a y) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 z (/.f64 (+.f64 y (+.f64 t x)) x)) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b)))
Compiler

Compiled 28851 to 5115 computations (82.3% saved)

localize19.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.7b
(/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))
7.3b
(/.f64 (*.f64 z x) (+.f64 y (+.f64 t x)))
7.7b
(/.f64 (*.f64 y z) (+.f64 y (+.f64 t x)))
8.4b
(/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b))

series49.0ms (0.5%)

Counts
1 → 36
Calls

1 calls:

49.0ms
(/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))

rewrite7.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
13×*-un-lft-identity_binary64
distribute-lft-out_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
associate-/r*_binary64
Counts
1 → 29
Calls

1 calls:

6.0ms
(/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))

simplify87.0ms (0.9%)

Algorithm
egg-herbie
Rules
420×fma-neg_binary64
399×times-frac_binary64
346×cancel-sign-sub-inv_binary64
270×associate-/l*_binary64
222×neg-mul-1_binary64
Counts
65 → 90
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02752621
17512528
233422450
345902450
450202450

prune446.0ms (4.4%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New4082410
Fresh178
Picked101
Done000
Total4109419
Error
0.5b
Counts
419 → 9
Alt Table
StatusErrorProgram
40.7b
(/.f64 (fma.f64 a t (*.f64 y (-.f64 a b))) (+.f64 y (+.f64 t x)))
21.4b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 a y) (+.f64 y (+.f64 t x))) (+.f64 (*.f64 z (/.f64 x (+.f64 y (+.f64 t x)))) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (/.f64 (*.f64 y b) (+.f64 y (+.f64 t x))))
42.6b
(*.f64 (/.f64 a (+.f64 y (+.f64 t x))) (+.f64 y t))
44.1b
z
15.9b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 a (/.f64 (+.f64 y (+.f64 t x)) y)) (+.f64 (/.f64 (*.f64 z x) (+.f64 y (+.f64 t x))) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (*.f64 (/.f64 y (+.f64 y (+.f64 t x))) b))
28.7b
(-.f64 (+.f64 a z) b)
11.2b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 a (/.f64 (+.f64 y (+.f64 t x)) y)) (+.f64 (/.f64 (*.f64 z x) (+.f64 y (+.f64 t x))) (/.f64 a (/.f64 (+.f64 y (+.f64 t x)) t))))) (/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b)))
24.9b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (+.f64 y (+.f64 t x))) (cbrt.f64 (+.f64 y (+.f64 t x))))) (/.f64 (fma.f64 z (+.f64 y x) (fma.f64 a t (*.f64 y (-.f64 a b)))) (cbrt.f64 (+.f64 y (+.f64 t x)))))
18.1b
(-.f64 (+.f64 (/.f64 (*.f64 y z) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 (*.f64 a y) (+.f64 y (+.f64 t x))) (+.f64 (/.f64 z (/.f64 (+.f64 y (+.f64 t x)) x)) (/.f64 (*.f64 a t) (+.f64 y (+.f64 t x)))))) (/.f64 y (/.f64 (+.f64 y (+.f64 t x)) b)))
Compiler

Compiled 28090 to 4912 computations (82.5% saved)

regimes3.8s (37.4%)

Accuracy

Total 7.1b remaining (84.3%)

Threshold costs 0b (0%)

Counts
263 → 3
Compiler

Compiled 75302 to 35258 computations (53.2% saved)

bsearch14.0ms (0.1%)

Compiler

Compiled 27 to 16 computations (40.7% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
18×+-commutative_binary64
12×*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042159
168159
288159
398159
4103159
5103159

end130.0ms (1.3%)

Compiler

Compiled 543 to 220 computations (59.5% saved)

Profiling

Loading profile data...