Details

Time bar (total: 6.6s)

analyze1.9s (28.2%)

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
1.6%98.1%0.3%13
2.3%97.4%0.3%14
Compiler

Compiled 24 to 18 computations (25% saved)

sample1.9s (28%)

Symmetry

(sort y z t)

(sort a b)

Results
1.2s8256×body128valid
441.0ms2984×body128invalid
Compiler

Compiled 71 to 53 computations (25.4% saved)

simplify74.0ms (1.1%)

Algorithm
egg-herbie
Rules
712×fma-neg_binary64
641×fma-def_binary64
213×cancel-sign-sub-inv_binary64
172×distribute-rgt-neg-in_binary64
157×unsub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01825
13923
211521
330821
455221
590221
6120121
7143321
8167221
9178721
10179121
11179121
12179121
13167421

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
1.9b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))
2.5b
(+.f64 (-.f64 (*.f64 x 2) (*.f64 (*.f64 (*.f64 y 9) z) t)) (*.f64 (*.f64 a 27) b))
Compiler

Compiled 126 to 90 computations (28.6% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 z t) -9)
0.2b
(*.f64 (*.f64 a 27) b)
1.7b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))

series41.0ms (0.6%)

Counts
3 → 120
Calls

3 calls:

30.0ms
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))
6.0ms
(*.f64 (*.f64 z t) -9)
4.0ms
(*.f64 (*.f64 a 27) b)

rewrite10.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
13×add-cbrt-cube_binary64
13×add-exp-log_binary64
13×pow1_binary64
associate-*r*_binary64
cbrt-unprod_binary64
Counts
3 → 50
Calls

3 calls:

4.0ms
(*.f64 (*.f64 z t) -9)
4.0ms
(*.f64 (*.f64 a 27) b)
0.0ms
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))

simplify106.0ms (1.6%)

Algorithm
egg-herbie
Rules
432×unswap-sqr_binary64
410×*-commutative_binary64
279×distribute-lft-in_binary64
279×distribute-rgt-in_binary64
257×sqr-pow_binary64
Counts
170 → 89
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01122468
12402239
28442239
314182239
427142239
548982239
649892239

prune107.0ms (1.6%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New83689
Fresh011
Picked101
Done000
Total84791
Error
0.0b
Counts
91 → 7
Alt Table
StatusErrorProgram
2.1b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 a (*.f64 27 b))))
1.9b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 9 (*.f64 y (*.f64 t z))))
21.1b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 a 27) b) (*.f64 (*.f64 a 27) b)) (*.f64 (*.f64 a 27) b)))))
3.1b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))) (cbrt.f64 (fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 a 27) b))))) (cbrt.f64 (fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))))
1.9b
(fma.f64 y (*.f64 z (*.f64 t -9)) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))
2.5b
(+.f64 (-.f64 (*.f64 x 2) (*.f64 (*.f64 (*.f64 y 9) z) t)) (*.f64 (*.f64 a 27) b))
2.2b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 (*.f64 a 27) (*.f64 (cbrt.f64 b) (cbrt.f64 b))) (cbrt.f64 b))))
Compiler

Compiled 2136 to 1244 computations (41.8% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 9 (*.f64 y (*.f64 t z))))
0.3b
(*.f64 27 (*.f64 a b))
0.3b
(*.f64 9 (*.f64 y (*.f64 t z)))
4.8b
(*.f64 y (*.f64 t z))

series62.0ms (0.9%)

Counts
4 → 18
Calls

4 calls:

36.0ms
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 9 (*.f64 y (*.f64 t z))))
12.0ms
(*.f64 y (*.f64 t z))
10.0ms
(*.f64 9 (*.f64 y (*.f64 t z)))
4.0ms
(*.f64 27 (*.f64 a b))

rewrite27.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
23×add-cbrt-cube_binary64
23×add-exp-log_binary64
23×pow1_binary64
12×cbrt-unprod_binary64
12×prod-exp_binary64
Counts
4 → 85
Calls

4 calls:

11.0ms
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 9 (*.f64 y (*.f64 t z))))
5.0ms
(*.f64 9 (*.f64 y (*.f64 t z)))
4.0ms
(*.f64 27 (*.f64 a b))
4.0ms
(*.f64 y (*.f64 t z))

simplify83.0ms (1.3%)

Algorithm
egg-herbie
Rules
535×*-commutative_binary64
493×cancel-sign-sub-inv_binary64
462×fma-def_binary64
344×fma-neg_binary64
215×associate-*r*_binary64
Counts
103 → 110
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01491662
13451372
212381339
333341327
449461327
548101327

prune106.0ms (1.6%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1073110
Fresh246
Picked101
Done000
Total1107117
Error
0.0b
Counts
117 → 7
Alt Table
StatusErrorProgram
2.1b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 a (*.f64 27 b))))
2.0b
(-.f64 (+.f64 (*.f64 (sqrt.f64 27) (*.f64 (sqrt.f64 27) (*.f64 a b))) (*.f64 2 x)) (*.f64 9 (*.f64 y (*.f64 t z))))
1.9b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 (*.f64 9 y) (*.f64 t z)))
7.4b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 9 (*.f64 (*.f64 y t) z)))
1.9b
(fma.f64 y (*.f64 z (*.f64 t -9)) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))
2.5b
(+.f64 (-.f64 (*.f64 x 2) (*.f64 (*.f64 (*.f64 y 9) z) t)) (*.f64 (*.f64 a 27) b))
2.2b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 (*.f64 a 27) (*.f64 (cbrt.f64 b) (cbrt.f64 b))) (cbrt.f64 b))))
Compiler

Compiled 2958 to 1567 computations (47% saved)

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 (*.f64 9 y) (*.f64 t z)))
0.3b
(*.f64 27 (*.f64 a b))
4.9b
(*.f64 (*.f64 9 y) (*.f64 t z))

series44.0ms (0.7%)

Counts
2 → 108
Calls

2 calls:

34.0ms
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 (*.f64 9 y) (*.f64 t z)))
10.0ms
(*.f64 (*.f64 9 y) (*.f64 t z))

rewrite16.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
14×add-cbrt-cube_binary64
14×add-exp-log_binary64
14×pow1_binary64
cbrt-unprod_binary64
prod-exp_binary64
Counts
2 → 46
Calls

2 calls:

7.0ms
(*.f64 (*.f64 9 y) (*.f64 t z))
7.0ms
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 (*.f64 9 y) (*.f64 t z)))

simplify85.0ms (1.3%)

Algorithm
egg-herbie
Rules
620×distribute-rgt-neg-in_binary64
553×fma-def_binary64
408×*-commutative_binary64
278×fma-neg_binary64
231×cancel-sign-sub-inv_binary64
Counts
154 → 78
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01072758
12672532
210382500
333462488
449722488

prune100.0ms (1.5%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New98098
Fresh066
Picked011
Done000
Total987105
Error
0.0b
Counts
105 → 7
Alt Table
StatusErrorProgram
2.1b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 a (*.f64 27 b))))
2.0b
(-.f64 (+.f64 (*.f64 (sqrt.f64 27) (*.f64 (sqrt.f64 27) (*.f64 a b))) (*.f64 2 x)) (*.f64 9 (*.f64 y (*.f64 t z))))
1.9b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 (*.f64 9 y) (*.f64 t z)))
7.4b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 9 (*.f64 (*.f64 y t) z)))
1.9b
(fma.f64 y (*.f64 z (*.f64 t -9)) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))
2.5b
(+.f64 (-.f64 (*.f64 x 2) (*.f64 (*.f64 (*.f64 y 9) z) t)) (*.f64 (*.f64 a 27) b))
2.2b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 (*.f64 a 27) (*.f64 (cbrt.f64 b) (cbrt.f64 b))) (cbrt.f64 b))))
Compiler

Compiled 2661 to 1521 computations (42.8% saved)

localize10.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 z (*.f64 t -9))
0.2b
(*.f64 (*.f64 a 27) b)
1.7b
(fma.f64 y (*.f64 z (*.f64 t -9)) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))

series35.0ms (0.5%)

Counts
2 → 96
Calls

2 calls:

30.0ms
(fma.f64 y (*.f64 z (*.f64 t -9)) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))
4.0ms
(*.f64 z (*.f64 t -9))

rewrite5.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
associate-*l*_binary64
cbrt-unprod_binary64
Counts
2 → 30
Calls

2 calls:

4.0ms
(*.f64 z (*.f64 t -9))
0.0ms
(fma.f64 y (*.f64 z (*.f64 t -9)) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))

simplify105.0ms (1.6%)

Algorithm
egg-herbie
Rules
518×distribute-lft-in_binary64
518×distribute-rgt-in_binary64
508×associate-*l*_binary64
374×fma-neg_binary64
362×associate-*r*_binary64
Counts
126 → 60
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0732086
11531893
24341893
313591893
439241893
547901893
650381893

prune81.0ms (1.2%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New89089
Fresh055
Picked011
Done011
Total89796
Error
0.0b
Counts
96 → 7
Alt Table
StatusErrorProgram
2.1b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 a (*.f64 27 b))))
2.0b
(-.f64 (+.f64 (*.f64 (sqrt.f64 27) (*.f64 (sqrt.f64 27) (*.f64 a b))) (*.f64 2 x)) (*.f64 9 (*.f64 y (*.f64 t z))))
1.9b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 (*.f64 9 y) (*.f64 t z)))
7.4b
(-.f64 (+.f64 (*.f64 27 (*.f64 a b)) (*.f64 2 x)) (*.f64 9 (*.f64 (*.f64 y t) z)))
1.9b
(fma.f64 y (*.f64 z (*.f64 t -9)) (fma.f64 x 2 (*.f64 (*.f64 a 27) b)))
2.5b
(+.f64 (-.f64 (*.f64 x 2) (*.f64 (*.f64 (*.f64 y 9) z) t)) (*.f64 (*.f64 a 27) b))
2.2b
(fma.f64 y (*.f64 (*.f64 z t) -9) (fma.f64 x 2 (*.f64 (*.f64 (*.f64 a 27) (*.f64 (cbrt.f64 b) (cbrt.f64 b))) (cbrt.f64 b))))
Compiler

Compiled 1890 to 1128 computations (40.3% saved)

regimes986.0ms (14.9%)

Accuracy

Total 0.4b remaining (95.3%)

Threshold costs 0.4b (95.3%)

Counts
48 → 2
Compiler

Compiled 18526 to 13227 computations (28.6% saved)

bsearch13.0ms (0.2%)

Steps
ItersRangePoint
2
2.0966833998934486e-21
1.808632963508904e-17
1.7986634846681185e-18
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify4.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02952
14552
26152
37752
48752
59252
69352
79252

end748.0ms (11.3%)

Compiler

Compiled 418 to 294 computations (29.7% saved)

Profiling

Loading profile data...