ENA, Section 1.4, Exercise 1

Time bar (total: 13.7s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze5.0ms (0%)

Memory
7.6MiB live, 7.6MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
0%0%0%100%0%0%0%1
0%0%0%100%0%0%0%2
50%0%0%100%0%0%0%3
75%0%0%100%0%0%0%4
87.5%0%0%100%0%0%0%5
93.8%0%0%100%0%0%0%6
96.9%0%0%100%0%0%0%7
98.4%0%0%100%0%0%0%8
99.2%0%0%100%0%0%0%9
99.6%0%0%100%0%0%0%10
99.8%0%0%100%0%0%0%11
99.9%0%0%100%0%0%0%12
Compiler

Compiled 17 to 13 computations (23.5% saved)

sample1.8s (13.2%)

Memory
40.7MiB live, 1 644.3MiB allocated
Samples
1.4s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.1s
ival-cos: 420.0ms (36.7% of total)
const: 315.0ms (27.6% of total)
ival-mult: 189.0ms (16.5% of total)
ival-exp: 106.0ms (9.3% of total)
ival-<=: 92.0ms (8% of total)
ival-and: 11.0ms (1% of total)
exact: 7.0ms (0.6% of total)
ival-assert: 3.0ms (0.3% of total)
Bogosity

explain145.0ms (1.1%)

Memory
-21.9MiB live, 142.4MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
730-73(2.0067590629641012)(exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x)))
00-0-(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
00-0-(cos.f64 x)
00-0-(*.f64 #s(literal 10 binary64) (*.f64 x x))
00-0-(*.f64 x x)
00-0-#s(literal 10 binary64)
00-0-x
Confusion
Predicted +Predicted -
+095
-0161
Precision
0/0
Recall
0.0
Confusion?
Predicted +Predicted MaybePredicted -
+0950
-01610
Precision?
0.37109375
Recall?
1.0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+010
-000
Precision?
1.0
Recall?
1.0
Samples
44.0ms512×0valid
Compiler

Compiled 67 to 25 computations (62.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 31.0ms
ival-cos: 15.0ms (48.1% of total)
ival-mult: 9.0ms (28.8% of total)
ival-exp: 6.0ms (19.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess24.0ms (0.2%)

Memory
30.2MiB live, 30.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
13119
28219
320319
435219
542019
646419
748819
849419
949919
1050119
079
0129
1189
2259
3309
0309
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Outputs
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)) (cos.f64 x))
Symmetry

(abs x)

Compiler

Compiled 9 to 7 computations (22.2% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
94.6%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 9 to 7 computations (22.2% saved)

simplify10.0ms (0.1%)

Memory
-39.0MiB live, 5.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 10 binary64) (*.f64 x x))
cost-diff0
(exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x)))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0727
01227
11827
22527
33027
03027
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(cos.f64 x)
x
(exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x)))
(*.f64 #s(literal 10 binary64) (*.f64 x x))
#s(literal 10 binary64)
(*.f64 x x)
Outputs
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)) (cos.f64 x))
(cos.f64 x)
x
(exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x)))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(*.f64 #s(literal 10 binary64) (*.f64 x x))
(*.f64 (*.f64 x x) #s(literal 10 binary64))
#s(literal 10 binary64)
(*.f64 x x)

localize45.0ms (0.3%)

Memory
6.1MiB live, 43.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(cos.f64 x)
accuracy0.234375
(*.f64 #s(literal 10 binary64) (*.f64 x x))
accuracy0.35546875
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
accuracy3.214550255253864
(exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x)))
Samples
22.0ms256×0valid
Compiler

Compiled 29 to 9 computations (69% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-cos: 8.0ms (50.8% of total)
ival-mult: 5.0ms (31.8% of total)
ival-exp: 3.0ms (19.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series3.0ms (0%)

Memory
4.3MiB live, 4.3MiB allocated
Counts
4 → 14
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(cos.f64 x)
(exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x)))
(*.f64 #s(literal 10 binary64) (*.f64 x x))
Outputs
1
(+ 1 (* 19/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(+ 1 (* 10 (pow x 2)))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(* 10 (pow x 2))
(* (cos x) (exp (* 10 (pow x 2))))
(cos x)
(exp (* 10 (pow x 2)))
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@0
((* (cos x) (exp (* 10 (* x x)))) (cos x) (exp (* 10 (* x x))) (* 10 (* x x)))
1.0ms
x
@inf
((* (cos x) (exp (* 10 (* x x)))) (cos x) (exp (* 10 (* x x))) (* 10 (* x x)))
1.0ms
x
@-inf
((* (cos x) (exp (* 10 (* x x)))) (cos x) (exp (* 10 (* x x))) (* 10 (* x x)))

simplify191.0ms (1.4%)

Memory
18.8MiB live, 174.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
053140
1131140
2336140
3718140
41104140
51266140
61370140
71591140
82106140
93382140
104756140
115587140
125953140
136198140
146283140
157367140
08443122
Stop Event
iter limit
node limit
Counts
14 → 14
Calls
Call 1
Inputs
1
(+ 1 (* 19/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(+ 1 (* 10 (pow x 2)))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(* 10 (pow x 2))
(* (cos x) (exp (* 10 (pow x 2))))
(cos x)
(exp (* 10 (pow x 2)))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* 19/2 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 19/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1081/24 binary64) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 102299/720 binary64) (*.f64 x x) #s(literal 1081/24 binary64)) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* -1/2 (pow x 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* 10 (pow x 2)))
(fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 50 binary64) (*.f64 x x) #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 500/3 binary64) (*.f64 x x) #s(literal 50 binary64)) (*.f64 x x) #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(* 10 (pow x 2))
(*.f64 #s(literal 10 binary64) (*.f64 x x))
(* (cos x) (exp (* 10 (pow x 2))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x))
(cos x)
(cos.f64 x)
(exp (* 10 (pow x 2)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)

rewrite112.0ms (0.8%)

Memory
-27.8MiB live, 107.1MiB allocated
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0722
01222
12022
24222
311322
442616
0338816
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
4 → 506
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(cos.f64 x)
(exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x)))
(*.f64 #s(literal 10 binary64) (*.f64 x x))
Outputs
(*.f64 (*.f64 (pow.f64 (exp.f64 x) x) (cos.f64 x)) (pow.f64 (exp.f64 x) x))
(*.f64 (pow.f64 (exp.f64 x) x) (*.f64 (pow.f64 (exp.f64 x) x) (cos.f64 x)))
(*.f64 (pow.f64 (exp.f64 x) x) (cos.f64 x))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) x))
(cos.f64 x)
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1/4 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1/4 binary64)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (exp.f64 x) (*.f64 x #s(literal 1/4 binary64))) (pow.f64 (exp.f64 x) (*.f64 x #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (exp.f64 x) (/.f64 (*.f64 #s(literal 5 binary64) x) #s(literal 2 binary64))) (pow.f64 (exp.f64 x) (/.f64 (*.f64 #s(literal 5 binary64) x) #s(literal 2 binary64))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 5/4 binary64)) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 5/4 binary64)))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 x #s(literal 1/4 binary64))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 x #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x #s(literal 1/4 binary64))) x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x #s(literal 1/4 binary64))) x))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x #s(literal 1/4 binary64))) (*.f64 #s(literal 1/2 binary64) x)) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x #s(literal 1/4 binary64))) (*.f64 #s(literal 1/2 binary64) x)))
(*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (exp.f64 x) x))
(pow.f64 (*.f64 (exp.f64 #s(literal 10 binary64)) (exp.f64 #s(literal 20 binary64))) (*.f64 x x))
(pow.f64 (*.f64 (exp.f64 #s(literal 20 binary64)) (exp.f64 #s(literal 20 binary64))) (*.f64 x x))
(pow.f64 (*.f64 (exp.f64 #s(literal 20 binary64)) (exp.f64 #s(literal 10 binary64))) (*.f64 x x))
(pow.f64 (*.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (exp.f64 (pow.f64 x #s(literal 3/2 binary64)))) (sqrt.f64 x))
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x))
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) x)
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (sqrt.f64 x)) (sqrt.f64 x))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) #s(literal 1 binary64)) (*.f64 x x))
(pow.f64 (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1 binary64)) (*.f64 x x))
(pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x))
(pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 #s(literal 5 binary64) x)))
(pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)))
(pow.f64 (exp.f64 (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 x #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) x)
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1/4 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (+.f64 (sqrt.f64 x) (sqrt.f64 x)))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 5 binary64)))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 #s(literal 2 binary64) (sqrt.f64 x)))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 5/2 binary64)))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 x #s(literal 1/4 binary64))))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 x #s(literal 1 binary64))))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) x))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 x #s(literal 1 binary64)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) x)
(pow.f64 (exp.f64 x) (*.f64 (*.f64 #s(literal 5 binary64) x) #s(literal 1 binary64)))
(pow.f64 (exp.f64 x) (*.f64 (*.f64 #s(literal 5 binary64) x) #s(literal 2 binary64)))
(pow.f64 (exp.f64 x) (*.f64 x #s(literal 5/2 binary64)))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) (*.f64 x #s(literal 1/4 binary64))))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) (*.f64 x #s(literal 1 binary64))))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 2 binary64) x))
(pow.f64 (exp.f64 x) (*.f64 x #s(literal 1 binary64)))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 5 binary64) x))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(pow.f64 (exp.f64 x) x)
(pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 x #s(literal 1/4 binary64))))
(pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 x x))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 5/2 binary64))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 3 binary64))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 4 binary64))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 5 binary64))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 1 binary64))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 2 binary64))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (fma.f64 x #s(literal 1/4 binary64) (*.f64 x #s(literal 1/4 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 (*.f64 #s(literal 1/2 binary64) x) #s(literal 1 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 #s(literal 2 binary64) (*.f64 x #s(literal 1/4 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 x #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 x #s(literal 1 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x)
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x #s(literal 1/4 binary64))))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x #s(literal 1 binary64))))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x))
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)))
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)))
(sqrt.f64 (pow.f64 (exp.f64 x) x))
(exp.f64 (*.f64 (*.f64 #s(literal 5 binary64) x) (*.f64 #s(literal 1/2 binary64) x)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64))) (*.f64 #s(literal 1/2 binary64) x)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64)))) (sqrt.f64 x)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64)))) (sqrt.f64 x)))
(exp.f64 (*.f64 (*.f64 x x) #s(literal 5/2 binary64)))
(exp.f64 (*.f64 x x))
(*.f64 #s(literal -5 binary64) (*.f64 (neg.f64 x) x))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 10 binary64) (*.f64 #s(literal 2 binary64) x)) (*.f64 #s(literal 1/2 binary64) x))
(*.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64)))
(*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x))
(*.f64 (*.f64 #s(literal 20 binary64) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 20 binary64) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1/2 binary64) x))
(*.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (/.f64 (log.f64 x) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (/.f64 (log.f64 x) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 x x) #s(literal 3/2 binary64)) (pow.f64 (*.f64 x x) #s(literal 3/2 binary64)))
(*.f64 (pow.f64 (*.f64 x x) #s(literal -1/2 binary64)) (pow.f64 (*.f64 x x) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (*.f64 (neg.f64 x) x) #s(literal 3 binary64)) #s(literal -1/8 binary64))
(*.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64)) (*.f64 x x))
(*.f64 (neg.f64 (neg.f64 x)) x)
(*.f64 (*.f64 #s(literal -2 binary64) (neg.f64 x)) x)
(*.f64 (*.f64 #s(literal -2 binary64) x) (neg.f64 x))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 x))
(*.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) x) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))
(*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) x) #s(literal 3 binary64)))
(*.f64 #s(literal 1/8 binary64) (*.f64 x x))
(*.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(*.f64 (*.f64 #s(literal 20 binary64) (*.f64 #s(literal 1/2 binary64) x)) x)
(*.f64 (*.f64 #s(literal 20 binary64) x) (*.f64 #s(literal 1/2 binary64) x))
(*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (+.f64 (sqrt.f64 x) (sqrt.f64 x)))
(*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 x))
(*.f64 (*.f64 (sqrt.f64 x) #s(literal 10 binary64)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 x) #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64)))
(*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (/.f64 (sqrt.f64 x) #s(literal 4 binary64)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 1 binary64)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (+.f64 (sqrt.f64 x) (sqrt.f64 x)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (pow.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 5 binary64)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)))
(*.f64 (pow.f64 x #s(literal 3/2 binary64)) (sqrt.f64 x))
(*.f64 (*.f64 #s(literal 2 binary64) x) (*.f64 x #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) x) (*.f64 #s(literal 1/2 binary64) x))
(*.f64 (*.f64 #s(literal 2 binary64) x) x)
(*.f64 (*.f64 x #s(literal 1/4 binary64)) (*.f64 #s(literal 2 binary64) x))
(*.f64 (*.f64 x #s(literal 1/4 binary64)) x)
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 1/4 binary64)) (pow.f64 x #s(literal 3/2 binary64))))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
(*.f64 #s(literal 1/4 binary64) (*.f64 x x))
(*.f64 #s(literal -1/2 binary64) (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x)))
(*.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 x) x))
(*.f64 (/.f64 #s(literal 2 binary64) x) (/.f64 #s(literal 1 binary64) x))
(*.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) (*.f64 x x))
(*.f64 (neg.f64 x) (/.f64 x #s(literal -4 binary64)))
(*.f64 (neg.f64 x) (*.f64 x #s(literal -1/2 binary64)))
(*.f64 (neg.f64 x) (/.f64 x #s(literal -2 binary64)))
(*.f64 (neg.f64 x) (*.f64 x #s(literal -2 binary64)))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -2 binary64)) (*.f64 (neg.f64 x) x))
(*.f64 (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x)) #s(literal -1/4 binary64))
(*.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(*.f64 (*.f64 x #s(literal 1 binary64)) x)
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x x) #s(literal -4 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) x))
(*.f64 #s(literal 20 binary64) (*.f64 x x))
(*.f64 (*.f64 #s(literal 5 binary64) x) (*.f64 #s(literal 2 binary64) x))
(*.f64 (*.f64 #s(literal 5 binary64) x) x)
(*.f64 (sqrt.f64 x) (/.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 x) (/.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 4 binary64)))
(*.f64 (sqrt.f64 x) (/.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) x)))
(*.f64 (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 5 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 10 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) #s(literal 10 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
(*.f64 (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)) x))
(*.f64 (sqrt.f64 x) (fma.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 x) (fma.f64 (sqrt.f64 x) x (pow.f64 x #s(literal 3/2 binary64))))
(*.f64 (sqrt.f64 x) (pow.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64))))
(*.f64 (sqrt.f64 x) (log.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64)))))
(*.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)))
(*.f64 (sqrt.f64 x) (pow.f64 x #s(literal 3/2 binary64)))
(*.f64 #s(literal 5 binary64) (*.f64 x x))
(*.f64 (*.f64 #s(literal 1/2 binary64) x) (fma.f64 #s(literal 10 binary64) x (*.f64 #s(literal 10 binary64) x)))
(*.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 #s(literal 2 binary64) x))
(*.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 x #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 #s(literal 1/2 binary64) x))
(*.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 #s(literal 10 binary64) x))
(*.f64 (*.f64 #s(literal 1/2 binary64) x) x)
(*.f64 #s(literal 1/2 binary64) (*.f64 x x))
(*.f64 #s(literal -2 binary64) (*.f64 (neg.f64 x) x))
(*.f64 (*.f64 (neg.f64 x) x) #s(literal -5 binary64))
(*.f64 (*.f64 (neg.f64 x) x) #s(literal -1/4 binary64))
(*.f64 (*.f64 (neg.f64 x) x) #s(literal -1/2 binary64))
(*.f64 (*.f64 (neg.f64 x) x) #s(literal -1 binary64))
(*.f64 (*.f64 (neg.f64 x) x) #s(literal -2 binary64))
(*.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 x x))
(*.f64 (*.f64 #s(literal 10 binary64) x) (*.f64 x #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 10 binary64) x) (*.f64 x #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 10 binary64) x) (*.f64 #s(literal 1/2 binary64) x))
(*.f64 (*.f64 #s(literal 10 binary64) x) x)
(*.f64 #s(literal 2 binary64) (*.f64 x x))
(*.f64 (*.f64 x x) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64))))
(*.f64 (*.f64 x x) #s(literal 1/8 binary64))
(*.f64 (*.f64 x x) #s(literal 1/4 binary64))
(*.f64 (*.f64 x x) (pow.f64 (*.f64 x x) #s(literal -2 binary64)))
(*.f64 (*.f64 x x) #s(literal 20 binary64))
(*.f64 (*.f64 x x) #s(literal 5 binary64))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(*.f64 (*.f64 x x) #s(literal 1 binary64))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(*.f64 (*.f64 x x) #s(literal 10 binary64))
(*.f64 #s(literal 10 binary64) (*.f64 x x))
(*.f64 x (/.f64 (*.f64 x #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(*.f64 x (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(*.f64 x (neg.f64 (neg.f64 x)))
(*.f64 x (*.f64 (neg.f64 x) #s(literal -2 binary64)))
(*.f64 x (fma.f64 x #s(literal 1/4 binary64) (*.f64 x #s(literal 1/4 binary64))))
(*.f64 x (*.f64 #s(literal 2 binary64) x))
(*.f64 x (*.f64 x #s(literal 1/4 binary64)))
(*.f64 x (*.f64 x #s(literal 1 binary64)))
(*.f64 x (*.f64 #s(literal 5 binary64) x))
(*.f64 x (*.f64 #s(literal 1/2 binary64) x))
(*.f64 x (*.f64 #s(literal 10 binary64) x))
(*.f64 x x)
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 x))
(pow.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (neg.f64 (log.f64 x)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 x))
(pow.f64 (sqrt.f64 x) #s(literal 4 binary64))
(pow.f64 (*.f64 x x) #s(literal -3 binary64))
(pow.f64 (*.f64 x x) #s(literal 3 binary64))
(pow.f64 (*.f64 x x) #s(literal -1 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 x #s(literal -2 binary64))
(pow.f64 x #s(literal 2 binary64))
(/.f64 (/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -2 binary64)) #s(literal -2 binary64)) (*.f64 x x))
(/.f64 (/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -2 binary64)) (*.f64 x x)) #s(literal -2 binary64))
(/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(/.f64 (/.f64 (/.f64 #s(literal 2 binary64) x) (sqrt.f64 x)) (sqrt.f64 x))
(/.f64 (/.f64 #s(literal -2 binary64) x) (neg.f64 x))
(/.f64 (/.f64 #s(literal 2 binary64) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x))
(/.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) x)) (/.f64 #s(literal 2 binary64) x))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1 binary64)) (/.f64 #s(literal 2 binary64) x))
(/.f64 (*.f64 #s(literal 10 binary64) (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -2 binary64))) (*.f64 (neg.f64 x) x))
(/.f64 (*.f64 #s(literal 10 binary64) (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x))) #s(literal -4 binary64))
(/.f64 (*.f64 #s(literal 10 binary64) (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 2 binary64))) (*.f64 x x))
(/.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) #s(literal 1 binary64)) (/.f64 #s(literal 2 binary64) x))
(/.f64 (*.f64 #s(literal 20 binary64) (*.f64 (neg.f64 x) x)) #s(literal -2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 2 binary64) x))
(/.f64 (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1/2 binary64) x))
(/.f64 (/.f64 #s(literal 1 binary64) x) x)
(/.f64 (/.f64 #s(literal 2 binary64) (*.f64 #s(literal 1/2 binary64) x)) x)
(/.f64 (/.f64 #s(literal 2 binary64) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(/.f64 (/.f64 #s(literal 2 binary64) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(/.f64 (pow.f64 (*.f64 (neg.f64 x) x) #s(literal 3 binary64)) #s(literal -8 binary64))
(/.f64 (neg.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -2 binary64))) (*.f64 x x))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 2 binary64))) (*.f64 (neg.f64 x) x))
(/.f64 (neg.f64 (/.f64 #s(literal 2 binary64) x)) (neg.f64 x))
(/.f64 #s(literal -10 binary64) (*.f64 (neg.f64 x) x))
(/.f64 (fma.f64 (neg.f64 x) x (*.f64 (*.f64 (neg.f64 x) x) #s(literal 1 binary64))) (neg.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64))))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -20 binary64)) (*.f64 (neg.f64 x) x))
(/.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 20 binary64)) (*.f64 x x))
(/.f64 (+.f64 #s(literal -20 binary64) (neg.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)))) (*.f64 (neg.f64 x) x))
(/.f64 #s(literal -20 binary64) (*.f64 (neg.f64 x) x))
(/.f64 (+.f64 #s(literal 20 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64))) (*.f64 x x))
(/.f64 (*.f64 (/.f64 #s(literal 2 binary64) x) #s(literal 1 binary64)) x)
(/.f64 (*.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) x)) x)
(/.f64 (*.f64 (/.f64 #s(literal 2 binary64) x) #s(literal 2 binary64)) x)
(/.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 2 binary64) x)) x)
(/.f64 (fma.f64 (*.f64 (neg.f64 x) x) #s(literal -4 binary64) (*.f64 x x)) #s(literal 8 binary64))
(/.f64 (fma.f64 (*.f64 (neg.f64 x) x) #s(literal 4 binary64) (*.f64 (neg.f64 x) x)) #s(literal -16 binary64))
(/.f64 (fma.f64 (*.f64 (neg.f64 x) x) #s(literal 4 binary64) (*.f64 (neg.f64 x) x)) #s(literal -8 binary64))
(/.f64 (fma.f64 x x (*.f64 #s(literal -4 binary64) (*.f64 (neg.f64 x) x))) #s(literal 8 binary64))
(/.f64 (fma.f64 (*.f64 (neg.f64 x) x) #s(literal -4 binary64) (*.f64 #s(literal -4 binary64) (*.f64 (neg.f64 x) x))) #s(literal 16 binary64))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -4 binary64)) (*.f64 (neg.f64 x) x))
(/.f64 (+.f64 #s(literal -4 binary64) (neg.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)))) (*.f64 (*.f64 x x) #s(literal -4 binary64)))
(/.f64 (+.f64 #s(literal 4 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64))) (*.f64 (*.f64 x x) #s(literal 4 binary64)))
(/.f64 (fma.f64 (*.f64 x x) #s(literal -4 binary64) (*.f64 (neg.f64 x) x)) #s(literal -8 binary64))
(/.f64 (fma.f64 (*.f64 x x) #s(literal 4 binary64) (*.f64 x x)) #s(literal 16 binary64))
(/.f64 (fma.f64 (*.f64 x x) #s(literal 4 binary64) (*.f64 x x)) #s(literal 8 binary64))
(/.f64 (fma.f64 (neg.f64 x) x (*.f64 #s(literal 4 binary64) (*.f64 (neg.f64 x) x))) #s(literal -8 binary64))
(/.f64 (fma.f64 (*.f64 x x) #s(literal -4 binary64) (*.f64 #s(literal 4 binary64) (*.f64 (neg.f64 x) x))) #s(literal -16 binary64))
(/.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 4 binary64)) (*.f64 x x))
(/.f64 (*.f64 #s(literal 2 binary64) x) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 x) x))
(/.f64 (/.f64 #s(literal 2 binary64) x) (*.f64 #s(literal 1 binary64) x))
(/.f64 (/.f64 #s(literal 2 binary64) x) (*.f64 #s(literal 1/2 binary64) x))
(/.f64 (/.f64 #s(literal 2 binary64) x) x)
(/.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) (*.f64 x x))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -2 binary64)) (*.f64 (neg.f64 x) x))
(/.f64 (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x)) #s(literal -8 binary64))
(/.f64 (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x)) (neg.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64))))
(/.f64 (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x)) #s(literal -4 binary64))
(/.f64 #s(literal -4 binary64) (*.f64 (neg.f64 x) x))
(/.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(/.f64 #s(literal 4 binary64) (*.f64 x x))
(/.f64 (*.f64 x #s(literal 1 binary64)) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal -1 binary64) (pow.f64 (*.f64 (neg.f64 x) x) #s(literal 3 binary64)))
(/.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) x))
(/.f64 #s(literal 20 binary64) (*.f64 x x))
(/.f64 #s(literal 5 binary64) (*.f64 x x))
(/.f64 #s(literal 1/2 binary64) (*.f64 x x))
(/.f64 #s(literal -2 binary64) (*.f64 (neg.f64 x) x))
(/.f64 (*.f64 (neg.f64 x) x) (neg.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64))))
(/.f64 (*.f64 (neg.f64 x) x) #s(literal -8 binary64))
(/.f64 (*.f64 (neg.f64 x) x) #s(literal -1/2 binary64))
(/.f64 (*.f64 (neg.f64 x) x) (neg.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64))))
(/.f64 (*.f64 (neg.f64 x) x) #s(literal -4 binary64))
(/.f64 (*.f64 (neg.f64 x) x) #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 x) x) #s(literal -2 binary64))
(/.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64)) (*.f64 x x)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (neg.f64 x) x) (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -4 binary64) (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x x) (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 x x) #s(literal 10 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 x x))
(/.f64 (*.f64 #s(literal 10 binary64) x) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) (*.f64 x x))
(/.f64 (*.f64 x x) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64))))
(/.f64 (*.f64 x x) (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64)))
(/.f64 (*.f64 x x) #s(literal 8 binary64))
(/.f64 (*.f64 x x) (pow.f64 (*.f64 x x) #s(literal -2 binary64)))
(/.f64 (*.f64 x x) #s(literal 4 binary64))
(/.f64 (*.f64 x x) #s(literal 1/2 binary64))
(/.f64 (*.f64 x x) #s(literal 1 binary64))
(/.f64 (*.f64 x x) #s(literal 2 binary64))
(/.f64 #s(literal 10 binary64) (*.f64 x x))
(/.f64 x (/.f64 #s(literal 2 binary64) x))
(neg.f64 (*.f64 #s(literal 20 binary64) (*.f64 (neg.f64 x) x)))
(neg.f64 (pow.f64 (*.f64 (neg.f64 x) x) #s(literal 3 binary64)))
(neg.f64 (/.f64 (*.f64 x x) #s(literal -4 binary64)))
(neg.f64 (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x)))
(neg.f64 (*.f64 (neg.f64 x) x))
(fma.f64 #s(literal -5 binary64) (*.f64 (neg.f64 x) x) (*.f64 x x))
(fma.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 10 binary64) (*.f64 #s(literal 2 binary64) x)) (*.f64 #s(literal 1/2 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64)) (*.f64 x x))
(fma.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 2 binary64) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 20 binary64) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 20 binary64) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1/2 binary64) x) (*.f64 x x))
(fma.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (/.f64 (log.f64 x) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (/.f64 (log.f64 x) #s(literal 2 binary64))) (*.f64 x x))
(fma.f64 (pow.f64 (*.f64 x x) #s(literal 3/2 binary64)) (pow.f64 (*.f64 x x) #s(literal 3/2 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 (*.f64 x x) #s(literal -1/2 binary64)) (pow.f64 (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 (*.f64 (neg.f64 x) x) #s(literal 3 binary64)) #s(literal -1/8 binary64) (*.f64 x x))
(fma.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64)) (*.f64 x x) (*.f64 x x))
(fma.f64 (neg.f64 (neg.f64 x)) x (*.f64 x x))
(fma.f64 (*.f64 #s(literal -2 binary64) (neg.f64 x)) x (*.f64 x x))
(fma.f64 (*.f64 #s(literal -2 binary64) x) (neg.f64 x) (*.f64 x x))
(fma.f64 (pow.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 x) (*.f64 x x))
(fma.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) x) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) x) #s(literal 3 binary64)) (*.f64 x x))
(fma.f64 #s(literal 1/8 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 20 binary64) (*.f64 #s(literal 1/2 binary64) x)) x (*.f64 x x))
(fma.f64 (*.f64 #s(literal 20 binary64) x) (*.f64 #s(literal 1/2 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (+.f64 (sqrt.f64 x) (sqrt.f64 x)) (*.f64 x x))
(fma.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 x) (*.f64 x x))
(fma.f64 (*.f64 (sqrt.f64 x) #s(literal 10 binary64)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 (sqrt.f64 x) #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (/.f64 (sqrt.f64 x) #s(literal 4 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 1 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 1/4 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (+.f64 (sqrt.f64 x) (sqrt.f64 x)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (pow.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 5 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 3/2 binary64)) (sqrt.f64 x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 2 binary64) x) (*.f64 x #s(literal 1/4 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 2 binary64) x) (*.f64 #s(literal 1/2 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 2 binary64) x) x (*.f64 x x))
(fma.f64 (*.f64 x #s(literal 1/4 binary64)) (*.f64 #s(literal 2 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 x #s(literal 1/4 binary64)) x (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 1/4 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (*.f64 x x))
(fma.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))) (*.f64 x x))
(fma.f64 #s(literal 1/4 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 #s(literal -1/2 binary64) (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x)) (*.f64 x x))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 x) x) (*.f64 x x))
(fma.f64 (/.f64 #s(literal 2 binary64) x) (/.f64 #s(literal 1 binary64) x) (*.f64 x x))
(fma.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) (*.f64 x x) (*.f64 x x))
(fma.f64 (neg.f64 x) (/.f64 x #s(literal -4 binary64)) (*.f64 x x))
(fma.f64 (neg.f64 x) (*.f64 x #s(literal -1/2 binary64)) (*.f64 x x))
(fma.f64 (neg.f64 x) (/.f64 x #s(literal -2 binary64)) (*.f64 x x))
(fma.f64 (neg.f64 x) (*.f64 x #s(literal -2 binary64)) (*.f64 x x))
(fma.f64 (neg.f64 x) (neg.f64 x) (*.f64 x x))
(fma.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal -2 binary64)) (*.f64 (neg.f64 x) x) (*.f64 x x))
(fma.f64 (fma.f64 (neg.f64 x) x (*.f64 (neg.f64 x) x)) #s(literal -1/4 binary64) (*.f64 x x))
(fma.f64 (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 2 binary64)) (*.f64 x x) (*.f64 x x))
(fma.f64 #s(literal 4 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 (*.f64 x #s(literal 1 binary64)) x (*.f64 x x))
(fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x x) #s(literal -4 binary64)) (*.f64 x x))
(fma.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) x) (*.f64 x x))
(fma.f64 #s(literal 20 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 5 binary64) x) (*.f64 #s(literal 2 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 5 binary64) x) x (*.f64 x x))
(fma.f64 (sqrt.f64 x) (/.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (/.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 4 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (/.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) x)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/4 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 5 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) #s(literal 10 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) #s(literal 10 binary64)) (*.f64 #s(literal 1/2 binary64) x)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)) x) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (fma.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (fma.f64 (sqrt.f64 x) x (pow.f64 x #s(literal 3/2 binary64))) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (pow.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1/4 binary64))) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64))) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (log.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64)))) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (*.f64 x x))
(fma.f64 (sqrt.f64 x) (pow.f64 x #s(literal 3/2 binary64)) (*.f64 x x))
(fma.f64 #s(literal 5 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (fma.f64 #s(literal 10 binary64) x (*.f64 #s(literal 10 binary64) x)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 #s(literal 2 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 x #s(literal 1 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 #s(literal 1/2 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (*.f64 #s(literal 10 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) x (*.f64 x x))
(fma.f64 #s(literal 1/2 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 #s(literal -2 binary64) (*.f64 (neg.f64 x) x) (*.f64 x x))
(fma.f64 (*.f64 (neg.f64 x) x) #s(literal -5 binary64) (*.f64 x x))
(fma.f64 (*.f64 (neg.f64 x) x) #s(literal -1/4 binary64) (*.f64 x x))
(fma.f64 (*.f64 (neg.f64 x) x) #s(literal -1/2 binary64) (*.f64 x x))
(fma.f64 (*.f64 (neg.f64 x) x) #s(literal -1 binary64) (*.f64 x x))
(fma.f64 (*.f64 (neg.f64 x) x) #s(literal -2 binary64) (*.f64 x x))
(fma.f64 #s(literal 0 binary64) (/.f64 #s(literal 1 binary64) #s(literal 0 binary64)) (*.f64 x x))
(fma.f64 #s(literal 1 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 10 binary64) x) (*.f64 x #s(literal 1/4 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 10 binary64) x) (*.f64 x #s(literal 1 binary64)) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 10 binary64) x) (*.f64 #s(literal 1/2 binary64) x) (*.f64 x x))
(fma.f64 (*.f64 #s(literal 10 binary64) x) x (*.f64 x x))
(fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 (*.f64 x x) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64))) (*.f64 x x))
(fma.f64 (*.f64 x x) #s(literal 1/8 binary64) (*.f64 x x))
(fma.f64 (*.f64 x x) #s(literal 1/4 binary64) (*.f64 x x))
(fma.f64 (*.f64 x x) (pow.f64 (*.f64 x x) #s(literal -2 binary64)) (*.f64 x x))
(fma.f64 (*.f64 x x) #s(literal 20 binary64) (*.f64 x x))
(fma.f64 (*.f64 x x) #s(literal 5 binary64) (*.f64 x x))
(fma.f64 (*.f64 x x) #s(literal 1/2 binary64) (*.f64 x x))
(fma.f64 (*.f64 x x) #s(literal 1 binary64) (*.f64 x x))
(fma.f64 (*.f64 x x) #s(literal 2 binary64) (*.f64 x x))
(fma.f64 (*.f64 x x) #s(literal 10 binary64) (*.f64 x x))
(fma.f64 #s(literal 10 binary64) (*.f64 x x) (*.f64 x x))
(fma.f64 x (/.f64 (*.f64 x #s(literal 1/4 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(fma.f64 x (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)) (*.f64 x x))
(fma.f64 x (neg.f64 (neg.f64 x)) (*.f64 x x))
(fma.f64 x (*.f64 (neg.f64 x) #s(literal -2 binary64)) (*.f64 x x))
(fma.f64 x (fma.f64 x #s(literal 1/4 binary64) (*.f64 x #s(literal 1/4 binary64))) (*.f64 x x))
(fma.f64 x (*.f64 #s(literal 2 binary64) x) (*.f64 x x))
(fma.f64 x (*.f64 x #s(literal 1/4 binary64)) (*.f64 x x))
(fma.f64 x (*.f64 x #s(literal 1 binary64)) (*.f64 x x))
(fma.f64 x (*.f64 #s(literal 5 binary64) x) (*.f64 x x))
(fma.f64 x (*.f64 #s(literal 1/2 binary64) x) (*.f64 x x))
(fma.f64 x (*.f64 #s(literal 10 binary64) x) (*.f64 x x))
(fma.f64 x x (*.f64 x x))
(-.f64 (/.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64)) (/.f64 (pow.f64 (*.f64 x x) #s(literal -2 binary64)) #s(literal 0 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 x x) #s(literal -4 binary64)))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 x) x))
(-.f64 (*.f64 x x) (*.f64 (neg.f64 x) x))
(exp.f64 (neg.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 x)))
(exp.f64 (*.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)) #s(literal 3 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(+.f64 (*.f64 x x) (*.f64 x x))
(log.f64 (pow.f64 (exp.f64 x) x))

eval84.0ms (0.6%)

Memory
31.6MiB live, 108.2MiB allocated
Compiler

Compiled 6 708 to 1 704 computations (74.6% saved)

prune51.0ms (0.4%)

Memory
-30.8MiB live, 51.5MiB allocated
Pruning

27 alts after pruning (26 fresh and 1 done)

PrunedKeptTotal
New49426520
Fresh000
Picked011
Done000
Total49427521
Accuracy
99.0%
Counts
521 → 27
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
93.3%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64))))
96.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
96.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
96.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) x)))
95.5%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
93.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64)))))
98.0%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
94.3%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
94.0%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
95.4%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
95.4%
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
98.0%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
94.0%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
94.5%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
94.6%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
9.8%
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
96.8%
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
27.6%
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
21.3%
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
18.2%
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
1.5%
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
Compiler

Compiled 717 to 529 computations (26.2% saved)

simplify239.0ms (1.7%)

Memory
27.4MiB live, 140.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
cost-diff0
(exp.f64 (pow.f64 x #s(literal 3/2 binary64)))
cost-diff0
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
cost-diff0
(pow.f64 (exp.f64 x) x)
cost-diff0
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
cost-diff0
(exp.f64 #s(literal 10 binary64))
cost-diff0
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
cost-diff0
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
cost-diff0
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
cost-diff2
(*.f64 x #s(literal 1 binary64))
cost-diff2
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
cost-diff7
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
032175
053163
173163
299139
3120139
4214139
5770137
62058137
73246137
84885137
95950137
107081137
08008137
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(cos.f64 x)
x
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))
(*.f64 x #s(literal 1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(cos.f64 x)
x
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x))
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(*.f64 x x)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
(cos.f64 x)
x
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
(pow.f64 (exp.f64 x) x)
(exp.f64 x)
#s(literal 10 binary64)
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(cos.f64 x)
x
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)))
(exp.f64 (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 x #s(literal 3/2 binary64))
#s(literal 3/2 binary64)
(*.f64 (sqrt.f64 x) #s(literal 10 binary64))
(sqrt.f64 x)
#s(literal 10 binary64)
Outputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x) (cos.f64 x))
(cos.f64 x)
x
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x)
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (exp.f64 #s(literal 5 binary64)) (*.f64 x x))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))
(*.f64 #s(literal 1/2 binary64) x)
(*.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x) (cos.f64 x))
(cos.f64 x)
x
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x)
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(*.f64 x x)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x) (cos.f64 x))
(cos.f64 x)
x
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x)
(pow.f64 (exp.f64 x) x)
(exp.f64 x)
#s(literal 10 binary64)
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(*.f64 (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))) (cos.f64 x))
(cos.f64 x)
x
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)))
(exp.f64 (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 x #s(literal 3/2 binary64))
#s(literal 3/2 binary64)
(*.f64 (sqrt.f64 x) #s(literal 10 binary64))
(sqrt.f64 x)
#s(literal 10 binary64)

localize348.0ms (2.5%)

Memory
-7.8MiB live, 150.1MiB allocated
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
accuracy0.33984375
(*.f64 (sqrt.f64 x) #s(literal 10 binary64))
accuracy0.35546875
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
accuracy0.4609375
(exp.f64 (pow.f64 x #s(literal 3/2 binary64)))
accuracy2.9408429878057127
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)))
accuracy0.0
(cos.f64 x)
accuracy0.35546875
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
accuracy0.45703125
(pow.f64 (exp.f64 x) x)
accuracy1.4759142054203023
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
accuracy0.0
(exp.f64 #s(literal 10 binary64))
accuracy0.0
(cos.f64 x)
accuracy0.35546875
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
accuracy2.9458942674119735
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x))
accuracy63.03774781869915
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
accuracy0.15234375
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
accuracy0.35546875
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
accuracy0.4296875
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
accuracy0.9902725586106522
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
Samples
249.0ms256×0valid
Compiler

Compiled 175 to 31 computations (82.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 217.0ms
ival-cos: 158.0ms (72.7% of total)
ival-pow: 30.0ms (13.8% of total)
ival-mult: 15.0ms (6.9% of total)
ival-exp: 11.0ms (5.1% of total)
ival-sqrt: 2.0ms (0.9% of total)
ival-div: 1.0ms (0.5% of total)
exact: 1.0ms (0.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series12.0ms (0.1%)

Memory
19.0MiB live, 19.0MiB allocated
Counts
17 → 43
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(*.f64 x #s(literal 1 binary64))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(cos.f64 x)
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x))
(exp.f64 #s(literal 10 binary64))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
(pow.f64 (exp.f64 x) x)
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)))
(exp.f64 (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(*.f64 (sqrt.f64 x) #s(literal 10 binary64))
Outputs
1
(+ 1 (* 10 (pow x 2)))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(+ 1 (* 5 (pow x 2)))
(+ 1 (* (pow x 2) (+ 5 (* 25/2 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 5 (* (pow x 2) (+ 25/2 (* 125/6 (pow x 2)))))))
x
(+ 1 (* 19/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(+ 1 (pow x 2))
(+ 1 (* (pow x 2) (+ 1 (* 1/2 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 1 (* (pow x 2) (+ 1/2 (* 1/6 (pow x 2)))))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (* 50 (pow x 2))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (+ (* 5/3 (* (sqrt x) (+ (sqrt (pow x 3)) (+ (* -3 (sqrt (pow x 3))) (* 2 (sqrt (pow x 3))))))) (+ (* 50 (* (sqrt (pow x 3)) (+ x (* -1 x)))) (* 500/3 (pow x 3)))))))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (* 50 (pow x 2)))))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (+ (* 50 (pow x 2)) (* x (+ (* 5/3 (* (sqrt x) (+ (sqrt (pow x 3)) (+ (* -3 (sqrt (pow x 3))) (* 2 (sqrt (pow x 3))))))) (+ (* 50 (* (sqrt (pow x 3)) (+ x (* -1 x)))) (* 500/3 (pow x 3)))))))))))
(+ 1 (sqrt (pow x 3)))
(+ 1 (* x (+ (sqrt x) (* 1/2 (pow x 2)))))
(+ 1 (* x (+ (sqrt x) (* x (+ (* 1/6 (sqrt (pow x 5))) (* 1/2 x))))))
(+ 1 (* 10 x))
(+ 1 (* x (+ 10 (* 50 x))))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(* 10 (sqrt x))
(pow (exp (* 5 (pow x 2))) 2)
(exp (* 5 (pow x 2)))
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(* (cos x) (exp (* 10 (pow x 2))))
(cos x)
(exp (* 10 (pow x 2)))
(* (cos x) (pow (exp (pow x 2)) 10))
(pow (exp (pow x 2)) 10)
(exp (pow x 2))
(exp (sqrt (pow x 3)))
(exp (* 10 x))
(* (cos x) (exp (* 10 (* (pow x 2) (pow (sqrt -1) 2)))))
(exp (* 10 (* (pow x 2) (pow (sqrt -1) 2))))
(exp (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(* -10 (* (sqrt x) (pow (sqrt -1) 2)))
Calls

3 calls:

TimeVariablePointExpression
5.0ms
x
@0
((* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (pow (exp 10) x) (/ (* x 1) 2)) (* x 1) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (* (cos x) (exp (* 10 (* x x)))) (* (cos x) (pow (exp 10) (* x x))) (cos x) (pow (exp 10) (* x x)) (exp 10) (* (cos x) (pow (pow (exp x) x) 10)) (pow (pow (exp x) x) 10) (pow (exp x) x) (* (cos x) (pow (exp (pow x 3/2)) (* (sqrt x) 10))) (pow (exp (pow x 3/2)) (* (sqrt x) 10)) (exp (pow x 3/2)) (pow (exp 10) x) (* (sqrt x) 10))
3.0ms
x
@-inf
((* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (pow (exp 10) x) (/ (* x 1) 2)) (* x 1) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (* (cos x) (exp (* 10 (* x x)))) (* (cos x) (pow (exp 10) (* x x))) (cos x) (pow (exp 10) (* x x)) (exp 10) (* (cos x) (pow (pow (exp x) x) 10)) (pow (pow (exp x) x) 10) (pow (exp x) x) (* (cos x) (pow (exp (pow x 3/2)) (* (sqrt x) 10))) (pow (exp (pow x 3/2)) (* (sqrt x) 10)) (exp (pow x 3/2)) (pow (exp 10) x) (* (sqrt x) 10))
3.0ms
x
@inf
((* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (pow (exp 10) x) (/ (* x 1) 2)) (* x 1) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (* (cos x) (exp (* 10 (* x x)))) (* (cos x) (pow (exp 10) (* x x))) (cos x) (pow (exp 10) (* x x)) (exp 10) (* (cos x) (pow (pow (exp x) x) 10)) (pow (pow (exp x) x) 10) (pow (exp x) x) (* (cos x) (pow (exp (pow x 3/2)) (* (sqrt x) 10))) (pow (exp (pow x 3/2)) (* (sqrt x) 10)) (exp (pow x 3/2)) (pow (exp 10) x) (* (sqrt x) 10))

simplify239.0ms (1.7%)

Memory
-21.3MiB live, 200.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0175504
1501475
21479416
35214414
46390414
09002363
Stop Event
iter limit
node limit
Counts
43 → 42
Calls
Call 1
Inputs
1
(+ 1 (* 10 (pow x 2)))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(+ 1 (* 5 (pow x 2)))
(+ 1 (* (pow x 2) (+ 5 (* 25/2 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 5 (* (pow x 2) (+ 25/2 (* 125/6 (pow x 2)))))))
x
(+ 1 (* 19/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(+ 1 (pow x 2))
(+ 1 (* (pow x 2) (+ 1 (* 1/2 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 1 (* (pow x 2) (+ 1/2 (* 1/6 (pow x 2)))))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (* 50 (pow x 2))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (+ (* 5/3 (* (sqrt x) (+ (sqrt (pow x 3)) (+ (* -3 (sqrt (pow x 3))) (* 2 (sqrt (pow x 3))))))) (+ (* 50 (* (sqrt (pow x 3)) (+ x (* -1 x)))) (* 500/3 (pow x 3)))))))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (* 50 (pow x 2)))))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (+ (* 50 (pow x 2)) (* x (+ (* 5/3 (* (sqrt x) (+ (sqrt (pow x 3)) (+ (* -3 (sqrt (pow x 3))) (* 2 (sqrt (pow x 3))))))) (+ (* 50 (* (sqrt (pow x 3)) (+ x (* -1 x)))) (* 500/3 (pow x 3)))))))))))
(+ 1 (sqrt (pow x 3)))
(+ 1 (* x (+ (sqrt x) (* 1/2 (pow x 2)))))
(+ 1 (* x (+ (sqrt x) (* x (+ (* 1/6 (sqrt (pow x 5))) (* 1/2 x))))))
(+ 1 (* 10 x))
(+ 1 (* x (+ 10 (* 50 x))))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(* 10 (sqrt x))
(pow (exp (* 5 (pow x 2))) 2)
(exp (* 5 (pow x 2)))
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(* (cos x) (exp (* 10 (pow x 2))))
(cos x)
(exp (* 10 (pow x 2)))
(* (cos x) (pow (exp (pow x 2)) 10))
(pow (exp (pow x 2)) 10)
(exp (pow x 2))
(exp (sqrt (pow x 3)))
(exp (* 10 x))
(* (cos x) (exp (* 10 (* (pow x 2) (pow (sqrt -1) 2)))))
(exp (* 10 (* (pow x 2) (pow (sqrt -1) 2))))
(exp (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(* -10 (* (sqrt x) (pow (sqrt -1) 2)))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* 10 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 50 binary64) (*.f64 x x) #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(fma.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal 500/3 binary64) (*.f64 x x) #s(literal 50 binary64)) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64)))
(+ 1 (* 5 (pow x 2)))
(fma.f64 #s(literal 5 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 5 (* 25/2 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 25/2 binary64) (*.f64 x x) #s(literal 5 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 5 (* (pow x 2) (+ 25/2 (* 125/6 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 125/6 binary64) (*.f64 x x) #s(literal 25/2 binary64)) (*.f64 x x) #s(literal 5 binary64)) (*.f64 x x) #s(literal 1 binary64))
x
(+ 1 (* 19/2 (pow x 2)))
(fma.f64 #s(literal 19/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1081/24 binary64) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 102299/720 binary64) (*.f64 x x) #s(literal 1081/24 binary64)) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* -1/2 (pow x 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (pow x 2))
(fma.f64 x x #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 1 (* 1/2 (pow x 2)))))
(fma.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/2 binary64) x) x #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 1 (* (pow x 2) (+ 1/2 (* 1/6 (pow x 2)))))))
(fma.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(literal 1/6 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x) x #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (* 50 (pow x 2))) 1/2)))))
(fma.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 50 binary64) x) x #s(literal 19/2 binary64)) #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (+ (* 5/3 (* (sqrt x) (+ (sqrt (pow x 3)) (+ (* -3 (sqrt (pow x 3))) (* 2 (sqrt (pow x 3))))))) (+ (* 50 (* (sqrt (pow x 3)) (+ x (* -1 x)))) (* 500/3 (pow x 3)))))))) 1/2)))))
(fma.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 500/3 binary64) (fma.f64 (*.f64 x x) #s(literal 45 binary64) #s(literal 19/2 binary64))) x) x #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (* 50 (pow x 2)))))))
(fma.f64 (fma.f64 #s(literal 50 binary64) (*.f64 x x) #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 5 (* (sqrt x) (+ x (* -1 x)))) (+ (* 50 (pow x 2)) (* x (+ (* 5/3 (* (sqrt x) (+ (sqrt (pow x 3)) (+ (* -3 (sqrt (pow x 3))) (* 2 (sqrt (pow x 3))))))) (+ (* 50 (* (sqrt (pow x 3)) (+ x (* -1 x)))) (* 500/3 (pow x 3)))))))))))
(fma.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal 500/3 binary64) (*.f64 x x) #s(literal 50 binary64)) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64)))
(+ 1 (sqrt (pow x 3)))
(+.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 1 binary64))
(+ 1 (* x (+ (sqrt x) (* 1/2 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 x x) (sqrt.f64 x)) x #s(literal 1 binary64))
(+ 1 (* x (+ (sqrt x) (* x (+ (* 1/6 (sqrt (pow x 5))) (* 1/2 x))))))
(fma.f64 (fma.f64 (fma.f64 (sqrt.f64 (pow.f64 x #s(literal 5 binary64))) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) x)) x (sqrt.f64 x)) x #s(literal 1 binary64))
(+ 1 (* 10 x))
(fma.f64 #s(literal 10 binary64) x #s(literal 1 binary64))
(+ 1 (* x (+ 10 (* 50 x))))
(fma.f64 (fma.f64 #s(literal 50 binary64) x #s(literal 10 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 500/3 binary64) x #s(literal 50 binary64)) x #s(literal 10 binary64)) x #s(literal 1 binary64))
(* 10 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 10 binary64))
(pow (exp (* 5 (pow x 2))) 2)
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(exp (* 5 (pow x 2)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) x)
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(*.f64 (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)) (cos.f64 x))
(* (cos x) (exp (* 10 (pow x 2))))
(*.f64 (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)) (cos.f64 x))
(cos x)
(cos.f64 x)
(exp (* 10 (pow x 2)))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(* (cos x) (pow (exp (pow x 2)) 10))
(*.f64 (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)) (cos.f64 x))
(pow (exp (pow x 2)) 10)
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(exp (pow x 2))
(pow.f64 (exp.f64 x) x)
(exp (sqrt (pow x 3)))
(exp.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))))
(exp (* 10 x))
(pow.f64 (exp.f64 x) #s(literal 10 binary64))
(* (cos x) (exp (* 10 (* (pow x 2) (pow (sqrt -1) 2)))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal -10 binary64)) x) x) (cos.f64 x))
(exp (* 10 (* (pow x 2) (pow (sqrt -1) 2))))
(pow.f64 (pow.f64 (exp.f64 #s(literal -10 binary64)) x) x)
(exp (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(exp.f64 (neg.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64)))))
(* -10 (* (sqrt x) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 x) #s(literal 10 binary64))

rewrite73.0ms (0.5%)

Memory
-7.3MiB live, 32.1MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
032140
053101
114385
257836
0735936
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
17 → 34
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(*.f64 x #s(literal 1 binary64))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(cos.f64 x)
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x))
(exp.f64 #s(literal 10 binary64))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
(pow.f64 (exp.f64 x) x)
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64)))
(exp.f64 (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(*.f64 (sqrt.f64 x) #s(literal 10 binary64))
Outputs
#s(literal 1 binary64)
#s(literal 1 binary64)
x
#s(literal 0 binary64)
(*.f64 (*.f64 (cos.f64 x) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 (*.f64 (cos.f64 x) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 x)))
(cos.f64 x)
#s(literal 1 binary64)
(*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1 binary64))
(exp.f64 #s(literal 10 binary64))
(*.f64 (*.f64 (cos.f64 x) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
#s(literal 1 binary64)
#s(literal 1 binary64)
(*.f64 (*.f64 (cos.f64 x) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
#s(literal 1 binary64)
#s(literal 1 binary64)
#s(literal 1 binary64)
x
#s(literal 0 binary64)

eval42.0ms (0.3%)

Memory
-18.3MiB live, 17.9MiB allocated
Compiler

Compiled 2 085 to 305 computations (85.4% saved)

prune38.0ms (0.3%)

Memory
2.1MiB live, 38.6MiB allocated
Pruning

33 alts after pruning (28 fresh and 5 done)

PrunedKeptTotal
New80888
Fresh12021
Picked145
Done011
Total8233115
Accuracy
99.5%
Counts
115 → 33
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
93.3%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64))))
96.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
96.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
96.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) x)))
95.5%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
93.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64)))))
98.0%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
95.4%
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) (*.f64 x x)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
94.3%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
94.0%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
95.4%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
94.3%
(*.f64 (cos.f64 x) (pow.f64 #s(approx (exp (pow x 3/2)) (exp.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
95.4%
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
99.0%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
98.0%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
97.8%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
97.8%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) #s(approx (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) x))))
94.0%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
94.5%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
94.6%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
9.8%
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
9.6%
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
96.8%
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
27.6%
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
21.3%
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
18.2%
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
1.5%
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
Compiler

Compiled 1 004 to 710 computations (29.3% saved)

simplify442.0ms (3.2%)

Memory
20.1MiB live, 224.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
(pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x))
cost-diff0
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
cost-diff0
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
cost-diff0
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
cost-diff0
(exp.f64 x)
cost-diff0
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
cost-diff0
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
cost-diff1
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))
cost-diff2
(*.f64 x #s(literal 1 binary64))
cost-diff5
(*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)))
cost-diff11
(*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
040279
066217
189175
2116175
3170175
4361175
5909175
62422175
73553175
86492175
08137175
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(cos.f64 x)
x
(*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x)
(*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
#s(literal 1/2 binary64)
(/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))
(*.f64 x #s(literal 1 binary64))
#s(literal 1 binary64)
#s(literal 2 binary64)
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(cos.f64 x)
x
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(cos.f64 x)
x
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(exp.f64 x)
(*.f64 #s(literal 10 binary64) x)
#s(literal 10 binary64)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
(cos.f64 x)
x
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
(exp.f64 x)
#s(literal 20 binary64)
(*.f64 #s(literal 1/2 binary64) x)
#s(literal 1/2 binary64)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
(cos.f64 x)
x
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x))
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(sqrt.f64 x)
(pow.f64 x #s(literal 3/2 binary64))
#s(literal 3/2 binary64)
Outputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x) (cos.f64 x))
(cos.f64 x)
x
(*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x)
(pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x)
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)))
(exp.f64 #s(literal 10 binary64))
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (exp.f64 #s(literal 10 binary64)))
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
#s(literal 1/2 binary64)
(/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))
(*.f64 #s(literal 1/2 binary64) x)
(*.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
#s(literal 2 binary64)
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)) (cos.f64 x))
(cos.f64 x)
x
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(*.f64 (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)) (cos.f64 x))
(cos.f64 x)
x
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(exp.f64 x)
(*.f64 #s(literal 10 binary64) x)
#s(literal 10 binary64)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)) (cos.f64 x))
(cos.f64 x)
x
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
(exp.f64 x)
#s(literal 20 binary64)
(*.f64 #s(literal 1/2 binary64) x)
#s(literal 1/2 binary64)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))) (cos.f64 x))
(cos.f64 x)
x
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x))
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(sqrt.f64 x)
(pow.f64 x #s(literal 3/2 binary64))
#s(literal 3/2 binary64)

localize226.0ms (1.6%)

Memory
-11.8MiB live, 102.2MiB allocated
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(pow.f64 x #s(literal 3/2 binary64))
accuracy0.35546875
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
accuracy1.8471411548593095
(pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x))
accuracy3.0355304386306514
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
accuracy0.0
(cos.f64 x)
accuracy0.22265625
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x))
accuracy0.35546875
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
accuracy2.157856062349966
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
accuracy0.0
(exp.f64 x)
accuracy0.0
(cos.f64 x)
accuracy0.35546875
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
accuracy3.375682274886965
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
accuracy0.0
(cos.f64 x)
accuracy0.35546875
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
accuracy57.84676629502874
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
accuracy0.4296875
(*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
accuracy0.9902725586106522
(pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x)
accuracy0.9902725586106522
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
accuracy1.0
(*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)))
Samples
170.0ms256×0valid
Compiler

Compiled 277 to 36 computations (87% saved)

Precisions
Click to see histograms. Total time spent on operations: 105.0ms
ival-mult: 44.0ms (41.7% of total)
ival-pow: 41.0ms (38.9% of total)
ival-cos: 8.0ms (7.6% of total)
ival-exp: 6.0ms (5.7% of total)
ival-sqrt: 3.0ms (2.8% of total)
ival-div: 1.0ms (0.9% of total)
exact: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series66.0ms (0.5%)

Memory
13.4MiB live, 52.8MiB allocated
Counts
19 → 40
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)))
(*.f64 x #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(cos.f64 x)
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(exp.f64 x)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x)
(pow.f64 x #s(literal 3/2 binary64))
Outputs
1
(+ 1 (* 10 (pow x 2)))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
x
(+ 1 (* 19/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
(+ 1 (* 20 x))
(+ 1 (* x (+ 20 (* 200 x))))
(+ 1 (* x (+ 20 (* x (+ 200 (* 4000/3 x))))))
(+ 1 (* x (+ (* 10 x) (* x (- (* 50 (pow x 2)) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (* 500/3 (pow x 3))))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* 50 (pow x 3)))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 50 (pow x 2)) (* 500/3 (pow x 4)))))))
(exp (* 10 (sqrt x)))
(+ 1 (* 10 x))
(+ 1 (* x (+ 10 (* 50 x))))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(sqrt (pow x 3))
(pow (exp (* 5 (pow x 2))) 2)
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(cos x)
(* (cos x) (exp (* 10 (pow x 2))))
(exp (* 10 (pow x 2)))
(exp x)
(* (cos x) (exp (* 1/2 (* x (log (pow (exp x) 20))))))
(exp (* 1/2 (* x (log (pow (exp x) 20)))))
(pow (exp x) 20)
(exp (* 10 x))
(* (cos x) (exp (* 10 (* (pow x 2) (pow (sqrt -1) 2)))))
(exp (* 10 (* (pow x 2) (pow (sqrt -1) 2))))
(exp (* 10 (* (sqrt x) (pow (sqrt -1) 2))))
(* (sqrt (pow x 3)) (pow (sqrt -1) 2))
Calls

3 calls:

TimeVariablePointExpression
58.0ms
x
@0
((* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) (* x 1) (pow (exp 10) 1/2) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (* (cos x) (pow (exp x) (* 10 x))) (pow (exp x) (* 10 x)) (exp x) (* (cos x) (pow (pow (exp x) 20) (* 1/2 x))) (pow (pow (exp x) 20) (* 1/2 x)) (pow (exp x) 20) (* (cos x) (pow (pow (exp 10) (sqrt x)) (pow x 3/2))) (pow (pow (exp 10) (sqrt x)) (pow x 3/2)) (pow (exp 10) (sqrt x)) (pow (exp 10) x) (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (pow x 3/2))
4.0ms
x
@-inf
((* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) (* x 1) (pow (exp 10) 1/2) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (* (cos x) (pow (exp x) (* 10 x))) (pow (exp x) (* 10 x)) (exp x) (* (cos x) (pow (pow (exp x) 20) (* 1/2 x))) (pow (pow (exp x) 20) (* 1/2 x)) (pow (exp x) 20) (* (cos x) (pow (pow (exp 10) (sqrt x)) (pow x 3/2))) (pow (pow (exp 10) (sqrt x)) (pow x 3/2)) (pow (exp 10) (sqrt x)) (pow (exp 10) x) (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (pow x 3/2))
3.0ms
x
@inf
((* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) (* x 1) (pow (exp 10) 1/2) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (* (cos x) (pow (exp x) (* 10 x))) (pow (exp x) (* 10 x)) (exp x) (* (cos x) (pow (pow (exp x) 20) (* 1/2 x))) (pow (pow (exp x) 20) (* 1/2 x)) (pow (exp x) 20) (* (cos x) (pow (pow (exp 10) (sqrt x)) (pow x 3/2))) (pow (pow (exp 10) (sqrt x)) (pow x 3/2)) (pow (exp 10) (sqrt x)) (pow (exp 10) x) (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (pow x 3/2))

simplify383.0ms (2.8%)

Memory
5.6MiB live, 171.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0150402
1392380
2938355
32242355
43853355
54304355
65220355
77029355
08023310
Stop Event
iter limit
node limit
Counts
40 → 39
Calls
Call 1
Inputs
1
(+ 1 (* 10 (pow x 2)))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
x
(+ 1 (* 19/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
(+ 1 (* 20 x))
(+ 1 (* x (+ 20 (* 200 x))))
(+ 1 (* x (+ 20 (* x (+ 200 (* 4000/3 x))))))
(+ 1 (* x (+ (* 10 x) (* x (- (* 50 (pow x 2)) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (* 500/3 (pow x 3))))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* 50 (pow x 3)))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 50 (pow x 2)) (* 500/3 (pow x 4)))))))
(exp (* 10 (sqrt x)))
(+ 1 (* 10 x))
(+ 1 (* x (+ 10 (* 50 x))))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(sqrt (pow x 3))
(pow (exp (* 5 (pow x 2))) 2)
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(cos x)
(* (cos x) (exp (* 10 (pow x 2))))
(exp (* 10 (pow x 2)))
(exp x)
(* (cos x) (exp (* 1/2 (* x (log (pow (exp x) 20))))))
(exp (* 1/2 (* x (log (pow (exp x) 20)))))
(pow (exp x) 20)
(exp (* 10 x))
(* (cos x) (exp (* 10 (* (pow x 2) (pow (sqrt -1) 2)))))
(exp (* 10 (* (pow x 2) (pow (sqrt -1) 2))))
(exp (* 10 (* (sqrt x) (pow (sqrt -1) 2))))
(* (sqrt (pow x 3)) (pow (sqrt -1) 2))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* 10 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 50 binary64) (*.f64 x x) #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(fma.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 500/3 binary64) (fma.f64 (fma.f64 #s(literal 50 binary64) (*.f64 x x) #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64)))
x
(+ 1 (* 19/2 (pow x 2)))
(fma.f64 #s(literal 19/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1081/24 binary64) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 102299/720 binary64) (*.f64 x x) #s(literal 1081/24 binary64)) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* -1/2 (pow x 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 x)
(+.f64 #s(literal 1 binary64) x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* 20 x))
(fma.f64 #s(literal 20 binary64) x #s(literal 1 binary64))
(+ 1 (* x (+ 20 (* 200 x))))
(fma.f64 (fma.f64 #s(literal 200 binary64) x #s(literal 20 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 20 (* x (+ 200 (* 4000/3 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 4000/3 binary64) x #s(literal 200 binary64)) x #s(literal 20 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (- (* 50 (pow x 2)) 1/2)))))
(fma.f64 (fma.f64 (*.f64 #s(literal 50 binary64) x) x #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (* 500/3 (pow x 3))))) 1/2)))))
(fma.f64 (fma.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 500/3 binary64) (*.f64 x #s(literal 45 binary64))) x #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* 50 (pow x 3)))))
(fma.f64 (fma.f64 #s(literal 50 binary64) (*.f64 x x) #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 50 (pow x 2)) (* 500/3 (pow x 4)))))))
(fma.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 500/3 binary64) (fma.f64 (fma.f64 #s(literal 50 binary64) (*.f64 x x) #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(exp (* 10 (sqrt x)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x))
(+ 1 (* 10 x))
(fma.f64 #s(literal 10 binary64) x #s(literal 1 binary64))
(+ 1 (* x (+ 10 (* 50 x))))
(fma.f64 (fma.f64 #s(literal 50 binary64) x #s(literal 10 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 500/3 binary64) x #s(literal 50 binary64)) x #s(literal 10 binary64)) x #s(literal 1 binary64))
(sqrt (pow x 3))
(sqrt.f64 (pow.f64 x #s(literal 3 binary64)))
(pow (exp (* 5 (pow x 2))) 2)
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)) (cos.f64 x))
(cos x)
(cos.f64 x)
(* (cos x) (exp (* 10 (pow x 2))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)) (cos.f64 x))
(exp (* 10 (pow x 2)))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64))
(exp x)
(exp.f64 x)
(* (cos x) (exp (* 1/2 (* x (log (pow (exp x) 20))))))
(*.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) x)) (cos.f64 x))
(exp (* 1/2 (* x (log (pow (exp x) 20)))))
(sqrt.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) x))
(pow (exp x) 20)
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
(exp (* 10 x))
(pow.f64 (exp.f64 x) #s(literal 10 binary64))
(* (cos x) (exp (* 10 (* (pow x 2) (pow (sqrt -1) 2)))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal -10 binary64)) x) x) (cos.f64 x))
(exp (* 10 (* (pow x 2) (pow (sqrt -1) 2))))
(pow.f64 (pow.f64 (exp.f64 #s(literal -10 binary64)) x) x)
(exp (* 10 (* (sqrt x) (pow (sqrt -1) 2))))
(pow.f64 (exp.f64 #s(literal -10 binary64)) (sqrt.f64 x))
(* (sqrt (pow x 3)) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))))

rewrite54.0ms (0.4%)

Memory
-28.9MiB live, 41.7MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
039179
064118
119490
283238
0949638
Stop Event
iter limit
node limit
iter limit
Counts
19 → 62
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)))
(*.f64 x #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(cos.f64 x)
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x))
(exp.f64 x)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x)
(pow.f64 x #s(literal 3/2 binary64))
Outputs
#s(literal 1 binary64)
(*.f64 (*.f64 (exp.f64 #s(literal 15/2 binary64)) (exp.f64 #s(literal 5/4 binary64))) (exp.f64 #s(literal 5/4 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 15/2 binary64)) #s(literal 1 binary64)) (pow.f64 (exp.f64 #s(literal 5/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 5/2 binary64)) #s(literal 1 binary64)) (pow.f64 (exp.f64 #s(literal 15/2 binary64)) #s(literal 1 binary64)))
(*.f64 (exp.f64 #s(literal 15/2 binary64)) (exp.f64 #s(literal 5/2 binary64)))
(*.f64 (exp.f64 #s(literal 5/4 binary64)) (*.f64 (exp.f64 #s(literal 5/4 binary64)) (exp.f64 #s(literal 15/2 binary64))))
(*.f64 (exp.f64 #s(literal 5/2 binary64)) (exp.f64 #s(literal 15/2 binary64)))
(*.f64 (exp.f64 #s(literal 5 binary64)) (exp.f64 #s(literal 5 binary64)))
(pow.f64 (*.f64 (exp.f64 #s(literal 20 binary64)) (exp.f64 #s(literal 20 binary64))) #s(literal 1/4 binary64))
(pow.f64 (exp.f64 #s(literal 5/2 binary64)) #s(literal 4 binary64))
(pow.f64 (exp.f64 #s(literal 20 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1 binary64))
(sqrt.f64 (exp.f64 #s(literal 20 binary64)))
(fabs.f64 (exp.f64 #s(literal 10 binary64)))
(exp.f64 #s(literal 10 binary64))
x
#s(literal 0 binary64)
(*.f64 (*.f64 (exp.f64 #s(literal 5/2 binary64)) (exp.f64 #s(literal 5/4 binary64))) (exp.f64 #s(literal 5/4 binary64)))
(*.f64 (sqrt.f64 (exp.f64 #s(literal 15/2 binary64))) (sqrt.f64 (exp.f64 #s(literal 5/2 binary64))))
(*.f64 (sqrt.f64 (exp.f64 #s(literal 5/2 binary64))) (sqrt.f64 (exp.f64 #s(literal 15/2 binary64))))
(*.f64 (sqrt.f64 (exp.f64 #s(literal 5 binary64))) (sqrt.f64 (exp.f64 #s(literal 5 binary64))))
(*.f64 (pow.f64 (exp.f64 #s(literal 15/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 5/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 5/2 binary64)) #s(literal 1 binary64)) (pow.f64 (exp.f64 #s(literal 5/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 5/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 15/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (exp.f64 #s(literal 5/4 binary64)) (*.f64 (exp.f64 #s(literal 5/4 binary64)) (exp.f64 #s(literal 5/2 binary64))))
(*.f64 (exp.f64 #s(literal 5/2 binary64)) (exp.f64 #s(literal 5/2 binary64)))
(pow.f64 (exp.f64 #s(literal 5/2 binary64)) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 20 binary64)) #s(literal 1/4 binary64))
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (exp.f64 #s(literal 10 binary64)))
(fabs.f64 (exp.f64 #s(literal 5 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 5/2 binary64))) #s(literal 2 binary64)))
(exp.f64 #s(literal 5 binary64))
(*.f64 #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)) (cos.f64 x))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 x)))
(cos.f64 x)
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 x)))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(literal 1 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 x)))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(literal 1 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 x)))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(literal 1 binary64)
#s(literal 1 binary64)
#s(literal 1 binary64)
x
#s(literal 0 binary64)

eval26.0ms (0.2%)

Memory
8.1MiB live, 45.1MiB allocated
Compiler

Compiled 3 512 to 557 computations (84.1% saved)

prune30.0ms (0.2%)

Memory
-5.3MiB live, 46.6MiB allocated
Pruning

34 alts after pruning (26 fresh and 8 done)

PrunedKeptTotal
New1264130
Fresh12223
Picked235
Done055
Total12934163
Accuracy
99.5%
Counts
163 → 34
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
93.3%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64))))
96.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
96.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
96.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) x)))
95.5%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
93.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64)))))
98.0%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
95.4%
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) (*.f64 x x)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
94.3%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
94.0%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
95.4%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
94.3%
(*.f64 (cos.f64 x) (pow.f64 #s(approx (exp (pow x 3/2)) (exp.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
95.4%
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
99.0%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
97.7%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
98.0%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
97.8%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
97.8%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) #s(approx (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) x))))
94.0%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
94.5%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
94.6%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
9.8%
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
96.8%
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
27.6%
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
21.3%
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
18.2%
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
9.7%
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
1.5%
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
Compiler

Compiled 1 062 to 746 computations (29.8% saved)

simplify511.0ms (3.7%)

Memory
2.9MiB live, 232.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x))
cost-diff0
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
cost-diff0
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x))
cost-diff0
(cos.f64 x)
cost-diff0
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
cost-diff1
(*.f64 (exp.f64 x) (exp.f64 x))
cost-diff0
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))
cost-diff0
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)))
cost-diff0
(cos.f64 x)
cost-diff2
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
cost-diff0
(*.f64 x x)
cost-diff0
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
cost-diff0
#s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
cost-diff0
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
cost-diff2
(*.f64 x #s(literal 1 binary64))
cost-diff2
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64))
cost-diff11
(*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
048308
080275
1113241
2165225
3226225
4400225
51142225
63113225
76467225
08076225
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(cos.f64 x)
x
(*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x)
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64))
(exp.f64 #s(literal 5 binary64))
#s(literal 5 binary64)
#s(literal 2 binary64)
(/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))
(*.f64 x #s(literal 1 binary64))
#s(literal 1 binary64)
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
#s(literal -1/2 binary64)
(*.f64 x x)
x
#s(literal 1 binary64)
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(cos.f64 x)
x
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)))
#s(literal 1 binary64)
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(*.f64 (neg.f64 x) x)
(neg.f64 x)
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
(cos.f64 x)
x
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x))
(*.f64 (exp.f64 x) (exp.f64 x))
(exp.f64 x)
(*.f64 #s(literal 5 binary64) x)
#s(literal 5 binary64)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
(cos.f64 x)
x
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x))
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
(exp.f64 x)
#s(literal 20 binary64)
(sqrt.f64 x)
(*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
Outputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x) (cos.f64 x))
(cos.f64 x)
x
(*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x)
(pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x)
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64))
(exp.f64 #s(literal 10 binary64))
(exp.f64 #s(literal 5 binary64))
#s(literal 5 binary64)
#s(literal 2 binary64)
(/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))
(*.f64 #s(literal 1/2 binary64) x)
(*.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (*.f64 #s(literal 1/2 binary64) x))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))
#s(literal -1/2 binary64)
(*.f64 x x)
x
#s(literal 1 binary64)
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(/.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)))
(cos.f64 x)
x
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)))
#s(literal 1 binary64)
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))
(exp.f64 #s(literal 10 binary64))
#s(literal 10 binary64)
(*.f64 (neg.f64 x) x)
(neg.f64 x)
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 2 binary64)) (*.f64 #s(literal 5 binary64) x)) (cos.f64 x))
(cos.f64 x)
x
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 2 binary64)) (*.f64 #s(literal 5 binary64) x))
(*.f64 (exp.f64 x) (exp.f64 x))
(pow.f64 (exp.f64 x) #s(literal 2 binary64))
(exp.f64 x)
(*.f64 #s(literal 5 binary64) x)
#s(literal 5 binary64)
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 x))) (cos.f64 x))
(cos.f64 x)
x
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 x)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x))
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
(exp.f64 x)
#s(literal 20 binary64)
(sqrt.f64 x)
(*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 x))
#s(literal 1/2 binary64)

localize331.0ms (2.4%)

Memory
4.8MiB live, 203.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.35546875
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
accuracy2.157856062349966
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
accuracy3.116767244858704
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
accuracy3.4884753770121586
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x))
accuracy0.0
(cos.f64 x)
accuracy0.35546875
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
accuracy0.44921875
(*.f64 (exp.f64 x) (exp.f64 x))
accuracy3.3783191294160093
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x))
accuracy0.0
(cos.f64 x)
accuracy0.26171875
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)))
accuracy0.35546875
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
accuracy2.9896998056919872
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))
accuracy0.35546875
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
accuracy0.43359375
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
accuracy52.41331329807837
#s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)))
accuracy57.84676629502874
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
accuracy0.4296875
(*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
accuracy0.9902725586106522
(pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x)
accuracy0.9902725586106522
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
accuracy1.0
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64))
Samples
107.0ms256×0valid
Compiler

Compiled 293 to 43 computations (85.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 87.0ms
ival-pow: 37.0ms (42.6% of total)
ival-mult: 22.0ms (25.3% of total)
ival-exp: 9.0ms (10.4% of total)
ival-cos: 8.0ms (9.2% of total)
ival-div: 3.0ms (3.5% of total)
ival-pow2: 3.0ms (3.5% of total)
ival-sqrt: 2.0ms (2.3% of total)
ival-add: 1.0ms (1.2% of total)
exact: 1.0ms (1.2% of total)
ival-neg: 1.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series16.0ms (0.1%)

Memory
29.5MiB live, 29.5MiB allocated
Counts
22 → 62
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64))
(*.f64 x #s(literal 1 binary64))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(*.f64 x x)
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(cos.f64 x)
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))
(*.f64 (exp.f64 x) (exp.f64 x))
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x)
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
Outputs
1
(+ 1 (* (pow x 2) (+ 5 (* 1/2 (log (pow (exp 5) 2))))))
(+ 1 (* (pow x 2) (+ 5 (+ (* 1/4 (* x (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2)))) (* 1/2 (log (pow (exp 5) 2)))))))
(+ 1 (* (pow x 2) (+ 5 (+ (* 1/2 (log (pow (exp 5) 2))) (* x (+ (* 1/4 (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2))) (* x (+ 25/2 (+ (* 1/12 (+ (* -3 (pow (log (pow (exp 5) 2)) 3)) (+ (* 2 (pow (log (pow (exp 5) 2)) 3)) (pow (log (pow (exp 5) 2)) 3)))) (+ (* 1/8 (pow (log (pow (exp 5) 2)) 2)) (* 5/2 (log (pow (exp 5) 2)))))))))))))
x
(+ 1 (* (pow x 2) (+ 9/2 (* 1/2 (log (pow (exp 5) 2))))))
(+ 1 (* (pow x 2) (+ 9/2 (+ (* 1/4 (* x (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2)))) (* 1/2 (log (pow (exp 5) 2)))))))
(+ 1 (* (pow x 2) (+ 9/2 (+ (* 1/2 (log (pow (exp 5) 2))) (* x (+ (* 1/4 (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2))) (* x (+ 301/24 (+ (* -1/2 (+ 5 (* 1/2 (log (pow (exp 5) 2))))) (+ (* 1/12 (+ (* -3 (pow (log (pow (exp 5) 2)) 3)) (+ (* 2 (pow (log (pow (exp 5) 2)) 3)) (pow (log (pow (exp 5) 2)) 3)))) (+ (* 1/8 (pow (log (pow (exp 5) 2)) 2)) (* 5/2 (log (pow (exp 5) 2))))))))))))))
(+ 1 (* 19/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(pow x 2)
(+ 1 (* 10 (pow x 2)))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(+ 1 (* -10 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 50 (pow x 2)) 10)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 50 (* -500/3 (pow x 2)))) 10)))
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 4/3 x))))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (* 50 (pow x 2))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (+ (* 1/12 (* (sqrt x) (+ (* -24000 (sqrt (pow x 3))) (+ (* 8000 (sqrt (pow x 3))) (* 16000 (sqrt (pow x 3))))))) (+ (* 5/2 (* (sqrt (pow x 3)) (+ (* -400 x) (* 400 x)))) (* 500/3 (pow x 3)))))))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (* 50 (pow x 2)))))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (+ (* 50 (pow x 2)) (* x (+ (* 1/12 (* (sqrt x) (+ (* -24000 (sqrt (pow x 3))) (+ (* 8000 (sqrt (pow x 3))) (* 16000 (sqrt (pow x 3))))))) (+ (* 5/2 (* (sqrt (pow x 3)) (+ (* -400 x) (* 400 x)))) (* 500/3 (pow x 3)))))))))))
(+ 1 (* 20 (sqrt (pow x 3))))
(+ 1 (* x (+ (* 20 (sqrt x)) (* 200 (pow x 2)))))
(+ 1 (* x (+ (* 20 (sqrt x)) (* x (+ (* 200 x) (* 4000/3 (sqrt (pow x 5))))))))
(+ 1 (* 10 x))
(+ 1 (* x (+ 10 (* 50 x))))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(+ 1 (* x (log (pow (exp 5) 2))))
(+ 1 (* x (+ (log (pow (exp 5) 2)) (* 1/2 (* x (pow (log (pow (exp 5) 2)) 2))))))
(+ 1 (* x (+ (log (pow (exp 5) 2)) (* x (+ (* 1/6 (* x (pow (log (pow (exp 5) 2)) 3))) (* 1/2 (pow (log (pow (exp 5) 2)) 2)))))))
(+ 1 (* 20 x))
(+ 1 (* x (+ 20 (* 200 x))))
(+ 1 (* x (+ 20 (* x (+ 200 (* 4000/3 x))))))
(* (exp (* 1/2 (* (pow x 2) (log (pow (exp 5) 2))))) (exp (* 5 (pow x 2))))
(* (cos x) (* (exp (* 1/2 (* (pow x 2) (log (pow (exp 5) 2))))) (exp (* 5 (pow x 2)))))
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(cos x)
(* -1/2 (pow x 2))
(* (pow x 2) (- (/ 1 (pow x 2)) 1/2))
(/ (cos x) (exp (* -10 (pow x 2))))
(/ 1 (exp (* -10 (pow x 2))))
(exp (* -10 (pow x 2)))
(pow (exp x) 2)
(* (cos x) (exp (* 5 (* x (log (pow (exp x) 2))))))
(exp (* 5 (* x (log (pow (exp x) 2)))))
(* (cos x) (exp (* 1/2 (* (sqrt x) (log (pow (pow (exp x) 20) (sqrt x)))))))
(exp (* 1/2 (* (sqrt x) (log (pow (pow (exp x) 20) (sqrt x))))))
(pow (pow (exp x) 20) (sqrt x))
(exp (* 10 x))
(pow (pow (exp 5) 2) x)
(pow (exp (* 5 (pow x 2))) 2)
(pow (exp x) 20)
(* (cos x) (exp (* -1/2 (* x (* (log (pow (exp x) 20)) (pow (sqrt -1) 2))))))
(exp (* -1/2 (* x (* (log (pow (exp x) 20)) (pow (sqrt -1) 2)))))
(exp (* (sqrt x) (* (log (pow (exp x) 20)) (pow (sqrt -1) 2))))
Calls

3 calls:

TimeVariablePointExpression
5.0ms
x
@0
((* (pow (pow (pow (exp 5) 2) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (exp 5) 2) (* x 1) (* (cos x) (* (pow (pow (pow (exp 5) 2) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (cos x) (+ (* -1/2 (* x x)) 1) (* x x) (* (cos x) (/ 1 (pow (exp 10) (* (neg x) x)))) (cos x) (/ 1 (pow (exp 10) (* (neg x) x))) (pow (exp 10) (* (neg x) x)) (* (exp x) (exp x)) (* (cos x) (pow (* (exp x) (exp x)) (* 5 x))) (pow (* (exp x) (exp x)) (* 5 x)) (* (cos x) (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2))) (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2)) (pow (pow (exp x) 20) (sqrt x)) (pow (exp 10) x) (pow (pow (exp 5) 2) x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (exp x) 20))
5.0ms
x
@inf
((* (pow (pow (pow (exp 5) 2) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (exp 5) 2) (* x 1) (* (cos x) (* (pow (pow (pow (exp 5) 2) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (cos x) (+ (* -1/2 (* x x)) 1) (* x x) (* (cos x) (/ 1 (pow (exp 10) (* (neg x) x)))) (cos x) (/ 1 (pow (exp 10) (* (neg x) x))) (pow (exp 10) (* (neg x) x)) (* (exp x) (exp x)) (* (cos x) (pow (* (exp x) (exp x)) (* 5 x))) (pow (* (exp x) (exp x)) (* 5 x)) (* (cos x) (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2))) (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2)) (pow (pow (exp x) 20) (sqrt x)) (pow (exp 10) x) (pow (pow (exp 5) 2) x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (exp x) 20))
4.0ms
x
@-inf
((* (pow (pow (pow (exp 5) 2) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (exp 5) 2) (* x 1) (* (cos x) (* (pow (pow (pow (exp 5) 2) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (* (cos x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2)))) (cos x) (+ (* -1/2 (* x x)) 1) (* x x) (* (cos x) (/ 1 (pow (exp 10) (* (neg x) x)))) (cos x) (/ 1 (pow (exp 10) (* (neg x) x))) (pow (exp 10) (* (neg x) x)) (* (exp x) (exp x)) (* (cos x) (pow (* (exp x) (exp x)) (* 5 x))) (pow (* (exp x) (exp x)) (* 5 x)) (* (cos x) (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2))) (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2)) (pow (pow (exp x) 20) (sqrt x)) (pow (exp 10) x) (pow (pow (exp 5) 2) x) (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow (exp x) 20))

simplify149.0ms (1.1%)

Memory
-18.0MiB live, 140.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02901129
1847877
22609589
09211516
Stop Event
iter limit
node limit
Counts
62 → 61
Calls
Call 1
Inputs
1
(+ 1 (* (pow x 2) (+ 5 (* 1/2 (log (pow (exp 5) 2))))))
(+ 1 (* (pow x 2) (+ 5 (+ (* 1/4 (* x (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2)))) (* 1/2 (log (pow (exp 5) 2)))))))
(+ 1 (* (pow x 2) (+ 5 (+ (* 1/2 (log (pow (exp 5) 2))) (* x (+ (* 1/4 (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2))) (* x (+ 25/2 (+ (* 1/12 (+ (* -3 (pow (log (pow (exp 5) 2)) 3)) (+ (* 2 (pow (log (pow (exp 5) 2)) 3)) (pow (log (pow (exp 5) 2)) 3)))) (+ (* 1/8 (pow (log (pow (exp 5) 2)) 2)) (* 5/2 (log (pow (exp 5) 2)))))))))))))
x
(+ 1 (* (pow x 2) (+ 9/2 (* 1/2 (log (pow (exp 5) 2))))))
(+ 1 (* (pow x 2) (+ 9/2 (+ (* 1/4 (* x (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2)))) (* 1/2 (log (pow (exp 5) 2)))))))
(+ 1 (* (pow x 2) (+ 9/2 (+ (* 1/2 (log (pow (exp 5) 2))) (* x (+ (* 1/4 (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2))) (* x (+ 301/24 (+ (* -1/2 (+ 5 (* 1/2 (log (pow (exp 5) 2))))) (+ (* 1/12 (+ (* -3 (pow (log (pow (exp 5) 2)) 3)) (+ (* 2 (pow (log (pow (exp 5) 2)) 3)) (pow (log (pow (exp 5) 2)) 3)))) (+ (* 1/8 (pow (log (pow (exp 5) 2)) 2)) (* 5/2 (log (pow (exp 5) 2))))))))))))))
(+ 1 (* 19/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(pow x 2)
(+ 1 (* 10 (pow x 2)))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(+ 1 (* -10 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 50 (pow x 2)) 10)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 50 (* -500/3 (pow x 2)))) 10)))
(+ 1 (* 2 x))
(+ 1 (* x (+ 2 (* 2 x))))
(+ 1 (* x (+ 2 (* x (+ 2 (* 4/3 x))))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (* 50 (pow x 2))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (+ (* 1/12 (* (sqrt x) (+ (* -24000 (sqrt (pow x 3))) (+ (* 8000 (sqrt (pow x 3))) (* 16000 (sqrt (pow x 3))))))) (+ (* 5/2 (* (sqrt (pow x 3)) (+ (* -400 x) (* 400 x)))) (* 500/3 (pow x 3)))))))) 1/2)))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (* 50 (pow x 2)))))))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (+ (* 50 (pow x 2)) (* x (+ (* 1/12 (* (sqrt x) (+ (* -24000 (sqrt (pow x 3))) (+ (* 8000 (sqrt (pow x 3))) (* 16000 (sqrt (pow x 3))))))) (+ (* 5/2 (* (sqrt (pow x 3)) (+ (* -400 x) (* 400 x)))) (* 500/3 (pow x 3)))))))))))
(+ 1 (* 20 (sqrt (pow x 3))))
(+ 1 (* x (+ (* 20 (sqrt x)) (* 200 (pow x 2)))))
(+ 1 (* x (+ (* 20 (sqrt x)) (* x (+ (* 200 x) (* 4000/3 (sqrt (pow x 5))))))))
(+ 1 (* 10 x))
(+ 1 (* x (+ 10 (* 50 x))))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(+ 1 (* x (log (pow (exp 5) 2))))
(+ 1 (* x (+ (log (pow (exp 5) 2)) (* 1/2 (* x (pow (log (pow (exp 5) 2)) 2))))))
(+ 1 (* x (+ (log (pow (exp 5) 2)) (* x (+ (* 1/6 (* x (pow (log (pow (exp 5) 2)) 3))) (* 1/2 (pow (log (pow (exp 5) 2)) 2)))))))
(+ 1 (* 20 x))
(+ 1 (* x (+ 20 (* 200 x))))
(+ 1 (* x (+ 20 (* x (+ 200 (* 4000/3 x))))))
(* (exp (* 1/2 (* (pow x 2) (log (pow (exp 5) 2))))) (exp (* 5 (pow x 2))))
(* (cos x) (* (exp (* 1/2 (* (pow x 2) (log (pow (exp 5) 2))))) (exp (* 5 (pow x 2)))))
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(cos x)
(* -1/2 (pow x 2))
(* (pow x 2) (- (/ 1 (pow x 2)) 1/2))
(/ (cos x) (exp (* -10 (pow x 2))))
(/ 1 (exp (* -10 (pow x 2))))
(exp (* -10 (pow x 2)))
(pow (exp x) 2)
(* (cos x) (exp (* 5 (* x (log (pow (exp x) 2))))))
(exp (* 5 (* x (log (pow (exp x) 2)))))
(* (cos x) (exp (* 1/2 (* (sqrt x) (log (pow (pow (exp x) 20) (sqrt x)))))))
(exp (* 1/2 (* (sqrt x) (log (pow (pow (exp x) 20) (sqrt x))))))
(pow (pow (exp x) 20) (sqrt x))
(exp (* 10 x))
(pow (pow (exp 5) 2) x)
(pow (exp (* 5 (pow x 2))) 2)
(pow (exp x) 20)
(* (cos x) (exp (* -1/2 (* x (* (log (pow (exp x) 20)) (pow (sqrt -1) 2))))))
(exp (* -1/2 (* x (* (log (pow (exp x) 20)) (pow (sqrt -1) 2)))))
(exp (* (sqrt x) (* (log (pow (exp x) 20)) (pow (sqrt -1) 2))))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* (pow x 2) (+ 5 (* 1/2 (log (pow (exp 5) 2))))))
(fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 5 (+ (* 1/4 (* x (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2)))) (* 1/2 (log (pow (exp 5) 2)))))))
(fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 5 (+ (* 1/2 (log (pow (exp 5) 2))) (* x (+ (* 1/4 (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2))) (* x (+ 25/2 (+ (* 1/12 (+ (* -3 (pow (log (pow (exp 5) 2)) 3)) (+ (* 2 (pow (log (pow (exp 5) 2)) 3)) (pow (log (pow (exp 5) 2)) 3)))) (+ (* 1/8 (pow (log (pow (exp 5) 2)) 2)) (* 5/2 (log (pow (exp 5) 2)))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 50 binary64) x) x #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
x
(+ 1 (* (pow x 2) (+ 9/2 (* 1/2 (log (pow (exp 5) 2))))))
(fma.f64 #s(literal 19/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 9/2 (+ (* 1/4 (* x (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2)))) (* 1/2 (log (pow (exp 5) 2)))))))
(fma.f64 #s(literal 19/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 9/2 (+ (* 1/2 (log (pow (exp 5) 2))) (* x (+ (* 1/4 (+ (* -1 (pow (log (pow (exp 5) 2)) 2)) (pow (log (pow (exp 5) 2)) 2))) (* x (+ 301/24 (+ (* -1/2 (+ 5 (* 1/2 (log (pow (exp 5) 2))))) (+ (* 1/12 (+ (* -3 (pow (log (pow (exp 5) 2)) 3)) (+ (* 2 (pow (log (pow (exp 5) 2)) 3)) (pow (log (pow (exp 5) 2)) 3)))) (+ (* 1/8 (pow (log (pow (exp 5) 2)) 2)) (* 5/2 (log (pow (exp 5) 2))))))))))))))
(fma.f64 (fma.f64 #s(literal 1081/24 binary64) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* 19/2 (pow x 2)))
(fma.f64 #s(literal 19/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 19/2 (* 1081/24 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1081/24 binary64) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 19/2 (* (pow x 2) (+ 1081/24 (* 102299/720 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 102299/720 binary64) (*.f64 x x) #s(literal 1081/24 binary64)) (*.f64 x x) #s(literal 19/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* -1/2 (pow x 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(pow x 2)
(*.f64 x x)
(+ 1 (* 10 (pow x 2)))
(fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 10 (* 50 (pow x 2)))))
(fma.f64 (fma.f64 (*.f64 #s(literal 50 binary64) x) x #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (+ 10 (* (pow x 2) (+ 50 (* 500/3 (pow x 2)))))))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 500/3 binary64) (*.f64 x x) #s(literal 50 binary64)) (*.f64 x x) #s(literal 10 binary64)) x) x #s(literal 1 binary64))
(+ 1 (* -10 (pow x 2)))
(fma.f64 #s(literal -10 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* 50 (pow x 2)) 10)))
(fma.f64 (fma.f64 #s(literal 50 binary64) (*.f64 x x) #s(literal -10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 50 (* -500/3 (pow x 2)))) 10)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -500/3 binary64) (*.f64 x x) #s(literal 50 binary64)) (*.f64 x x) #s(literal -10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* 2 x))
(fma.f64 #s(literal 2 binary64) x #s(literal 1 binary64))
(+ 1 (* x (+ 2 (* 2 x))))
(fma.f64 (fma.f64 #s(literal 2 binary64) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 2 (* x (+ 2 (* 4/3 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 4/3 binary64) x #s(literal 2 binary64)) x #s(literal 2 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (* 50 (pow x 2))) 1/2)))))
(fma.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 50 binary64) x) x #s(literal 19/2 binary64)) #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (- (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (+ (* 50 (pow x 2)) (* x (+ (* -5 x) (+ (* 1/12 (* (sqrt x) (+ (* -24000 (sqrt (pow x 3))) (+ (* 8000 (sqrt (pow x 3))) (* 16000 (sqrt (pow x 3))))))) (+ (* 5/2 (* (sqrt (pow x 3)) (+ (* -400 x) (* 400 x)))) (* 500/3 (pow x 3)))))))) 1/2)))))
(fma.f64 (*.f64 x (-.f64 (fma.f64 (*.f64 x x) #s(literal 45 binary64) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 500/3 binary64) #s(literal 0 binary64))) #s(literal -19/2 binary64))) x #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (* 50 (pow x 2)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 50 binary64) x) x #s(literal 10 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* x (+ (* 10 x) (* x (+ (* 1/4 (* (sqrt x) (+ (* -400 x) (* 400 x)))) (+ (* 50 (pow x 2)) (* x (+ (* 1/12 (* (sqrt x) (+ (* -24000 (sqrt (pow x 3))) (+ (* 8000 (sqrt (pow x 3))) (* 16000 (sqrt (pow x 3))))))) (+ (* 5/2 (* (sqrt (pow x 3)) (+ (* -400 x) (* 400 x)))) (* 500/3 (pow x 3)))))))))))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 500/3 binary64) (*.f64 x x) #s(literal 50 binary64)) (*.f64 x x) #s(literal 10 binary64)) x) x #s(literal 1 binary64))
(+ 1 (* 20 (sqrt (pow x 3))))
(fma.f64 #s(literal 20 binary64) (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 1 binary64))
(+ 1 (* x (+ (* 20 (sqrt x)) (* 200 (pow x 2)))))
(fma.f64 #s(literal 200 binary64) (pow.f64 x #s(literal 3 binary64)) (fma.f64 (*.f64 x (sqrt.f64 x)) #s(literal 20 binary64) #s(literal 1 binary64)))
(+ 1 (* x (+ (* 20 (sqrt x)) (* x (+ (* 200 x) (* 4000/3 (sqrt (pow x 5))))))))
(fma.f64 (fma.f64 (fma.f64 (sqrt.f64 (pow.f64 x #s(literal 5 binary64))) #s(literal 4000/3 binary64) (*.f64 #s(literal 200 binary64) x)) x (*.f64 #s(literal 20 binary64) (sqrt.f64 x))) x #s(literal 1 binary64))
(+ 1 (* 10 x))
(fma.f64 #s(literal 10 binary64) x #s(literal 1 binary64))
(+ 1 (* x (+ 10 (* 50 x))))
(fma.f64 (fma.f64 #s(literal 50 binary64) x #s(literal 10 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 10 (* x (+ 50 (* 500/3 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 500/3 binary64) x #s(literal 50 binary64)) x #s(literal 10 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (log (pow (exp 5) 2))))
(fma.f64 #s(literal 10 binary64) x #s(literal 1 binary64))
(+ 1 (* x (+ (log (pow (exp 5) 2)) (* 1/2 (* x (pow (log (pow (exp 5) 2)) 2))))))
(fma.f64 (fma.f64 #s(literal 50 binary64) x #s(literal 10 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ (log (pow (exp 5) 2)) (* x (+ (* 1/6 (* x (pow (log (pow (exp 5) 2)) 3))) (* 1/2 (pow (log (pow (exp 5) 2)) 2)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 500/3 binary64) x #s(literal 50 binary64)) x #s(literal 10 binary64)) x #s(literal 1 binary64))
(+ 1 (* 20 x))
(fma.f64 #s(literal 20 binary64) x #s(literal 1 binary64))
(+ 1 (* x (+ 20 (* 200 x))))
(fma.f64 (fma.f64 #s(literal 200 binary64) x #s(literal 20 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 20 (* x (+ 200 (* 4000/3 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 4000/3 binary64) x #s(literal 200 binary64)) x #s(literal 20 binary64)) x #s(literal 1 binary64))
(* (exp (* 1/2 (* (pow x 2) (log (pow (exp 5) 2))))) (exp (* 5 (pow x 2))))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)
(* (cos x) (* (exp (* 1/2 (* (pow x 2) (log (pow (exp 5) 2))))) (exp (* 5 (pow x 2)))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x) (cos.f64 x))
(* (cos x) (pow (exp (* 5 (pow x 2))) 2))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x) (cos.f64 x))
(cos x)
(cos.f64 x)
(* -1/2 (pow x 2))
(*.f64 #s(literal -1/2 binary64) (*.f64 x x))
(* (pow x 2) (- (/ 1 (pow x 2)) 1/2))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(/ (cos x) (exp (* -10 (pow x 2))))
(/.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal -10 binary64)))
(/ 1 (exp (* -10 (pow x 2))))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)
(exp (* -10 (pow x 2)))
(pow.f64 (pow.f64 (exp.f64 x) x) #s(literal -10 binary64))
(pow (exp x) 2)
(pow.f64 (exp.f64 x) #s(literal 2 binary64))
(* (cos x) (exp (* 5 (* x (log (pow (exp x) 2))))))
(*.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x) (cos.f64 x))
(exp (* 5 (* x (log (pow (exp x) 2)))))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)
(* (cos x) (exp (* 1/2 (* (sqrt x) (log (pow (pow (exp x) 20) (sqrt x)))))))
(*.f64 (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (cos.f64 x))
(exp (* 1/2 (* (sqrt x) (log (pow (pow (exp x) 20) (sqrt x))))))
(sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
(pow (pow (exp x) 20) (sqrt x))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x))
(exp (* 10 x))
(pow.f64 (exp.f64 x) #s(literal 10 binary64))
(pow (pow (exp 5) 2) x)
(pow.f64 (exp.f64 x) #s(literal 10 binary64))
(pow (exp (* 5 (pow x 2))) 2)
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)
(pow (exp x) 20)
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
(* (cos x) (exp (* -1/2 (* x (* (log (pow (exp x) 20)) (pow (sqrt -1) 2))))))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (neg.f64 x)) #s(literal -1/2 binary64)) (cos.f64 x))
(exp (* -1/2 (* x (* (log (pow (exp x) 20)) (pow (sqrt -1) 2)))))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (neg.f64 x)) #s(literal -1/2 binary64))
(exp (* (sqrt x) (* (log (pow (exp x) 20)) (pow (sqrt -1) 2))))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (neg.f64 (sqrt.f64 x)))

rewrite52.0ms (0.4%)

Memory
4.2MiB live, 54.6MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
048234
080101
123793
2111340
01198040
Stop Event
iter limit
node limit
iter limit
Counts
22 → 113
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64))
(*.f64 x #s(literal 1 binary64))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(*.f64 x x)
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(cos.f64 x)
(/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))
(*.f64 (exp.f64 x) (exp.f64 x))
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
(pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
(pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x))
(pow.f64 (exp.f64 #s(literal 10 binary64)) x)
(pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x)
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
(pow.f64 (exp.f64 x) #s(literal 20 binary64))
Outputs
#s(literal 1 binary64)
(*.f64 (exp.f64 #s(literal 5 binary64)) (exp.f64 #s(literal 5 binary64)))
(pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64))
(exp.f64 #s(literal 10 binary64))
x
#s(literal 0 binary64)
(*.f64 (/.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) #s(literal -1 binary64)))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(pow.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64))) #s(literal 1 binary64))
(/.f64 (neg.f64 (neg.f64 (cos.f64 x))) #s(literal 1 binary64))
(/.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x))))
(/.f64 (cos.f64 x) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (*.f64 (cos.f64 x) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 x)))
(cos.f64 x)
(*.f64 #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)) #s(approx (cos x) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
#s(approx (cos x) #s(literal 1 binary64))
#s(literal 1 binary64)
x
#s(literal 0 binary64)
(*.f64 (/.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) #s(literal -1 binary64)))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(pow.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64))) #s(literal 1 binary64))
(/.f64 (neg.f64 (neg.f64 (cos.f64 x))) #s(literal 1 binary64))
(/.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x))))
(/.f64 (cos.f64 x) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (*.f64 (cos.f64 x) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 x)))
(cos.f64 x)
(*.f64 (/.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) #s(literal -1 binary64)))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(pow.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64))) #s(literal 1 binary64))
(/.f64 (neg.f64 (neg.f64 (cos.f64 x))) #s(literal 1 binary64))
(/.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x))))
(/.f64 (cos.f64 x) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (*.f64 (cos.f64 x) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 x)))
(cos.f64 x)
#s(literal 1 binary64)
#s(literal 1 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) #s(literal -1 binary64)))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(pow.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64))) #s(literal 1 binary64))
(/.f64 (neg.f64 (neg.f64 (cos.f64 x))) #s(literal 1 binary64))
(/.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x))))
(/.f64 (cos.f64 x) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (*.f64 (cos.f64 x) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 x)))
(cos.f64 x)
#s(literal 1 binary64)
(*.f64 (/.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) #s(literal -1 binary64)))
(*.f64 (cos.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cos.f64 x))
(pow.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64))) #s(literal 1 binary64))
(/.f64 (neg.f64 (neg.f64 (cos.f64 x))) #s(literal 1 binary64))
(/.f64 (*.f64 (cos.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (neg.f64 (cos.f64 x)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x))))
(/.f64 (cos.f64 x) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (*.f64 (cos.f64 x) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (cos.f64 x)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 x)))
(cos.f64 x)
#s(literal 1 binary64)
#s(literal 1 binary64)
#s(literal 1 binary64)
#s(literal 1 binary64)
#s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64))
#s(literal 1 binary64)

eval17.0ms (0.1%)

Memory
-10.2MiB live, 26.3MiB allocated
Compiler

Compiled 2 146 to 372 computations (82.7% saved)

prune29.0ms (0.2%)

Memory
23.5MiB live, 60.8MiB allocated
Pruning

36 alts after pruning (26 fresh and 10 done)

PrunedKeptTotal
New82890
Fresh31821
Picked325
Done088
Total8836124
Accuracy
99.5%
Counts
124 → 36
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
93.3%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64))))
96.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
96.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
96.8%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) x)))
95.5%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
93.7%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64)))))
98.0%
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
95.4%
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) (*.f64 x x)))
94.3%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
94.0%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))))
94.7%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
95.4%
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
94.7%
(*.f64 (cos.f64 x) (pow.f64 #s(approx (* (exp x) (exp x)) (pow.f64 (exp.f64 x) #s(literal 2 binary64))) (*.f64 #s(literal 5 binary64) x)))
94.3%
(*.f64 (cos.f64 x) (pow.f64 #s(approx (exp (pow x 3/2)) (exp.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
95.4%
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
99.0%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
97.7%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
98.0%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
97.8%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
97.8%
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) #s(approx (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) x))))
94.0%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
94.5%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
94.6%
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
93.8%
(*.f64 (cos.f64 x) #s(approx (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2)) (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))))
96.8%
(*.f64 (cos.f64 x) #s(approx (pow (* (exp x) (exp x)) (* 5 x)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
9.8%
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
27.6%
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
21.3%
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
18.2%
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
9.7%
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
96.7%
#s(approx (* (cos x) (/ 1 (pow (exp 10) (* (neg x) x)))) (/.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal -10 binary64))))
1.5%
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
Compiler

Compiled 1 509 to 667 computations (55.8% saved)

regimes49.0ms (0.4%)

Memory
-6.0MiB live, 33.0MiB allocated
Counts
47 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) #s(approx (pow (* (exp x) (exp x)) (* 5 x)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
(*.f64 (cos.f64 x) (pow.f64 #s(approx (* (exp x) (exp x)) (pow.f64 (exp.f64 x) #s(literal 2 binary64))) (*.f64 #s(literal 5 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
#s(approx (* (cos x) (/ 1 (pow (exp 10) (* (neg x) x)))) (/.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal -10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64)))
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 #s(approx (exp (pow x 3/2)) (exp.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64)))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 x) #s(approx (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2)) (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))))
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) (*.f64 x x)))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) #s(approx (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) x))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
Outputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
Calls

2 calls:

13.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
12.0ms
x
Results
AccuracySegmentsBranch
99.0%1x
99.0%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes37.0ms (0.3%)

Memory
-7.7MiB live, 37.2MiB allocated
Counts
42 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) #s(approx (pow (* (exp x) (exp x)) (* 5 x)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
(*.f64 (cos.f64 x) (pow.f64 #s(approx (* (exp x) (exp x)) (pow.f64 (exp.f64 x) #s(literal 2 binary64))) (*.f64 #s(literal 5 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
#s(approx (* (cos x) (/ 1 (pow (exp 10) (* (neg x) x)))) (/.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal -10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64)))
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 #s(approx (exp (pow x 3/2)) (exp.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64)))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 x) #s(approx (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2)) (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))))
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) (*.f64 x x)))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) #s(approx (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) x))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (pow (exp 10) x) (pow.f64 (exp.f64 x) #s(literal 10 binary64))) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (pow.f64 x #s(literal 1/4 binary64))) (pow.f64 x #s(literal 1/4 binary64))))
Outputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
Calls

2 calls:

24.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
11.0ms
x
Results
AccuracySegmentsBranch
98.0%1x
98.0%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes24.0ms (0.2%)

Memory
5.1MiB live, 42.7MiB allocated
Counts
38 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) #s(approx (pow (* (exp x) (exp x)) (* 5 x)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal 10 binary64)))
(*.f64 (cos.f64 x) (pow.f64 #s(approx (* (exp x) (exp x)) (pow.f64 (exp.f64 x) #s(literal 2 binary64))) (*.f64 #s(literal 5 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) (*.f64 #s(literal 2 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (*.f64 #s(literal 1/2 binary64) x)))
#s(approx (* (cos x) (/ 1 (pow (exp 10) (* (neg x) x)))) (/.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 x) x) #s(literal -10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1/2 binary64)))
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (exp.f64 x) (exp.f64 x)) (*.f64 #s(literal 5 binary64) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 (pow.f64 x #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 #s(approx (exp (pow x 3/2)) (exp.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))))) (*.f64 (sqrt.f64 x) #s(literal 10 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 1 binary64)))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (sqrt.f64 x)) (pow.f64 x #s(literal 3/2 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (pow.f64 x #s(literal 3/2 binary64))) (sqrt.f64 x)))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (*.f64 (sqrt.f64 x) #s(literal 1/2 binary64))))
(*.f64 (cos.f64 x) #s(approx (pow (pow (pow (exp x) 20) (sqrt x)) (* (sqrt x) 1/2)) (sqrt.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 x) #s(literal 20 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))))
(*.f64 (cos.f64 x) (pow.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64)) (pow.f64 (exp.f64 #s(literal 10 binary64)) #s(literal 1/2 binary64))) (*.f64 x x)))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) #s(approx (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 5 binary64)) x))))
Outputs
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
Calls

2 calls:

12.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
10.0ms
x
Results
AccuracySegmentsBranch
98.0%1x
98.0%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes16.0ms (0.1%)

Memory
-13.3MiB live, 24.1MiB allocated
Counts
19 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) #s(approx (pow (* (exp x) (exp x)) (* 5 x)) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
Outputs
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
Calls

2 calls:

9.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
6.0ms
x
Results
AccuracySegmentsBranch
96.8%1x
96.8%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes14.0ms (0.1%)

Memory
-12.4MiB live, 24.0MiB allocated
Counts
17 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3/2 binary64)) #s(literal 10 binary64)) (sqrt.f64 x))))
Outputs
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
Calls

2 calls:

5.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
5.0ms
x
Results
AccuracySegmentsBranch
95.4%1x
95.4%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes11.0ms (0.1%)

Memory
25.6MiB live, 25.6MiB allocated
Counts
15 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 x) (*.f64 #s(literal 10 binary64) x)))
Outputs
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
Calls

2 calls:

5.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
5.0ms
x
Results
AccuracySegmentsBranch
95.4%1x
95.4%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes12.0ms (0.1%)

Memory
-22.5MiB live, 25.0MiB allocated
Counts
13 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 (*.f64 #s(literal 10 binary64) x) x)))
Outputs
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Calls

2 calls:

6.0ms
x
4.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Results
AccuracySegmentsBranch
94.6%1x
94.6%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes8.0ms (0.1%)

Memory
14.8MiB live, 14.8MiB allocated
Counts
11 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Outputs
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Calls

2 calls:

4.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
4.0ms
x
Results
AccuracySegmentsBranch
27.6%1x
27.6%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes10.0ms (0.1%)

Memory
-19.1MiB live, 19.3MiB allocated
Counts
10 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Outputs
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Calls

2 calls:

6.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
3.0ms
x
Results
AccuracySegmentsBranch
21.3%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
21.3%1x
Compiler

Compiled 10 to 8 computations (20% saved)

regimes7.0ms (0.1%)

Memory
17.9MiB live, 17.9MiB allocated
Counts
9 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Outputs
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Calls

2 calls:

3.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
3.0ms
x
Results
AccuracySegmentsBranch
18.2%1x
18.2%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes8.0ms (0.1%)

Memory
-20.6MiB live, 17.4MiB allocated
Counts
8 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (* (pow (exp 10) 1/2) (pow (exp 10) 1/2)) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 (*.f64 x x) #s(literal 10 binary64) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (/ 1 (pow (exp 10) (* (neg x) x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
Outputs
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
Calls

2 calls:

3.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
3.0ms
x
Results
AccuracySegmentsBranch
9.8%1x
9.8%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
Compiler

Compiled 10 to 8 computations (20% saved)

regimes4.0ms (0%)

Memory
14.5MiB live, 14.5MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
Outputs
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
Calls

2 calls:

2.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
2.0ms
x
Results
AccuracySegmentsBranch
9.7%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
9.7%1x
Compiler

Compiled 10 to 8 computations (20% saved)

regimes3.0ms (0%)

Memory
13.7MiB live, 13.7MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
Outputs
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
Calls

2 calls:

1.0ms
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
1.0ms
x
Results
AccuracySegmentsBranch
1.5%1(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
1.5%1x
Compiler

Compiled 10 to 8 computations (20% saved)

simplify176.0ms (1.3%)

Memory
-18.5MiB live, 66.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
076216
1100216
2149216
3210212
4241212
5431212
61822212
74786212
87400212
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))
Outputs
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 5 binary64)) #s(literal 2 binary64)) x) (/.f64 x #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64))) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) (/.f64 x #s(literal 2 binary64)))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) x) x))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (pow.f64 (pow.f64 (exp.f64 x) #s(literal 10 binary64)) x)))
(*.f64 (cos.f64 x) (/.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x))))
(*.f64 (cos.f64 x) (pow.f64 (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 (neg.f64 x) x)) #s(literal -1 binary64)))
(*.f64 (cos.f64 x) (pow.f64 (exp.f64 #s(literal 10 binary64)) (*.f64 x x)))
(*.f64 (cos.f64 x) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 #s(approx (cos x) (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))) (exp.f64 (*.f64 #s(literal 10 binary64) (*.f64 x x))))
(*.f64 (cos.f64 x) #s(approx (exp (* 10 (* x x))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 (cos.f64 x) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) (fma.f64 #s(literal 10 binary64) (*.f64 x x) #s(literal 1 binary64))))
(*.f64 #s(approx (cos x) #s(approx (+ (* -1/2 (* x x)) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x x)))) #s(approx (* (pow (pow (exp 10) x) (/ (* x 1) 2)) (pow (pow (exp 10) x) (/ (* x 1) 2))) #s(literal 1 binary64)))
#s(approx (* (cos x) (exp (* 10 (* x x)))) #s(literal 1 binary64))

soundness7.4s (54.1%)

Memory
26.6MiB live, 1 177.0MiB allocated
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02901129
1847877
22609589
09211516
0175504
1501475
21479416
35214414
46390414
09002363
053140
1131140
2336140
3718140
41104140
51266140
61370140
71591140
82106140
93382140
104756140
115587140
125953140
136198140
146283140
157367140
08443122
048234
080101
123793
2111340
01198040
039179
064118
119490
283238
0949638
0150402
1392380
2938355
32242355
43853355
54304355
65220355
77029355
08023310
032140
053101
114385
257836
0735936
0722
01222
12022
24222
311322
442616
0338816
Stop Event
fuel
iter limit
iter limit
node limit
iter limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 672 to 282 computations (58% saved)

preprocess127.0ms (0.9%)

Memory
-28.2MiB live, 138.5MiB allocated
Remove

(abs x)

Compiler

Compiled 840 to 380 computations (54.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...