Details

Time bar (total: 27.7s)

sample765.0ms

Algorithm
intervals
Results
363.0ms79×body10240exit
229.0ms83×body1280valid
61.0ms57×body640valid
16.0ms80×body80valid
15.0ms29×body320valid
2.0msbody160valid

simplify6.0ms

Counts
1 → 1

prune9.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 35.6b

localize17.0ms

Local error

Found 4 expressions with local error:

0.0b
(expm1 (sin (expm1 a)))
0.0b
(atan2 (expm1 (sin (expm1 a))) (atan a))
0.3b
(sin (expm1 a))
40.7b
(fmod (atan2 (expm1 (sin (expm1 a))) (atan a)) a)

rewrite6.0ms

Algorithm
rewrite-expression-head
Rules
pow1 add-exp-log add-sqr-sqrt add-cube-cbrt *-un-lft-identity add-cbrt-cube add-log-exp
Counts
4 → 28
Calls
4 calls:
0.0ms
(expm1 (sin (expm1 a)))
0.0ms
(atan2 (expm1 (sin (expm1 a))) (atan a))
3.0ms
(sin (expm1 a))
1.0ms
(fmod (atan2 (expm1 (sin (expm1 a))) (atan a)) a)

series125.0ms

Counts
4 → 12
Calls
4 calls:
2.0ms
(expm1 (sin (expm1 a)))
2.0ms
(atan2 (expm1 (sin (expm1 a))) (atan a))
74.0ms
(sin (expm1 a))
47.0ms
(fmod (atan2 (expm1 (sin (expm1 a))) (atan a)) a)

simplify67.0ms

Counts
40 → 40

prune269.0ms

Pruning

13 alts after pruning (13 fresh and 0 done)

Merged error: 34.2b

localize19.0ms

Local error

Found 4 expressions with local error:

0.3b
(sin (expm1 a))
0.7b
(cbrt (pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3))
1.0b
(pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3)
40.7b
(fmod (cbrt (pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3)) a)

rewrite11.0ms

Algorithm
rewrite-expression-head
Rules
12×cbrt-prod
10×add-sqr-sqrt add-cube-cbrt *-un-lft-identity
unpow-prod-down cube-prod
pow1 add-exp-log add-cbrt-cube
add-log-exp
pow-unpow
cube-mult unpow3 sqr-pow
pow-to-exp pow-pow pow1/3 pow-exp rem-cbrt-cube rem-cube-cbrt
Counts
4 → 58
Calls
4 calls:
2.0ms
(sin (expm1 a))
2.0ms
(cbrt (pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3))
5.0ms
(pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3)
0.0ms
(fmod (cbrt (pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3)) a)

series148.0ms

Counts
4 → 12
Calls
4 calls:
94.0ms
(sin (expm1 a))
3.0ms
(cbrt (pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3))
47.0ms
(pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3)
3.0ms
(fmod (cbrt (pow (atan2 (expm1 (sin (expm1 a))) (atan a)) 3)) a)

simplify143.0ms

Counts
70 → 70

prune394.0ms

Pruning

17 alts after pruning (17 fresh and 0 done)

Merged error: 33.9b

localize44.0ms

Local error

Found 4 expressions with local error:

0.6b
(* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))
0.7b
(cbrt (pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3))
1.0b
(pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3)
40.7b
(fmod (cbrt (pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3)) a)

rewrite42.0ms

Algorithm
rewrite-expression-head
Rules
28×cbrt-prod
26×add-sqr-sqrt
18×add-cube-cbrt *-un-lft-identity
12×pow1
add-exp-log pow1/3
unpow-prod-down cube-prod swap-sqr associate-*r* associate-*l*
add-cbrt-cube
add-log-exp unswap-sqr
pow-unpow
cube-mult unpow3 pow-prod-down pow-sqr pow-prod-up sqr-pow
pow2 pow-to-exp pow-pow pow-plus pow-exp prod-exp *-commutative rem-cbrt-cube cbrt-unprod rem-cube-cbrt
Counts
4 → 91
Calls
4 calls:
29.0ms
(* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))
5.0ms
(cbrt (pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3))
5.0ms
(pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3)
1.0ms
(fmod (cbrt (pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3)) a)

series388.0ms

Counts
4 → 12
Calls
4 calls:
312.0ms
(* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))
6.0ms
(cbrt (pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3))
65.0ms
(pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3)
4.0ms
(fmod (cbrt (pow (atan2 (expm1 (* (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))) (cbrt (sin (expm1 a))))) (atan a)) 3)) a)

simplify200.0ms

Counts
103 → 103

prune642.0ms

Pruning

25 alts after pruning (25 fresh and 0 done)

Merged error: 33.8b

localize62.0ms

Local error

Found 4 expressions with local error:

0.8b
(cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))
0.8b
(cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))
1.0b
(pow (atan2 (expm1 (* (* (* (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (sin (expm1 a))))) (atan a)) 3)
40.7b
(fmod (cbrt (pow (atan2 (expm1 (* (* (* (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (sin (expm1 a))))) (atan a)) 3)) a)

rewrite38.0ms

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt add-cube-cbrt *-un-lft-identity
pow1 add-exp-log add-cbrt-cube
add-log-exp
unpow-prod-down pow-unpow cube-prod
cbrt-prod pow1/3
cube-mult pow-to-exp pow-pow unpow3 pow-exp rem-cube-cbrt sqr-pow
Counts
4 → 48
Calls
4 calls:
12.0ms
(cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))
21.0ms
(cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))
3.0ms
(pow (atan2 (expm1 (* (* (* (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (sin (expm1 a))))) (atan a)) 3)
0.0ms
(fmod (cbrt (pow (atan2 (expm1 (* (* (* (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (sin (expm1 a))))) (atan a)) 3)) a)

series603.0ms

Counts
4 → 12
Calls
4 calls:
282.0ms
(cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))
269.0ms
(cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))
46.0ms
(pow (atan2 (expm1 (* (* (* (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (sin (expm1 a))))) (atan a)) 3)
5.0ms
(fmod (cbrt (pow (atan2 (expm1 (* (* (* (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (* (cbrt (sin (expm1 a))) (cbrt (sin (expm1 a)))))) (cbrt (sin (expm1 a))))) (atan a)) 3)) a)

simplify118.0ms

Counts
60 → 60

prune378.0ms

Pruning

30 alts after pruning (30 fresh and 0 done)

Merged error: 33.6b

regimes629.0ms

Accuracy

0% (2.0b remaining)

Error of 33.7b against oracle of 31.7b and baseline of 33.7b

bsearch0.0ms

simplify56.0ms

end0.0ms

sample22.5s

Algorithm
intervals
Results
11.7s2667×body10240exit
6.9s2295×body1280valid
2.1s1692×body640valid
557.0ms810×body320valid
540.0ms2784×body80valid
231.0ms413×body160valid
60.0msbody2560valid
6.0msbody5120valid