Details

Time bar (total: 4.2m)

sample1.2s

Algorithm
intervals
Results
649.0ms14×body160valid
175.0ms47×body2560valid
131.0ms96×body1280valid
50.0ms59×body640valid
43.0ms29×body320valid
6.0ms11×body80valid

simplify28.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
27.0ms
(/ (- x (sin x)) (- x (tan x)))

prune9.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 29.1b

localize45.0ms

Local error

Found 3 expressions with local error:

1.0b
(- x (sin x))
1.0b
(- x (tan x))
0.0b
(/ (- x (sin x)) (- x (tan x)))

rewrite36.0ms

Algorithm
rewrite-expression-head
Rules
57×add-sqr-sqrt *-un-lft-identity
29×add-cube-cbrt
25×times-frac
18×prod-diff
14×distribute-lft-out-- difference-of-squares
add-log-exp
fma-neg
associate-/r* add-cbrt-cube add-exp-log associate-/l*
flip3-- flip--
expm1-log1p-u pow1 insert-posit16 log1p-expm1-u
sub-neg diff-log associate-/r/ associate-/l/
cbrt-undiv clear-num frac-2neg div-sub div-exp div-inv
Counts
3 → 113
Calls
3 calls:
Slowest
19.0ms
(/ (- x (sin x)) (- x (tan x)))
8.0ms
(- x (sin x))
5.0ms
(- x (tan x))

series212.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
93.0ms
(/ (- x (sin x)) (- x (tan x)))
64.0ms
(- x (tan x))
56.0ms
(- x (sin x))

simplify6.1s

Counts
122 → 122
Calls
122 calls:
Slowest
531.0ms
(- (+ 1 (+ (/ (pow (sin x) 2) (* (pow (cos x) 2) (pow x 2))) (/ (sin x) (* (cos x) x)))) (+ (/ (sin x) x) (/ (pow (sin x) 2) (* (cos x) (pow x 2)))))
527.0ms
(- (+ 1 (+ (/ (pow (sin x) 2) (* (pow (cos x) 2) (pow x 2))) (/ (sin x) (* (cos x) x)))) (+ (/ (sin x) x) (/ (pow (sin x) 2) (* (cos x) (pow x 2)))))
380.0ms
(/ (* (* (- x (sin x)) (- x (sin x))) (- x (sin x))) (* (* (- x (tan x)) (- x (tan x))) (- x (tan x))))
342.0ms
(- (+ (* 1/3 (pow x 3)) (+ (* 2/15 (pow x 5)) (* 17/315 (pow x 7)))))
220.0ms
(- (+ (* 1/6 (pow x 3)) (* 1/5040 (pow x 7))) (* 1/120 (pow x 5)))

prune976.0ms

Pruning

4 alts after pruning (4 fresh and 0 done)

Merged error: 0.0b

localize22.0ms

Local error

Found 4 expressions with local error:

1.0b
(- x (tan x))
1.0b
(- x (tan x))
0.9b
(- (/ x (- x (tan x))) (/ (sin x) (- x (tan x))))
0.1b
(/ (sin x) (- x (tan x)))

rewrite160.0ms

Algorithm
rewrite-expression-head
Rules
713×*-un-lft-identity
703×add-sqr-sqrt
678×times-frac
459×prod-diff
417×add-cube-cbrt
147×distribute-lft-out--
141×difference-of-squares
92×associate-/r/
49×flip3-- flip--
46×div-inv
27×fma-neg
10×add-log-exp
add-cbrt-cube add-exp-log
associate-/r*
expm1-log1p-u pow1 insert-posit16 log1p-expm1-u
sub-neg distribute-rgt-out-- diff-log associate-/l*
cbrt-undiv clear-num frac-2neg div-exp frac-sub sub-div
Counts
4 → 592
Calls
4 calls:
Slowest
98.0ms
(- (/ x (- x (tan x))) (/ (sin x) (- x (tan x))))
17.0ms
(/ (sin x) (- x (tan x)))
15.0ms
(- x (tan x))
6.0ms
(- x (tan x))

series511.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
267.0ms
(- (/ x (- x (tan x))) (/ (sin x) (- x (tan x))))
89.0ms
(/ (sin x) (- x (tan x)))
80.0ms
(- x (tan x))
75.0ms
(- x (tan x))

simplify3.5m

Counts
1036 → 604
Calls
1036 calls:
Slowest
938.0ms
(fma (/ 1 1) (/ x (- x (tan x))) (- (* (/ (sin x) (cbrt (- x (tan x)))) (/ 1 (* (cbrt (- x (tan x))) (cbrt (- x (tan x))))))))
664.0ms
(fma (- (/ (cbrt (sin x)) (sqrt (- x (tan x))))) (/ (* (cbrt (sin x)) (cbrt (sin x))) (sqrt (- x (tan x)))) (* (/ (cbrt (sin x)) (sqrt (- x (tan x)))) (/ (* (cbrt (sin x)) (cbrt (sin x))) (sqrt (- x (tan x))))))
623.0ms
(fma (/ (sqrt x) 1) (/ (sqrt x) (- x (tan x))) (- (* (/ (sin x) (cbrt (- x (tan x)))) (/ 1 (* (cbrt (- x (tan x))) (cbrt (- x (tan x))))))))
620.0ms
(fma (/ (sqrt x) (sqrt (- x (tan x)))) (/ (sqrt x) (sqrt (- x (tan x)))) (- (* (cbrt (/ (sin x) (- x (tan x)))) (* (cbrt (/ (sin x) (- x (tan x)))) (cbrt (/ (sin x) (- x (tan x))))))))
583.0ms
(fma (/ (* (cbrt x) (cbrt x)) (+ (sqrt x) (sqrt (tan x)))) (/ (cbrt x) (- (sqrt x) (sqrt (tan x)))) (- (* (/ (cbrt (sin x)) (cbrt (- x (tan x)))) (/ (* (cbrt (sin x)) (cbrt (sin x))) (* (cbrt (- x (tan x))) (cbrt (- x (tan x))))))))

prune5.8s

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.0b

localize17.0ms

Local error

Found 3 expressions with local error:

20.1b
(fma (* x x) 9/40 (fma -27/2800 (* (* x x) (* x x)) -1/2))
0.1b
(* (* x x) (* x x))
0.0b
(fma -27/2800 (* (* x x) (* x x)) -1/2)

rewrite31.0ms

Algorithm
rewrite-expression-head
Rules
114×pow1
36×pow-prod-up
23×pow-prod-down
22×pow-sqr
18×pow-plus
15×add-cbrt-cube add-exp-log
13×pow2
prod-exp cbrt-unprod
add-sqr-sqrt expm1-log1p-u *-un-lft-identity add-cube-cbrt insert-posit16 log1p-expm1-u add-log-exp
fma-udef
swap-sqr associate-*r* associate-*l* *-commutative unswap-sqr
Counts
3 → 88
Calls
3 calls:
Slowest
29.0ms
(* (* x x) (* x x))
0.0ms
(fma (* x x) 9/40 (fma -27/2800 (* (* x x) (* x x)) -1/2))
0.0ms
(fma -27/2800 (* (* x x) (* x x)) -1/2)

series275.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
148.0ms
(fma -27/2800 (* (* x x) (* x x)) -1/2)
67.0ms
(fma (* x x) 9/40 (fma -27/2800 (* (* x x) (* x x)) -1/2))
59.0ms
(* (* x x) (* x x))

simplify2.9s

Counts
76 → 97
Calls
76 calls:
Slowest
433.0ms
(* (* (* (* x x) x) (* (* x x) x)) (* (* (* x x) (* x x)) (* x x)))
373.0ms
(* (* (* (* x x) (* x x)) (* x x)) (* (* (* x x) (* x x)) (* x x)))
353.0ms
(* (* (* (* x x) (* x x)) (* x x)) (* (* (* x x) x) (* (* x x) x)))
274.0ms
(* (* (* (* x x) x) (* (* x x) x)) (* (* (* x x) x) (* (* x x) x)))
184.0ms
(- (* 9/40 (pow x 2)) (+ (* 27/2800 (pow x 4)) 1/2))

prune778.0ms

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0.0b

localize45.0ms

Local error

Found 4 expressions with local error:

1.0b
(- x (tan x))
1.0b
(- x (tan x))
0.2b
(fma (sqrt x) (/ (sqrt x) (- x (tan x))) (- (/ (sin x) (- x (tan x)))))
0.1b
(/ (sin x) (- x (tan x)))

rewrite41.0ms

Algorithm
rewrite-expression-head
Rules
40×add-sqr-sqrt *-un-lft-identity
28×add-cube-cbrt
18×prod-diff
15×times-frac
add-log-exp
add-cbrt-cube fma-neg add-exp-log distribute-lft-out-- difference-of-squares
associate-/r*
expm1-log1p-u pow1 insert-posit16 log1p-expm1-u
flip3-- flip-- associate-/l*
sub-neg diff-log associate-/r/
cbrt-undiv clear-num frac-2neg div-exp fma-udef div-inv
Counts
4 → 109
Calls
4 calls:
Slowest
25.0ms
(/ (sin x) (- x (tan x)))
8.0ms
(- x (tan x))
6.0ms
(- x (tan x))
0.0ms
(fma (sqrt x) (/ (sqrt x) (- x (tan x))) (- (/ (sin x) (- x (tan x)))))

series532.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
306.0ms
(fma (sqrt x) (/ (sqrt x) (- x (tan x))) (- (/ (sin x) (- x (tan x)))))
80.0ms
(- x (tan x))
75.0ms
(- x (tan x))
70.0ms
(/ (sin x) (- x (tan x)))

simplify4.8s

Counts
101 → 121
Calls
101 calls:
Slowest
320.0ms
(- (+ (* 1/3 (pow x 3)) (+ (* 2/15 (pow x 5)) (* 17/315 (pow x 7)))))
315.0ms
(- (+ (* 1/3 (pow x 3)) (+ (* 2/15 (pow x 5)) (* 17/315 (pow x 7)))))
240.0ms
(+ (/ (pow (sin x) 2) (* (cos x) (pow x 2))) (+ (/ (pow (sin x) 3) (* (pow (cos x) 2) (pow x 3))) (/ (sin x) x)))
234.0ms
(- 17/10 (+ (* 307/1400 (pow x 2)) (* 3 (/ 1 (pow x 2)))))
183.0ms
(fma 1 x (- (* (cbrt (tan x)) (* (cbrt (tan x)) (cbrt (tan x))))))

prune1.3s

Pruning

4 alts after pruning (2 fresh and 2 done)

Merged error: 0.0b

regimes72.0ms

Accuracy

99.9% (0.0b remaining)

Error of 0.0b against oracle of 0.0b and baseline of 31.1b

bsearch164.0ms

end21.0ms

sample17.0s

Algorithm
intervals
Results
7.1s1572×body2560valid
5.3s2694×body1280valid
2.2s1895×body640valid
1.4s970×body320valid
501.0ms356×body80valid
239.0ms513×body160valid