Details

Time bar (total: 10.2s)

analyze1.9s (18.5%)

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
0%99.8%0.2%9
1.6%98.2%0.2%10
3.1%90.4%6.5%11
9.2%84.4%6.5%12
13%80.6%6.5%13
24.8%68.7%6.5%14
Compiler

Compiled 20 to 13 computations (35% saved)

sample1.8s (17.5%)

Symmetry

(sort x y)

(sort t a)

Results
1.2s8256×body128valid
450.0ms3221×body128invalid
Compiler

Compiled 59 to 38 computations (35.6% saved)

simplify61.0ms (0.6%)

Algorithm
egg-herbie
Rules
1034×fma-def_binary64
336×fma-neg_binary64
138×distribute-rgt-in_binary64
130×cancel-sign-sub-inv_binary64
128×associate-/r/_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01321
12621
25221
38721
412821
516121
620321
724721
846421
982221
10123421
11116921
12123721
13131121
14137521
15137521
16128221

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 57 to 36 computations (36.8% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(-.f64 (*.f64 z z) (*.f64 t a))
5.9b
(*.f64 (*.f64 x y) z)
8.9b
(/.f64 (*.f64 (*.f64 x y) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
26.0b
(sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))

series202.0ms (2%)

Counts
4 → 136
Calls

4 calls:

159.0ms
(/.f64 (*.f64 (*.f64 x y) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
27.0ms
(sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))
8.0ms
(*.f64 (*.f64 x y) z)
8.0ms
(-.f64 (*.f64 z z) (*.f64 t a))

rewrite22.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
18×add-cbrt-cube_binary64
18×add-exp-log_binary64
11×add-sqr-sqrt_binary64
10×*-un-lft-identity_binary64
10×add-cube-cbrt_binary64
Counts
4 → 86
Calls

4 calls:

6.0ms
(/.f64 (*.f64 (*.f64 x y) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
5.0ms
(sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a)))
4.0ms
(*.f64 (*.f64 x y) z)
3.0ms
(-.f64 (*.f64 z z) (*.f64 t a))

simplify131.0ms (1.3%)

Algorithm
egg-herbie
Rules
731×fma-def_binary64
379×times-frac_binary64
318×associate-*r*_binary64
293×associate-*l*_binary64
277×associate-/l*_binary64
Counts
222 → 190
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02834463
18424196
238994138
349614138
449764138

prune154.0ms (1.5%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New17911190
Fresh000
Picked101
Done000
Total18011191
Error
4.8b
Counts
191 → 11
Alt Table
StatusErrorProgram
25.4b
(/.f64 (*.f64 (*.f64 y x) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
23.5b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
29.0b
(*.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 y (*.f64 z x)) (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))) (cbrt.f64 (/.f64 (*.f64 y (*.f64 z x)) (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z)))) (cbrt.f64 (/.f64 (*.f64 y (*.f64 z x)) (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))))
28.6b
(/.f64 (*.f64 (*.f64 x y) z) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))))
24.9b
(*.f64 (/.f64 (*.f64 y x) (sqrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))) (/.f64 z (sqrt.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))))
37.7b
(neg.f64 (*.f64 y x))
39.7b
(*.f64 y x)
27.0b
(*.f64 (*.f64 y (*.f64 z x)) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 z 2) (*.f64 a t)))))
26.5b
(/.f64 (*.f64 x (*.f64 y z)) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
42.2b
(exp.f64 (log.f64 (/.f64 (*.f64 y (*.f64 z x)) (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z))))
40.9b
(/.f64 (*.f64 (sqrt.f64 (*.f64 y (*.f64 z x))) (sqrt.f64 (*.f64 y (*.f64 z x)))) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
Compiler

Compiled 5182 to 1597 computations (69.2% saved)

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z)
3.6b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
17.0b
(sqrt.f64 (neg.f64 (*.f64 a t)))

series438.0ms (4.3%)

Counts
3 → 52
Calls

3 calls:

333.0ms
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
93.0ms
(/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z)
11.0ms
(sqrt.f64 (neg.f64 (*.f64 a t)))

rewrite14.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
40×times-frac_binary64
27×add-sqr-sqrt_binary64
26×*-un-lft-identity_binary64
26×add-cube-cbrt_binary64
17×add-cbrt-cube_binary64
Counts
3 → 95
Calls

3 calls:

5.0ms
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z))
2.0ms
(/.f64 (hypot.f64 (sqrt.f64 (neg.f64 (*.f64 a t))) z) z)
1.0ms
(sqrt.f64 (neg.f64 (*.f64 a t)))

simplify91.0ms (0.9%)

Algorithm
egg-herbie
Rules
641×associate-/r/_binary64
607×associate-*r/_binary64
266×fma-def_binary64
200×cancel-sign-sub-inv_binary64
157×associate-/l*_binary64
Counts
147 → 175
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02684134
16543630
224023587
352063587

prune117.0ms (1.1%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1741175
Fresh4610
Picked101
Done000
Total1797186
Error
1.4b
Counts
186 → 7
Alt Table
StatusErrorProgram
24.8b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))
37.7b
(neg.f64 (*.f64 y x))
39.7b
(*.f64 y x)
27.0b
(*.f64 (*.f64 y (*.f64 z x)) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 z 2) (*.f64 a t)))))
25.4b
(/.f64 (*.f64 (*.f64 y x) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
26.5b
(/.f64 (*.f64 x (*.f64 y z)) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
40.9b
(/.f64 (*.f64 (sqrt.f64 (*.f64 y (*.f64 z x))) (sqrt.f64 (*.f64 y (*.f64 z x)))) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
Compiler

Compiled 4629 to 1241 computations (73.2% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)
0.2b
(*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t)))
3.6b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))

series426.0ms (4.2%)

Counts
3 → 52
Calls

3 calls:

314.0ms
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))
99.0ms
(/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)
12.0ms
(*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t)))

rewrite22.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
41×add-sqr-sqrt_binary64
40×times-frac_binary64
31×*-un-lft-identity_binary64
31×add-cube-cbrt_binary64
19×add-cbrt-cube_binary64
Counts
3 → 117
Calls

3 calls:

6.0ms
(*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t)))
5.0ms
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z))
2.0ms
(/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z)

simplify170.0ms (1.7%)

Algorithm
egg-herbie
Rules
648×fma-def_binary64
217×associate-*r*_binary64
216×associate-*l*_binary64
205×cancel-sign-sub-inv_binary64
185×fma-neg_binary64
Counts
169 → 232
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03294800
18494428
230294227
345904225
449804225
549314225

prune176.0ms (1.7%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New2257232
Fresh336
Picked101
Done000
Total22910239
Error
0b
Counts
239 → 10
Alt Table
StatusErrorProgram
26.9b
(/.f64 x (/.f64 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z) y))
29.1b
(*.f64 (/.f64 x (*.f64 (cbrt.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)) (cbrt.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)))) (/.f64 y (/.f64 (cbrt.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)) z)))
41.7b
(*.f64 (/.f64 (*.f64 y (*.f64 z x)) (sqrt.f64 (neg.f64 t))) (sqrt.f64 (/.f64 1 a)))
39.7b
(*.f64 y x)
29.0b
(*.f64 (*.f64 (/.f64 x (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)) y) z)
24.7b
(*.f64 (*.f64 x y) (/.f64 z (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)))
37.7b
(neg.f64 (*.f64 y x))
24.8b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 (*.f64 (cbrt.f64 a) (cbrt.f64 a))) (*.f64 (sqrt.f64 (cbrt.f64 a)) (sqrt.f64 (neg.f64 t)))) z) z))
25.4b
(/.f64 (*.f64 (*.f64 y x) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
29.5b
(/.f64 x (/.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z) (*.f64 z y)))
Compiler

Compiled 6445 to 1844 computations (71.4% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 z (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z))
0.2b
(*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a))
3.6b
(*.f64 (*.f64 x y) (/.f64 z (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)))

series448.0ms (4.4%)

Counts
3 → 52
Calls

3 calls:

318.0ms
(*.f64 (*.f64 x y) (/.f64 z (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)))
118.0ms
(/.f64 z (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z))
12.0ms
(*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a))

rewrite22.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
34×add-sqr-sqrt_binary64
24×*-un-lft-identity_binary64
24×add-cube-cbrt_binary64
19×associate-*r*_binary64
19×add-cbrt-cube_binary64
Counts
3 → 104
Calls

3 calls:

7.0ms
(*.f64 (*.f64 x y) (/.f64 z (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)))
6.0ms
(*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a))
2.0ms
(/.f64 z (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z))

simplify121.0ms (1.2%)

Algorithm
egg-herbie
Rules
596×fma-def_binary64
320×associate-*l*_binary64
291×associate-*r*_binary64
259×cancel-sign-sub-inv_binary64
249×fma-neg_binary64
Counts
156 → 176
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02984251
17933886
229303694
345443694
449313694

prune122.0ms (1.2%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New1751176
Fresh189
Picked011
Done000
Total17610186
Error
0b
Counts
186 → 10
Alt Table
StatusErrorProgram
26.9b
(/.f64 x (/.f64 (/.f64 (hypot.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 (neg.f64 t))) z) z) y))
29.1b
(*.f64 (/.f64 x (*.f64 (cbrt.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)) (cbrt.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)))) (/.f64 y (/.f64 (cbrt.f64 (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)) z)))
24.7b
(*.f64 (*.f64 x y) (/.f64 z (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)))
28.5b
(/.f64 (*.f64 y (*.f64 z x)) (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z))
41.7b
(*.f64 (/.f64 (*.f64 y (*.f64 z x)) (sqrt.f64 (neg.f64 t))) (sqrt.f64 (/.f64 1 a)))
39.7b
(*.f64 y x)
29.0b
(*.f64 (*.f64 (/.f64 x (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 t)) (sqrt.f64 a)) z)) y) z)
37.7b
(neg.f64 (*.f64 y x))
24.8b
(/.f64 (*.f64 x y) (/.f64 (hypot.f64 (*.f64 (sqrt.f64 (*.f64 (cbrt.f64 a) (cbrt.f64 a))) (*.f64 (sqrt.f64 (cbrt.f64 a)) (sqrt.f64 (neg.f64 t)))) z) z))
25.4b
(/.f64 (*.f64 (*.f64 y x) z) (sqrt.f64 (-.f64 (*.f64 z z) (*.f64 t a))))
Compiler

Compiled 4925 to 1587 computations (67.8% saved)

regimes3.2s (31.4%)

Accuracy

Total 3.9b remaining (98%)

Threshold costs 0b (0%)

Counts
125 → 5
Compiler

Compiled 26743 to 15795 computations (40.9% saved)

bsearch132.0ms (1.3%)

Steps
ItersRangePoint
9
1.1869224238885904e+53
5.16106278097033e+59
7.57008347475156e+58
5
7.458391318088252e-115
2.89314209234144e-114
7.581764408590992e-115
9
-5.507983832535132e-158
-5.0904519005896404e-164
-5.158443679629766e-164
1
-1.42737910576664e+156
-1.3811132325521838e+152
-1.3347213958553576e+154
Compiler

Compiled 6 to 5 computations (16.7% saved)

simplify6.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
045129
164129
281129
391129
496129
597129
696129

end427.0ms (4.2%)

Compiler

Compiled 726 to 364 computations (49.9% saved)

Profiling

Loading profile data...