Details

Time bar (total: 12.4s)

analyze1.7s (13.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
25%74.9%0.1%6
25%74.9%0.1%7
31.2%68.6%0.1%8
40.6%59.3%0.1%9
40.6%59.3%0.1%10
46%53.8%0.1%11
52.7%47.2%0.1%12
52.7%44.6%2.8%13
55.9%40.6%3.5%14
Compiler

Compiled 27 to 22 computations (18.5% saved)

sample235.0ms (1.9%)

Algorithm
intervals
Results
104.0ms175×body128valid
27.0ms39×body1024valid
26.0ms41×body1024invalid
21.0msbody4096valid
10.0ms21×body512valid
9.0ms21×body512invalid
8.0msbody2048valid
6.0ms41×body128invalid
3.0ms11×body256valid
3.0msbody256invalid
Compiler

Compiled 56 to 46 computations (17.9% saved)

simplify57.0ms (0.5%)

Algorithm
egg-herbie
Rules
416×sub-neg_binary64
404×neg-mul-1_binary64
392×neg-sub0_binary64
387×unsub-neg_binary64
358×*-commutative_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01737
13737
28337
321637
475737
5179037
6357337
7464637
8493637

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
28.6b
Counts
2 → 1
Alt Table
StatusErrorProgram
28.6b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
Compiler

Compiled 78 to 61 computations (21.8% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

1.3b
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
9.6b
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
20.8b
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
20.9b
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))

rewrite155.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
28.2b
Rules
23×add-sqr-sqrt_binary64
16×difference-of-squares_binary64
13×unpow-prod-down_binary64
11×*-un-lft-identity_binary64
sqr-pow_binary64
Counts
4 → 71
Calls

4 calls:

10.0ms
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
7.0ms
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
1.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
1.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 2233 to 1676 computations (24.9% saved)

series163.0ms (1.3%)

Error
26.2b
Counts
4 → 42
Calls

4 calls:

94.0ms
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
20.0ms
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
9.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
9.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 2655 to 2080 computations (21.7% saved)

simplify129.0ms (1%)

Algorithm
egg-herbie
Rules
499×cancel-sign-sub-inv_binary64
302×unswap-sqr_binary64
267×associate-*r*_binary64
245×associate-*l*_binary64
224×distribute-rgt-in_binary64
Counts
113 → 89
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02472780
16022153
219552075
345642075
449012075
549432075

prune88.0ms (0.7%)

Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New701989
Fresh000
Picked101
Done000
Total711990
Error
26.8b
Counts
90 → 19
Alt Table
StatusErrorProgram
46.5b
(*.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) (sqrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
31.0b
(*.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.9b
(*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
39.2b
(*.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle PI.f64))) (*.f64 b b))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
44.0b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (pow.f64 b 4) (pow.f64 a 4)))) (+.f64 (pow.f64 b 2) (pow.f64 a 2))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
41.2b
(*.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle PI.f64))) (*.f64 a a))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.9b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
32.5b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (-.f64 1 (*.f64 1/64800 (*.f64 (*.f64 angle angle) (pow.f64 PI.f64 2)))))
28.6b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
51.1b
(*.f64 (*.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 b 6) (pow.f64 a 6)) (+.f64 (pow.f64 b 4) (+.f64 (pow.f64 a 4) (*.f64 (*.f64 a a) (*.f64 b b)))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
39.3b
(*.f64 (*.f64 (*.f64 2 (*.f64 b b)) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.8b
(*.f64 (*.f64 (*.f64 2 (*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
32.8b
(*.f64 (+.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (*.f64 b b)))) (+.f64 (*.f64 (*.f64 (*.f64 (pow.f64 angle 3) 1/17496000) (pow.f64 PI.f64 3)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 angle (*.f64 PI.f64 (*.f64 a a))) -1/90))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
43.6b
(*.f64 (*.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
52.8b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (pow.f64 b 6) (pow.f64 a 6)))) (+.f64 (*.f64 (pow.f64 b 2) (pow.f64 b 2)) (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 a 2)) (*.f64 (pow.f64 b 2) (pow.f64 a 2))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
42.1b
(*.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
42.3b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) 3)) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
52.4b
(*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
42.9b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
Compiler

Compiled 2667 to 1767 computations (33.7% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

1.3b
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
9.6b
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
20.8b
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
20.9b
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))

rewrite186.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
26.8b
Rules
23×add-sqr-sqrt_binary64
16×difference-of-squares_binary64
13×unpow-prod-down_binary64
11×*-un-lft-identity_binary64
sqr-pow_binary64
Counts
4 → 71
Calls

4 calls:

12.0ms
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
7.0ms
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
1.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
1.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 2437 to 1880 computations (22.9% saved)

series161.0ms (1.3%)

Error
26.1b
Counts
4 → 42
Calls

4 calls:

73.0ms
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
30.0ms
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
11.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
9.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 2898 to 2323 computations (19.8% saved)

simplify126.0ms (1%)

Algorithm
egg-herbie
Rules
499×cancel-sign-sub-inv_binary64
302×unswap-sqr_binary64
267×associate-*r*_binary64
245×associate-*l*_binary64
224×distribute-rgt-in_binary64
Counts
113 → 89
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02472780
16022153
219552075
345642075
449012075
549432075

prune98.0ms (0.8%)

Pruning

23 alts after pruning (23 fresh and 0 done)

PrunedKeptTotal
New80989
Fresh41418
Picked101
Done000
Total8523108
Error
26.8b
Counts
108 → 23
Alt Table
StatusErrorProgram
46.5b
(*.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) (sqrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
31.0b
(*.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.9b
(*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
39.2b
(*.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle PI.f64))) (*.f64 b b))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
42.1b
(*.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
52.4b
(*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
52.8b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (pow.f64 b 6) (pow.f64 a 6)))) (+.f64 (*.f64 (pow.f64 b 2) (pow.f64 b 2)) (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 a 2)) (*.f64 (pow.f64 b 2) (pow.f64 a 2))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
44.0b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (pow.f64 b 4) (pow.f64 a 4)))) (+.f64 (pow.f64 b 2) (pow.f64 a 2))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
31.0b
(*.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
28.9b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
32.5b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (-.f64 1 (*.f64 1/64800 (*.f64 (*.f64 angle angle) (pow.f64 PI.f64 2)))))
42.3b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) 3)) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
43.6b
(*.f64 (*.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
42.9b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
28.6b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
41.1b
(*.f64 (*.f64 (*.f64 2 (neg.f64 (*.f64 a a))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
39.3b
(*.f64 (*.f64 (*.f64 2 (*.f64 b b)) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.8b
(*.f64 (*.f64 (*.f64 2 (*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
32.8b
(*.f64 (+.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (*.f64 b b)))) (+.f64 (*.f64 (*.f64 (*.f64 (pow.f64 angle 3) 1/17496000) (pow.f64 PI.f64 3)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 angle (*.f64 PI.f64 (*.f64 a a))) -1/90))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
51.1b
(*.f64 (*.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 b 6) (pow.f64 a 6)) (+.f64 (pow.f64 b 4) (+.f64 (pow.f64 a 4) (*.f64 (*.f64 a a) (*.f64 b b)))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
41.2b
(*.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle PI.f64))) (*.f64 a a))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
52.4b
(*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
42.9b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
Compiler

Compiled 3045 to 2093 computations (31.3% saved)

localize20.0ms (0.2%)

Local error

Found 4 expressions with local error:

1.3b
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
9.6b
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
20.8b
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
20.9b
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))

rewrite162.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
26.8b
Rules
23×add-sqr-sqrt_binary64
16×difference-of-squares_binary64
13×unpow-prod-down_binary64
11×*-un-lft-identity_binary64
sqr-pow_binary64
Counts
4 → 71
Calls

4 calls:

10.0ms
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
7.0ms
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
1.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
1.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 2641 to 2084 computations (21.1% saved)

series164.0ms (1.3%)

Error
26.1b
Counts
4 → 42
Calls

4 calls:

77.0ms
(*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))
23.0ms
(-.f64 (pow.f64 b 2) (pow.f64 a 2))
11.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
10.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 3141 to 2566 computations (18.3% saved)

simplify133.0ms (1.1%)

Algorithm
egg-herbie
Rules
499×cancel-sign-sub-inv_binary64
302×unswap-sqr_binary64
267×associate-*r*_binary64
245×associate-*l*_binary64
224×distribute-rgt-in_binary64
Counts
113 → 89
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02472780
16022153
219552075
345642075
449012075
549432075

prune111.0ms (0.9%)

Pruning

24 alts after pruning (24 fresh and 0 done)

PrunedKeptTotal
New84589
Fresh31922
Picked101
Done000
Total8824112
Error
26.8b
Counts
112 → 24
Alt Table
StatusErrorProgram
46.5b
(*.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) (sqrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
31.0b
(*.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.9b
(*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
39.2b
(*.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle PI.f64))) (*.f64 b b))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
42.1b
(*.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
52.4b
(*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
52.8b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (pow.f64 b 6) (pow.f64 a 6)))) (+.f64 (*.f64 (pow.f64 b 2) (pow.f64 b 2)) (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 a 2)) (*.f64 (pow.f64 b 2) (pow.f64 a 2))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
44.0b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (pow.f64 b 4) (pow.f64 a 4)))) (+.f64 (pow.f64 b 2) (pow.f64 a 2))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
31.0b
(*.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
28.9b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
32.5b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (-.f64 1 (*.f64 1/64800 (*.f64 (*.f64 angle angle) (pow.f64 PI.f64 2)))))
42.3b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) 3)) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
42.9b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
52.4b
(*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.9b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
42.9b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
43.6b
(*.f64 (*.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
41.1b
(*.f64 (*.f64 (*.f64 2 (neg.f64 (*.f64 a a))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
44.3b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
39.3b
(*.f64 (*.f64 (*.f64 2 (*.f64 b b)) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.8b
(*.f64 (*.f64 (*.f64 2 (*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
32.8b
(*.f64 (+.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (*.f64 b b)))) (+.f64 (*.f64 (*.f64 (*.f64 (pow.f64 angle 3) 1/17496000) (pow.f64 PI.f64 3)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 angle (*.f64 PI.f64 (*.f64 a a))) -1/90))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
51.1b
(*.f64 (*.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 b 6) (pow.f64 a 6)) (+.f64 (pow.f64 b 4) (+.f64 (pow.f64 a 4) (*.f64 (*.f64 a a) (*.f64 b b)))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
41.3b
(*.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle PI.f64))) (*.f64 a a))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
Compiler

Compiled 3333 to 2331 computations (30.1% saved)

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

16.1b
(cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))
16.1b
(cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))
20.8b
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
20.9b
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))

rewrite74.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
26.8b
Rules
cbrt-prod_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
cbrt-div_binary64
Counts
4 → 42
Calls

4 calls:

3.0ms
(cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))
3.0ms
(cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))
1.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
1.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 2147 to 711 computations (66.9% saved)

series103.0ms (0.8%)

Error
26.1b
Counts
4 → 30
Calls

4 calls:

29.0ms
(cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))
29.0ms
(cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))
11.0ms
(sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))
8.0ms
(cos.f64 (*.f64 PI.f64 (/.f64 angle 180)))
Compiler

Compiled 3481 to 2037 computations (41.5% saved)

simplify69.0ms (0.6%)

Algorithm
egg-herbie
Rules
737×distribute-rgt-neg-in_binary64
724×distribute-lft-neg-in_binary64
558×associate-*r*_binary64
530×associate-*l*_binary64
189×cancel-sign-sub-inv_binary64
Counts
72 → 35
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01351324
13351258
28551256
331431244
450621244

prune66.0ms (0.5%)

Pruning

25 alts after pruning (25 fresh and 0 done)

PrunedKeptTotal
New31435
Fresh22123
Picked101
Done000
Total342559
Error
26.7b
Counts
59 → 25
Alt Table
StatusErrorProgram
46.5b
(*.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) (sqrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
31.0b
(*.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.9b
(*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
39.2b
(*.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle PI.f64))) (*.f64 b b))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
52.8b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (pow.f64 b 6) (pow.f64 a 6)))) (+.f64 (*.f64 (pow.f64 b 2) (pow.f64 b 2)) (+.f64 (*.f64 (pow.f64 a 2) (pow.f64 a 2)) (*.f64 (pow.f64 b 2) (pow.f64 a 2))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
44.0b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (pow.f64 b 4) (pow.f64 a 4)))) (+.f64 (pow.f64 b 2) (pow.f64 a 2))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
31.0b
(*.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
28.9b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
32.5b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (-.f64 1 (*.f64 1/64800 (*.f64 (*.f64 angle angle) (pow.f64 PI.f64 2)))))
42.3b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))) 3)) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
42.9b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
52.4b
(*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.9b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
42.9b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a)))))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
43.6b
(*.f64 (*.f64 (*.f64 2 (exp.f64 (log.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
41.1b
(*.f64 (*.f64 (*.f64 2 (neg.f64 (*.f64 a a))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
44.3b
(*.f64 (*.f64 (*.f64 2 (-.f64 (pow.f64 b 2) (pow.f64 a 2))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
32.8b
(*.f64 (+.f64 (*.f64 angle (*.f64 1/90 (*.f64 PI.f64 (*.f64 b b)))) (+.f64 (*.f64 (*.f64 (*.f64 (pow.f64 angle 3) 1/17496000) (pow.f64 PI.f64 3)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 angle (*.f64 PI.f64 (*.f64 a a))) -1/90))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
51.1b
(*.f64 (*.f64 (*.f64 2 (/.f64 (-.f64 (pow.f64 b 6) (pow.f64 a 6)) (+.f64 (pow.f64 b 4) (+.f64 (pow.f64 a 4) (*.f64 (*.f64 a a) (*.f64 b b)))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
52.4b
(*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (*.f64 2 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)))
41.6b
(*.f64 (*.f64 (*.f64 2 (*.f64 (*.f64 (cbrt.f64 (*.f64 -1 (pow.f64 (/.f64 -1 a) -2))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
44.4b
(*.f64 (*.f64 (*.f64 2 (*.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
28.8b
(*.f64 (*.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 (cbrt.f64 (+.f64 a b)) (cbrt.f64 (-.f64 b a))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
40.0b
(*.f64 (*.f64 (*.f64 2 (*.f64 (*.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a)))) (cbrt.f64 (-.f64 (*.f64 b b) (*.f64 a a))))) (sin.f64 (*.f64 PI.f64 (/.f64 angle 180)))) (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))))
41.3b
(*.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/180 (*.f64 angle PI.f64))) (*.f64 a a))) (cbrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (cos.f64 (*.f64 PI.f64 (/.f64 angle 180))) 3)) 3)))
Compiler

Compiled 2116 to 1166 computations (44.9% saved)

regimes3.2s (25.7%)

Accuracy

Total 1.7b remaining (5.4%)

Threshold costs 0b (0%)

Compiler

Compiled 81580 to 60236 computations (26.2% saved)

simplify4.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02037
12837
23337
33537
43637
53637

end1.0ms (0%)

Compiler

Compiled 26 to 21 computations (19.2% saved)

sample5.2s (41.7%)

Algorithm
intervals
Results
998.0ms1487×body1024valid
876.0ms1291×body1024invalid
794.0ms5137×body128valid
364.0ms770×body512valid
305.0ms663×body512invalid
292.0ms68×body4096valid
194.0ms1295×body128invalid
191.0ms162×body2048valid
118.0ms376×body256valid
101.0ms324×body256invalid
Compiler

Compiled 1000 to 716 computations (28.4% saved)

Profiling

Loading profile data...