Details

Time bar (total: 3.8s)

analyze850.0ms (22.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
18.7%81.1%0.2%9
21.8%78%0.2%10
25%74.9%0.2%11
34.7%64.9%0.4%12
47.2%51.9%0.9%13
49%49.2%1.8%14
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample1.2s (30.9%)

Symmetry

(sort a1 a2)

(sort b1 b2)

Results
922.0ms8256×body128valid
214.0ms1970×body128invalid
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify8.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11710
23810
36310
46910
56810
66810

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
11.4b
Counts
2 → 1
Alt Table
StatusErrorProgram
11.4b
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
Compiler

Compiled 33 to 21 computations (36.4% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
11.0b
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))

series29.0ms (0.8%)

Counts
1 → 48
Calls

1 calls:

29.0ms
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))

rewrite11.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
13×add-cbrt-cube_binary64
13×add-exp-log_binary64
cbrt-unprod_binary64
cbrt-undiv_binary64
div-exp_binary64
Counts
1 → 23
Calls

1 calls:

4.0ms
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))

simplify85.0ms (2.2%)

Algorithm
egg-herbie
Rules
579×associate-/r*_binary64
476×associate-*l*_binary64
457×associate-*l/_binary64
355×associate-*r/_binary64
344×associate-*r*_binary64
Counts
71 → 36
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
058859
1161754
2820754
33799754
44127754
54478754
64861754
75308754

prune29.0ms (0.7%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New30636
Fresh000
Picked011
Done000
Total30737
Error
0.0b
Counts
37 → 7
Alt Table
StatusErrorProgram
11.4b
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
11.5b
(*.f64 (*.f64 a1 a2) (/.f64 1 (*.f64 b1 b2)))
12.6b
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
33.6b
(cbrt.f64 (pow.f64 (/.f64 (*.f64 a1 a2) (*.f64 b2 b1)) 3))
12.3b
(/.f64 (*.f64 a2 (/.f64 a1 b1)) b2)
12.0b
(/.f64 (/.f64 (*.f64 a1 a2) b1) b2)
12.0b
(/.f64 a1 (/.f64 b1 (/.f64 a2 b2)))
Compiler

Compiled 603 to 212 computations (64.8% saved)

localize7.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.4b
(/.f64 1 (*.f64 b1 b2))
11.0b
(*.f64 (*.f64 a1 a2) (/.f64 1 (*.f64 b1 b2)))

series40.0ms (1%)

Counts
2 → 72
Calls

2 calls:

32.0ms
(*.f64 (*.f64 a1 a2) (/.f64 1 (*.f64 b1 b2)))
8.0ms
(/.f64 1 (*.f64 b1 b2))

rewrite16.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
58×add-exp-log_binary64
30×prod-exp_binary64
28×add-cbrt-cube_binary64
12×cbrt-unprod_binary64
12×div-exp_binary64
Counts
2 → 72
Calls

2 calls:

7.0ms
(*.f64 (*.f64 a1 a2) (/.f64 1 (*.f64 b1 b2)))
3.0ms
(/.f64 1 (*.f64 b1 b2))

simplify86.0ms (2.3%)

Algorithm
egg-herbie
Rules
452×associate-*r/_binary64
437×associate-*l/_binary64
362×unswap-sqr_binary64
313×associate-/l*_binary64
310×sqr-pow_binary64
Counts
144 → 94
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0911533
12101338
27601338
327221338
432071338
540111338
650381338

prune50.0ms (1.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New93194
Fresh145
Picked101
Done011
Total956101
Error
0.0b
Counts
101 → 6
Alt Table
StatusErrorProgram
12.6b
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
12.3b
(/.f64 (*.f64 a2 (/.f64 a1 b1)) b2)
12.0b
(/.f64 (/.f64 (*.f64 a1 a2) b1) b2)
12.0b
(/.f64 a1 (/.f64 b1 (/.f64 a2 b2)))
11.4b
(*.f64 a1 (*.f64 a2 (/.f64 1 (*.f64 b1 b2))))
11.4b
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
Compiler

Compiled 1466 to 629 computations (57.1% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.4b
(/.f64 1 (*.f64 b1 b2))
5.6b
(*.f64 a2 (/.f64 1 (*.f64 b1 b2)))
6.7b
(*.f64 a1 (*.f64 a2 (/.f64 1 (*.f64 b1 b2))))

series46.0ms (1.2%)

Counts
2 → 84
Calls

2 calls:

29.0ms
(*.f64 a1 (*.f64 a2 (/.f64 1 (*.f64 b1 b2))))
17.0ms
(*.f64 a2 (/.f64 1 (*.f64 b1 b2)))

rewrite18.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
49×add-exp-log_binary64
28×prod-exp_binary64
25×add-cbrt-cube_binary64
12×cbrt-unprod_binary64
pow1_binary64
Counts
2 → 64
Calls

2 calls:

7.0ms
(*.f64 a2 (/.f64 1 (*.f64 b1 b2)))
7.0ms
(*.f64 a1 (*.f64 a2 (/.f64 1 (*.f64 b1 b2))))

simplify119.0ms (3.1%)

Algorithm
egg-herbie
Rules
516×associate-*r/_binary64
515×times-frac_binary64
437×associate-*l/_binary64
306×sqr-pow_binary64
227×fma-neg_binary64
Counts
148 → 89
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0991536
12181365
27431365
332181365
436001365
542931365
648511365
749691365
850941365

prune71.0ms (1.9%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1271128
Fresh044
Picked011
Done011
Total1277134
Error
0.0b
Counts
134 → 7
Alt Table
StatusErrorProgram
10.6b
(*.f64 a1 (*.f64 (/.f64 a2 b1) (/.f64 1 b2)))
12.0b
(/.f64 (/.f64 (*.f64 a1 a2) b1) b2)
12.6b
(*.f64 (/.f64 a1 b1) (/.f64 a2 b2))
12.3b
(/.f64 (*.f64 a2 (/.f64 a1 b1)) b2)
12.0b
(/.f64 a1 (/.f64 b1 (/.f64 a2 b2)))
11.4b
(*.f64 a1 (*.f64 a2 (/.f64 1 (*.f64 b1 b2))))
11.4b
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
Compiler

Compiled 1933 to 907 computations (53.1% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
4.5b
(*.f64 (/.f64 a2 b1) (/.f64 1 b2))
6.7b
(*.f64 a1 (*.f64 (/.f64 a2 b1) (/.f64 1 b2)))

series44.0ms (1.1%)

Counts
2 → 84
Calls

2 calls:

27.0ms
(*.f64 a1 (*.f64 (/.f64 a2 b1) (/.f64 1 b2)))
17.0ms
(*.f64 (/.f64 a2 b1) (/.f64 1 b2))

rewrite25.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
56×add-exp-log_binary64
34×add-sqr-sqrt_binary64
32×add-cbrt-cube_binary64
25×times-frac_binary64
25×prod-exp_binary64
Counts
2 → 93
Calls

2 calls:

11.0ms
(*.f64 (/.f64 a2 b1) (/.f64 1 b2))
7.0ms
(*.f64 a1 (*.f64 (/.f64 a2 b1) (/.f64 1 b2)))

simplify121.0ms (3.2%)

Algorithm
egg-herbie
Rules
573×associate-*l/_binary64
338×associate-/l*_binary64
329×fma-def_binary64
315×unswap-sqr_binary64
288×sqr-pow_binary64
Counts
177 → 136
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01371987
13281735
29561735
325701735
430641735
538461735
647591735
749761735

prune75.0ms (2%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New1342136
Fresh224
Picked011
Done022
Total1367143
Error
0.0b
Counts
143 → 7
Alt Table
StatusErrorProgram
10.6b
(*.f64 a1 (*.f64 (/.f64 a2 b1) (/.f64 1 b2)))
12.2b
(/.f64 (*.f64 a1 (/.f64 a2 b1)) b2)
11.9b
(*.f64 a1 (/.f64 (/.f64 a2 b2) b1))
12.3b
(/.f64 (*.f64 a2 (/.f64 a1 b1)) b2)
12.0b
(/.f64 a1 (/.f64 b1 (/.f64 a2 b2)))
11.4b
(*.f64 a1 (*.f64 a2 (/.f64 1 (*.f64 b1 b2))))
11.4b
(/.f64 (*.f64 a1 a2) (*.f64 b1 b2))
Compiler

Compiled 2145 to 899 computations (58.1% saved)

regimes517.0ms (13.5%)

Accuracy

Total 3.1b remaining (98.9%)

Threshold costs 0b (0%)

Counts
27 → 5
Compiler

Compiled 3497 to 2039 computations (41.7% saved)

bsearch1.0ms (0%)

Compiler

Compiled 11 to 7 computations (36.4% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027110
131110
231110

end370.0ms (9.7%)

Compiler

Compiled 555 to 203 computations (63.4% saved)

Profiling

Loading profile data...