Details

Time bar (total: 41.1s)

sample71.0ms

Algorithm
intervals
Results
51.0ms273×body80valid

simplify17.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
17.0ms
(/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im)))

prune11.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 24.7b

localize38.0ms

Local error

Found 2 expressions with local error:

24.7b
(/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im)))
0.2b
(+ (* x.re y.re) (* x.im y.im))

rewrite77.0ms

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt *-un-lft-identity add-cube-cbrt
times-frac
add-cbrt-cube add-exp-log add-log-exp
associate-/r* flip3-+ flip-+ associate-/l*
pow1 associate-/r/ insert-posit16 associate-/l/
cbrt-undiv +-commutative clear-num sum-log frac-2neg div-exp div-inv
Counts
2 → 44
Calls
2 calls:
Slowest
62.0ms
(/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im)))
14.0ms
(+ (* x.re y.re) (* x.im y.im))

series164.0ms

Counts
2 → 6
Calls
2 calls:
Slowest
106.0ms
(/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im)))
58.0ms
(+ (* x.re y.re) (* x.im y.im))

simplify1.8s

Counts
36 → 50
Calls
36 calls:
Slowest
346.0ms
(- (* (* x.re y.re) (* x.re y.re)) (* (* x.im y.im) (* x.im y.im)))
313.0ms
(+ (* (* y.re y.re) (* y.re y.re)) (- (* (* y.im y.im) (* y.im y.im)) (* (* y.re y.re) (* y.im y.im))))
286.0ms
(/ (* (* (+ (* x.re y.re) (* x.im y.im)) (+ (* x.re y.re) (* x.im y.im))) (+ (* x.re y.re) (* x.im y.im))) (* (* (+ (* y.re y.re) (* y.im y.im)) (+ (* y.re y.re) (* y.im y.im))) (+ (* y.re y.re) (* y.im y.im))))
212.0ms
(+ (pow (* x.re y.re) 3) (pow (* x.im y.im) 3))
164.0ms
(* (exp (* x.re y.re)) (exp (* x.im y.im)))

prune566.0ms

Pruning

8 alts after pruning (7 fresh and 1 done)

Merged error: 24.3b

localize35.0ms

Local error

Found 4 expressions with local error:

29.2b
(sqrt (+ (* y.re y.re) (* y.im y.im)))
29.2b
(sqrt (+ (* y.re y.re) (* y.im y.im)))
15.2b
(/ (+ (* x.re y.re) (* x.im y.im)) (sqrt (+ (* y.re y.re) (* y.im y.im))))
0.3b
(* (/ 1 (sqrt (+ (* y.re y.re) (* y.im y.im)))) (/ (+ (* x.re y.re) (* x.im y.im)) (sqrt (+ (* y.re y.re) (* y.im y.im)))))

rewrite120.0ms

Algorithm
rewrite-expression-head
Rules
95×add-sqr-sqrt
76×times-frac
53×*-un-lft-identity
47×add-cube-cbrt sqrt-prod
28×add-exp-log
24×associate-*r* associate-*l*
18×add-cbrt-cube
15×unswap-sqr
10×sqrt-div
div-exp
pow1 prod-exp
associate-/r* flip3-+ associate-/r/ flip-+
cbrt-undiv
cbrt-unprod insert-posit16 add-log-exp
div-inv associate-/l*
rem-sqrt-square rec-exp sqrt-pow1 pow1/2 1-exp associate-/l/
frac-times clear-num frac-2neg pow-prod-down associate-*l/ associate-*r/ *-commutative
Counts
4 → 164
Calls
4 calls:
Slowest
75.0ms
(* (/ 1 (sqrt (+ (* y.re y.re) (* y.im y.im)))) (/ (+ (* x.re y.re) (* x.im y.im)) (sqrt (+ (* y.re y.re) (* y.im y.im)))))
28.0ms
(/ (+ (* x.re y.re) (* x.im y.im)) (sqrt (+ (* y.re y.re) (* y.im y.im))))
6.0ms
(sqrt (+ (* y.re y.re) (* y.im y.im)))
6.0ms
(sqrt (+ (* y.re y.re) (* y.im y.im)))

series409.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
161.0ms
(* (/ 1 (sqrt (+ (* y.re y.re) (* y.im y.im)))) (/ (+ (* x.re y.re) (* x.im y.im)) (sqrt (+ (* y.re y.re) (* y.im y.im)))))
141.0ms
(/ (+ (* x.re y.re) (* x.im y.im)) (sqrt (+ (* y.re y.re) (* y.im y.im))))
58.0ms
(sqrt (+ (* y.re y.re) (* y.im y.im)))
48.0ms
(sqrt (+ (* y.re y.re) (* y.im y.im)))

simplify11.5s

Counts
169 → 176
Calls
169 calls:
Slowest
824.0ms
(* (/ 1 (sqrt (+ (* y.re y.re) (* y.im y.im)))) (/ (+ (* x.re y.re) (* x.im y.im)) (sqrt (+ (* y.re y.re) (* y.im y.im)))))
470.0ms
(* (/ (* (* 1 1) 1) (* (* (sqrt (+ (* y.re y.re) (* y.im y.im))) (sqrt (+ (* y.re y.re) (* y.im y.im)))) (sqrt (+ (* y.re y.re) (* y.im y.im))))) (/ (* (* (+ (* x.re y.re) (* x.im y.im)) (+ (* x.re y.re) (* x.im y.im))) (+ (* x.re y.re) (* x.im y.im))) (* (* (sqrt (+ (* y.re y.re) (* y.im y.im))) (sqrt (+ (* y.re y.re) (* y.im y.im)))) (sqrt (+ (* y.re y.re) (* y.im y.im))))))
446.0ms
(* (* (* (/ 1 (sqrt (+ (* y.re y.re) (* y.im y.im)))) (/ 1 (sqrt (+ (* y.re y.re) (* y.im y.im))))) (/ 1 (sqrt (+ (* y.re y.re) (* y.im y.im))))) (/ (* (* (+ (* x.re y.re) (* x.im y.im)) (+ (* x.re y.re) (* x.im y.im))) (+ (* x.re y.re) (* x.im y.im))) (* (* (sqrt (+ (* y.re y.re) (* y.im y.im))) (sqrt (+ (* y.re y.re) (* y.im y.im)))) (sqrt (+ (* y.re y.re) (* y.im y.im))))))
378.0ms
(/ 1 (sqrt (+ (pow (* y.re y.re) 3) (pow (* y.im y.im) 3))))
328.0ms
(sqrt (+ (pow (* y.re y.re) 3) (pow (* y.im y.im) 3)))

prune2.6s

Pruning

11 alts after pruning (9 fresh and 2 done)

Merged error: 22.1b

localize23.0ms

Local error

Found 3 expressions with local error:

24.2b
(* (+ (* x.re y.re) (* x.im y.im)) (/ 1 (+ (* y.re y.re) (* y.im y.im))))
0.9b
(/ 1 (+ (* y.re y.re) (* y.im y.im)))
0.2b
(+ (* x.re y.re) (* x.im y.im))

rewrite92.0ms

Algorithm
rewrite-expression-head
Rules
26×add-sqr-sqrt
20×*-un-lft-identity times-frac
19×add-cube-cbrt
16×add-exp-log
15×associate-*r*
10×add-cbrt-cube
pow1
flip3-+ flip-+ add-log-exp
div-exp prod-exp associate-/r/
associate-/r* associate-*l* insert-posit16 associate-/l* unswap-sqr
frac-times cbrt-undiv rec-exp 1-exp associate-*l/ cbrt-unprod div-inv
+-commutative clear-num sum-log frac-2neg pow-prod-down associate-*r/ un-div-inv *-commutative pow-flip inv-pow
Counts
3 → 89
Calls
3 calls:
Slowest
58.0ms
(* (+ (* x.re y.re) (* x.im y.im)) (/ 1 (+ (* y.re y.re) (* y.im y.im))))
21.0ms
(/ 1 (+ (* y.re y.re) (* y.im y.im)))
12.0ms
(+ (* x.re y.re) (* x.im y.im))

series176.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
88.0ms
(* (+ (* x.re y.re) (* x.im y.im)) (/ 1 (+ (* y.re y.re) (* y.im y.im))))
47.0ms
(+ (* x.re y.re) (* x.im y.im))
40.0ms
(/ 1 (+ (* y.re y.re) (* y.im y.im)))

simplify5.0s

Counts
77 → 98
Calls
77 calls:
Slowest
500.0ms
(* (+ (pow (* x.re y.re) 3) (pow (* x.im y.im) 3)) (/ 1 (+ (* y.re y.re) (* y.im y.im))))
485.0ms
(/ (* (* 1 1) 1) (* (* (+ (* y.re y.re) (* y.im y.im)) (+ (* y.re y.re) (* y.im y.im))) (+ (* y.re y.re) (* y.im y.im))))
366.0ms
(* (- (* (* x.re y.re) (* x.re y.re)) (* (* x.im y.im) (* x.im y.im))) (/ 1 (+ (* y.re y.re) (* y.im y.im))))
325.0ms
(* (- (* (* x.re y.re) (* x.re y.re)) (* (* x.im y.im) (* x.im y.im))) 1)
310.0ms
(+ (* (* y.re y.re) (* y.re y.re)) (- (* (* y.im y.im) (* y.im y.im)) (* (* y.re y.re) (* y.im y.im))))

prune1.1s

Pruning

11 alts after pruning (8 fresh and 3 done)

Merged error: 22.1b

localize28.0ms

Local error

Found 3 expressions with local error:

24.3b
(/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im)))
0.7b
(/ 1 (/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im))))
0.2b
(+ (* x.re y.re) (* x.im y.im))

rewrite70.0ms

Algorithm
rewrite-expression-head
Rules
90×times-frac
55×add-sqr-sqrt *-un-lft-identity add-cube-cbrt
18×associate-/r*
16×add-exp-log
11×associate-/r/
10×add-cbrt-cube
div-exp
flip3-+ flip-+
div-inv associate-/l*
add-log-exp
pow1 cbrt-undiv
insert-posit16
rec-exp clear-num frac-2neg 1-exp associate-/l/
+-commutative sum-log pow-flip inv-pow
Counts
3 → 129
Calls
3 calls:
Slowest
40.0ms
(/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im)))
16.0ms
(/ 1 (/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im))))
7.0ms
(+ (* x.re y.re) (* x.im y.im))

series290.0ms

Counts
3 → 9
Calls
3 calls:
Slowest
185.0ms
(/ 1 (/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im))))
68.0ms
(/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im)))
37.0ms
(+ (* x.re y.re) (* x.im y.im))

simplify13.0s

Counts
154 → 138
Calls
154 calls:
Slowest
562.0ms
(/ (sqrt 1) (/ (+ (* y.re y.re) (* y.im y.im)) (+ (pow (* x.re y.re) 3) (pow (* x.im y.im) 3))))
441.0ms
(/ (* (cbrt 1) (cbrt 1)) (/ (+ (* y.re y.re) (* y.im y.im)) (+ (pow (* x.re y.re) 3) (pow (* x.im y.im) 3))))
403.0ms
(/ (* (* 1 1) 1) (* (* (/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im))) (/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im)))) (/ (+ (* y.re y.re) (* y.im y.im)) (+ (* x.re y.re) (* x.im y.im)))))
398.0ms
(/ 1 (/ (+ (* y.re y.re) (* y.im y.im)) (+ (pow (* x.re y.re) 3) (pow (* x.im y.im) 3))))
385.0ms
(/ (sqrt 1) (/ (+ (* y.re y.re) (* y.im y.im)) (- (* (* x.re y.re) (* x.re y.re)) (* (* x.im y.im) (* x.im y.im)))))

prune1.7s

Pruning

11 alts after pruning (7 fresh and 4 done)

Merged error: 22.1b

regimes542.0ms

Accuracy

20.4% (2.0b remaining)

Error of 25.1b against oracle of 23.1b and baseline of 25.6b

bsearch9.0ms

end0.0ms

sample1.7s

Algorithm
intervals
Results
1.4s8472×body80valid