math.sin on complex, imaginary part

Time bar (total: 11.2s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 14 to 13 computations (7.1% saved)

sample3.3s (29.6%)

Memory
93.6MiB live, 3 975.2MiB allocated
Samples
1.5s1 467×2valid
881.0ms2 456×1valid
613.0ms4 333×0valid
Precisions
Click to see histograms. Total time spent on operations: 2.4s
ival-exp: 1.2s (48.7% of total)
adjust: 420.0ms (17.7% of total)
ival-mult: 339.0ms (14.3% of total)
ival-cos: 301.0ms (12.7% of total)
ival-sub: 138.0ms (5.8% of total)
exact: 10.0ms (0.4% of total)
ival-true: 7.0ms (0.3% of total)
ival-assert: 4.0ms (0.2% of total)
Bogosity

explain257.0ms (2.3%)

Memory
-17.4MiB live, 354.4MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1270-0-(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
00-0-(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
00-0-(exp.f64 im)
00-0-#s(literal 0 binary64)
00-0-(cos.f64 re)
00-0-im
00-0-(-.f64 #s(literal 0 binary64) im)
00-0-re
00-0-(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
00-0-#s(literal 1/2 binary64)
01(-1.3955799919243391e-123 -179.38577115280088)0-(exp.f64 (-.f64 #s(literal 0 binary64) im))
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))cancellation1270
exp.f64(exp.f64 (-.f64 #s(literal 0 binary64) im))sensitivity11
Confusion
Predicted +Predicted -
+1270
-1128
Precision
0.9921875
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+12700
-11127
Precision?
0.9844961240310077
Recall?
1.0
Freqs
test
numberfreq
0128
1128
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
49.0ms168×1valid
34.0ms76×2valid
25.0ms268×0valid
Compiler

Compiled 92 to 37 computations (59.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 85.0ms
ival-exp: 40.0ms (46.8% of total)
adjust: 19.0ms (22.2% of total)
ival-cos: 11.0ms (12.9% of total)
ival-mult: 8.0ms (9.4% of total)
ival-sub: 6.0ms (7% of total)
exact: 1.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess131.0ms (1.2%)

Memory
14.4MiB live, 221.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02959
19555
222155
364255
4315355
01112
01811
13811
27311
320111
477010
5784410
0801010
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
Symmetry

(abs re)

(negabs im)

Compiler

Compiled 12 to 11 computations (8.3% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 12 to 11 computations (8.3% saved)

simplify126.0ms (1.1%)

Memory
-6.8MiB live, 187.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
cost-diff1
(-.f64 #s(literal 0 binary64) im)
cost-diff1
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01138
01834
13834
27334
320134
477032
5784432
0801032
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(-.f64 #s(literal 0 binary64) im)
#s(literal 0 binary64)
im
(exp.f64 im)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(cos.f64 re)
re
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(exp.f64 (-.f64 #s(literal 0 binary64) im))
(exp.f64 (neg.f64 im))
(-.f64 #s(literal 0 binary64) im)
(neg.f64 im)
#s(literal 0 binary64)
im
(exp.f64 im)

localize63.0ms (0.6%)

Memory
17.6MiB live, 140.0MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(exp.f64 im)
accuracy0.0
(cos.f64 re)
accuracy0.046875
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
accuracy29.233532543404607
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
Samples
23.0ms38×2valid
19.0ms84×1valid
13.0ms134×0valid
Compiler

Compiled 40 to 13 computations (67.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 43.0ms
ival-exp: 25.0ms (58.7% of total)
ival-cos: 6.0ms (14.1% of total)
adjust: 4.0ms (9.4% of total)
ival-mult: 4.0ms (9.4% of total)
ival-sub: 3.0ms (7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series26.0ms (0.2%)

Memory
-42.8MiB live, 17.7MiB allocated
Counts
6 → 31
Calls
Call 1
Inputs
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(-.f64 #s(literal 0 binary64) im)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(cos.f64 re)
(exp.f64 im)
Outputs
(* 1/2 (- (exp (neg im)) (exp im)))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(* 1/2 (cos re))
(cos re)
(* -2 im)
(* im (- (* -1/3 (pow im 2)) 2))
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(* -1 im)
(* -1 (* im (cos re)))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(- (exp (neg im)) (exp im))
(exp im)
(- (exp (* -1 im)) (exp im))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
Calls

6 calls:

TimeVariablePointExpression
19.0ms
re
@inf
((- (exp (- 0 im)) (exp im)) (- 0 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (cos re) (exp im))
2.0ms
im
@0
((- (exp (- 0 im)) (exp im)) (- 0 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (cos re) (exp im))
1.0ms
im
@inf
((- (exp (- 0 im)) (exp im)) (- 0 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (cos re) (exp im))
1.0ms
im
@-inf
((- (exp (- 0 im)) (exp im)) (- 0 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (cos re) (exp im))
1.0ms
re
@0
((- (exp (- 0 im)) (exp im)) (- 0 im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (cos re) (exp im))

simplify315.0ms (2.8%)

Memory
45.9MiB live, 357.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0126381
1387349
21286341
35237320
08363297
Stop Event
iter limit
node limit
Counts
31 → 31
Calls
Call 1
Inputs
(* 1/2 (- (exp (neg im)) (exp im)))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(* 1/2 (cos re))
(cos re)
(* -2 im)
(* im (- (* -1/3 (pow im 2)) 2))
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(* -1 im)
(* -1 (* im (cos re)))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(- (exp (neg im)) (exp im))
(exp im)
(- (exp (* -1 im)) (exp im))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
Outputs
(* 1/2 (- (exp (neg im)) (exp im)))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/48 binary64) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))) (*.f64 re re) #s(literal 1/2 binary64))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/720 binary64) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(cos re)
(cos.f64 re)
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* im (- (* -1/3 (pow im 2)) 2))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)
(* -1 im)
(neg.f64 im)
(* -1 (* im (cos re)))
(*.f64 (neg.f64 (cos.f64 re)) im)
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(*.f64 (cos.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 im)))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal -1/120 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))) im)
(+ 1 im)
(+.f64 #s(literal 1 binary64) im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(- (exp (neg im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp im)
(exp.f64 im)
(- (exp (* -1 im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))

rewrite187.0ms (1.7%)

Memory
-6.2MiB live, 169.3MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01130
01827
16427
242025
0500125
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
6 → 176
Calls
Call 1
Inputs
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
(-.f64 #s(literal 0 binary64) im)
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(cos.f64 re)
(exp.f64 im)
Outputs
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))) (+.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (-.f64 (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 4 binary64)) (pow.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) #s(literal 2 binary64)))) (-.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) (neg.f64 im))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 4 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(/.f64 (-.f64 (*.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) (-.f64 (cosh.f64 im) (exp.f64 im))) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))) (+.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im)))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))) (+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))) (+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))) (-.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) (-.f64 (cosh.f64 im) (exp.f64 im)) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))) (*.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (-.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (exp.f64 (neg.f64 im))) (*.f64 (fma.f64 (sinh.f64 (neg.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal 1 binary64))) (+.f64 (neg.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))
(/.f64 (-.f64 (*.f64 (+.f64 (neg.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (*.f64 (fma.f64 (sinh.f64 (neg.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (fma.f64 (sinh.f64 (neg.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 im))) (*.f64 (neg.f64 (exp.f64 im)) #s(literal 1 binary64))) (*.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im))))
(/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (*.f64 (neg.f64 (exp.f64 im)) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (neg.f64 (exp.f64 im)) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (*.f64 (exp.f64 im) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (exp.f64 im) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 4 binary64)) (pow.f64 (exp.f64 im) #s(literal 4 binary64))) (*.f64 (fma.f64 (exp.f64 im) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 6 binary64)) (pow.f64 (exp.f64 im) #s(literal 6 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 4 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 6 binary64)) (pow.f64 (exp.f64 im) #s(literal 6 binary64))) (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 9 binary64)) (pow.f64 (exp.f64 im) #s(literal 9 binary64))) (*.f64 (+.f64 (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 6 binary64)) (+.f64 (pow.f64 (exp.f64 im) #s(literal 6 binary64)) #s(literal 1 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 1 binary64))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))) (+.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(fma.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) (/.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(fma.f64 (fabs.f64 (exp.f64 (neg.f64 im))) (/.f64 (fabs.f64 (exp.f64 (neg.f64 im))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(fma.f64 (exp.f64 (neg.f64 im)) (/.f64 (exp.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(-.f64 (-.f64 (exp.f64 (neg.f64 im)) (sinh.f64 im)) (cosh.f64 im))
(-.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (-.f64 #s(literal 0 binary64) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))))
(-.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im))
(-.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(-.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(-.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im)))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) (cosh.f64 im))
(+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(+.f64 (sinh.f64 (neg.f64 im)) (-.f64 (cosh.f64 im) (exp.f64 im)))
(+.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (/.f64 (*.f64 im im) (*.f64 im im)) (neg.f64 im))
(*.f64 (/.f64 (*.f64 im im) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (*.f64 im im))
(*.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 (pow.f64 im #s(literal 6 binary64)))) (pow.f64 im #s(literal 4 binary64)))
(*.f64 (/.f64 (*.f64 (neg.f64 im) im) (pow.f64 im #s(literal 3 binary64))) (*.f64 im im))
(*.f64 (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 im im))
(*.f64 (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (pow.f64 im #s(literal 4 binary64)))
(*.f64 (/.f64 (*.f64 im im) (pow.f64 im #s(literal 3 binary64))) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 (*.f64 im im) (*.f64 (neg.f64 im) im)) im)
(*.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (*.f64 im im))
(*.f64 (/.f64 (*.f64 (neg.f64 im) im) (*.f64 (neg.f64 im) im)) (neg.f64 im))
(/.f64 (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (fabs.f64 im)) (fabs.f64 im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)))
(/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (*.f64 im im))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (pow.f64 im #s(literal 3 binary64)))
(/.f64 (neg.f64 (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 im #s(literal 4 binary64)) im))
(/.f64 (neg.f64 (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 im im)))
(/.f64 (neg.f64 (pow.f64 im #s(literal 9 binary64))) (*.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 im im)))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (neg.f64 im) im))
(/.f64 (*.f64 (neg.f64 im) im) im)
(/.f64 (*.f64 im im) (neg.f64 im))
(neg.f64 im)
(fma.f64 (/.f64 (*.f64 im im) (*.f64 im im)) (neg.f64 im) #s(literal 0 binary64))
(fma.f64 (/.f64 (*.f64 im im) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 (pow.f64 im #s(literal 6 binary64)))) (pow.f64 im #s(literal 4 binary64)) #s(literal 0 binary64))
(fma.f64 (/.f64 (*.f64 (neg.f64 im) im) (pow.f64 im #s(literal 3 binary64))) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 im) im) #s(literal 0 binary64))
(fma.f64 (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (pow.f64 im #s(literal 4 binary64)) #s(literal 0 binary64))
(fma.f64 (/.f64 (*.f64 im im) (pow.f64 im #s(literal 3 binary64))) (*.f64 (neg.f64 im) im) #s(literal 0 binary64))
(fma.f64 (/.f64 (*.f64 im im) (*.f64 (neg.f64 im) im)) im #s(literal 0 binary64))
(fma.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 (/.f64 (*.f64 (neg.f64 im) im) (*.f64 (neg.f64 im) im)) (neg.f64 im) #s(literal 0 binary64))
(-.f64 (log.f64 (+.f64 (neg.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (log.f64 (fma.f64 (sinh.f64 (neg.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (neg.f64 (exp.f64 im))))
(-.f64 (neg.f64 im) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) im)
(+.f64 (neg.f64 im) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (neg.f64 im))
(log.f64 (exp.f64 (neg.f64 im)))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (+.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)))) (+.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (-.f64 (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 4 binary64)) (pow.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) #s(literal 2 binary64)))) (-.f64 (expm1.f64 (*.f64 #s(literal 2 binary64) (neg.f64 im))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (+.f64 (pow.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (pow.f64 (exp.f64 (neg.f64 im)) #s(literal 4 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (cos.f64 re))
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (/.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(fma.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))))
(fma.f64 (cosh.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (*.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))))
(+.f64 (*.f64 (cosh.f64 im) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))) (*.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (*.f64 (sin.f64 re) #s(literal 0 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(+.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im)) (*.f64 (*.f64 (cos.f64 re) #s(literal 1/2 binary64)) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(fma.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 re) #s(literal 0 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (sin.f64 re) #s(literal 0 binary64))) (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 1 binary64) (cos.f64 re)))) (-.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (sin.f64 re) #s(literal 0 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 1 binary64) (cos.f64 re))) (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re))))))
(fma.f64 (sin.f64 (neg.f64 re)) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 #s(literal 1 binary64) (cos.f64 re) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(fma.f64 (sin.f64 re) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(fma.f64 (cos.f64 re) #s(literal 1 binary64) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(fma.f64 #s(literal 0 binary64) (sin.f64 re) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re))
(-.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 (neg.f64 re)) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 (sin.f64 re) #s(literal 0 binary64)))
(+.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (cos.f64 re)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (neg.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fma.f64 (sinh.f64 (neg.f64 im)) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(*.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(*.f64 #s(literal 1 binary64) (exp.f64 im))
(*.f64 (exp.f64 im) #s(literal 1 binary64))
(/.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (sinh.f64 im) (cosh.f64 im)))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (neg.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (*.f64 (sinh.f64 (neg.f64 im)) (exp.f64 (neg.f64 im)))))
(/.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(fma.f64 #s(literal 1 binary64) (sinh.f64 im) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(fma.f64 (sinh.f64 im) #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(-.f64 (+.f64 (sinh.f64 im) (*.f64 #s(literal 1 binary64) (cosh.f64 im))) #s(literal 0 binary64))
(-.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (exp.f64 (neg.f64 im))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (exp.f64 (neg.f64 im))))
(-.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (+.f64 #s(literal 0 binary64) (sinh.f64 (neg.f64 im))))
(-.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (-.f64 #s(literal 0 binary64) (sinh.f64 im)))
(-.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(exp.f64 im)
(+.f64 (-.f64 (cosh.f64 im) #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(+.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(+.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(+.f64 (*.f64 #s(literal 1 binary64) (sinh.f64 im)) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(+.f64 (sinh.f64 im) (cosh.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 im))

eval54.0ms (0.5%)

Memory
-31.3MiB live, 50.5MiB allocated
Compiler

Compiled 5 110 to 871 computations (83% saved)

prune10.0ms (0.1%)

Memory
14.9MiB live, 14.9MiB allocated
Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1969205
Fresh000
Picked101
Done000
Total1979206
Accuracy
99.9%
Counts
206 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
50.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))
93.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
89.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
82.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
41.9%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
51.9%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
89.3%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
82.2%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 im))))
Compiler

Compiled 436 to 334 computations (23.4% saved)

simplify135.0ms (1.2%)

Memory
40.4MiB live, 218.4MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
cost-diff0
(cos.f64 re)
cost-diff0
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
cost-diff0
(exp.f64 (neg.f64 im))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
cost-diff1
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
cost-diff4
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
cost-diff0
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
cost-diff0
(cos.f64 re)
cost-diff0
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
cost-diff0
(cos.f64 re)
cost-diff0
(neg.f64 (cos.f64 re))
cost-diff0
(*.f64 (neg.f64 (cos.f64 re)) im)
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
cost-diff0
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
cost-diff0
(cos.f64 re)
cost-diff0
(*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
cost-diff4
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
046310
073299
1147297
2344295
31195273
45961273
08250273
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(cos.f64 re)
re
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(literal 2 binary64)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
(*.f64 (neg.f64 (cos.f64 re)) im)
(neg.f64 (cos.f64 re))
(cos.f64 re)
re
im
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
#s(literal -1/60 binary64)
(*.f64 im im)
im
#s(literal 1/3 binary64)
#s(literal 2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
(cos.f64 re)
re
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
#s(literal -1/120 binary64)
(*.f64 im im)
im
#s(literal -1/6 binary64)
(pow.f64 im #s(literal 3 binary64))
#s(literal 3 binary64)
(neg.f64 im)
Outputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re))
(*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (sinh.f64 (neg.f64 im)))
(cos.f64 re)
re
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
(*.f64 (neg.f64 (cos.f64 re)) im)
(*.f64 (neg.f64 im) (cos.f64 re))
(neg.f64 (cos.f64 re))
(cos.f64 re)
re
im
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(literal 1/2 binary64)
(cos.f64 re)
re
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im)
(-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal -1/60 binary64))
#s(literal -1/60 binary64)
(*.f64 im im)
im
#s(literal 1/3 binary64)
#s(literal 2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(sinh.f64 (neg.f64 im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal 1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
(*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal 1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im)) (cos.f64 re))
(cos.f64 re)
re
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
(neg.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal 1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im))
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
#s(literal -1/120 binary64)
(*.f64 im im)
im
#s(literal -1/6 binary64)
(pow.f64 im #s(literal 3 binary64))
#s(literal 3 binary64)
(neg.f64 im)

localize300.0ms (2.7%)

Memory
-5.5MiB live, 440.3MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.03515625
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
accuracy0.0625
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
accuracy0.0703125
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
accuracy6.830770579290593
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
accuracy0.0
(exp.f64 (neg.f64 im))
accuracy0.0
(exp.f64 im)
accuracy19.9778848850322
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
accuracy29.233532543404607
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
accuracy0.09765625
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
accuracy0.1484375
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
accuracy0.28515625
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
accuracy6.82955668805133
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
accuracy0.0
(neg.f64 (cos.f64 re))
accuracy0.0
(cos.f64 re)
accuracy0.0859375
(*.f64 (neg.f64 (cos.f64 re)) im)
accuracy30.726175076639866
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
accuracy0.0
(neg.f64 im)
accuracy0.0
(cos.f64 re)
accuracy0.00390625
(sinh.f64 (neg.f64 im))
accuracy0.046875
(*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
Samples
105.0ms38×2valid
95.0ms84×1valid
69.0ms134×0valid
Compiler

Compiled 254 to 42 computations (83.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 160.0ms
ival-exp: 54.0ms (33.8% of total)
const: 35.0ms (21.9% of total)
ival-mult: 28.0ms (17.5% of total)
adjust: 17.0ms (10.6% of total)
ival-sub: 9.0ms (5.6% of total)
ival-cos: 6.0ms (3.8% of total)
ival-add: 4.0ms (2.5% of total)
ival-pow: 3.0ms (1.9% of total)
ival-neg: 2.0ms (1.3% of total)
exact: 1.0ms (0.6% of total)
ival-sinh: 1.0ms (0.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series43.0ms (0.4%)

Memory
-6.6MiB live, 53.1MiB allocated
Counts
24 → 93
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(cos.f64 re)
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
(*.f64 (neg.f64 (cos.f64 re)) im)
(neg.f64 (cos.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(exp.f64 (neg.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(exp.f64 im)
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
Outputs
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/48 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(- (exp (neg im)) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* -1/2 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/24 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/24 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (- (exp (neg im)) (exp im)))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(* -1 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
-1
(- (* 1/2 (pow re 2)) 1)
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)
(- (+ (* -1/2 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))) (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6))) im)
(- (+ (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/2 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)) (* 1/24 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)))))) im)
(- (+ (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/2 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))) (* 1/24 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))))))) im)
(* 1/2 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(cos re)
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(* -1 (* im (cos re)))
(* -1 (cos re))
(* 1/2 (cos re))
(* (cos re) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(* -2 (* im (cos re)))
(* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))
(* -2 im)
(* im (- (* -1/3 (pow im 2)) 2))
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(* im (- (* -1/6 (pow im 2)) 1))
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(* -1/3 im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(* -1/60 (pow im 2))
(* -1/3 (pow im 2))
(* (pow im 2) (- (* -1/60 (pow im 2)) 1/3))
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
-1/6
(- (* -1/120 (pow im 2)) 1/6)
(- (exp (neg im)) (exp im))
(exp (neg im))
(* -1/120 (* (pow im 5) (cos re)))
(* (pow im 5) (+ (* -1/6 (/ (cos re) (pow im 2))) (* -1/120 (cos re))))
(* (pow im 5) (+ (* -1 (/ (cos re) (pow im 4))) (+ (* -1/6 (/ (cos re) (pow im 2))) (* -1/120 (cos re)))))
(* -1/120 (pow im 5))
(* -1 (* (pow im 5) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(* (pow im 5) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 2))) 1/120))
(* -1/60 (pow im 3))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(* -1/60 (pow im 4))
(* -1 (* (pow im 4) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(exp im)
(* -1/120 (pow im 2))
(* -1 (* (pow im 2) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(- (exp (* -1 im)) (/ 1 (exp (* -1 im))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(- (exp (* -1 im)) (exp im))
(* 1/2 (- (exp (* -1 im)) (exp im)))
(exp (* -1 im))
(* -1 (* (pow im 5) (+ (* 1/120 (cos re)) (* 1/6 (/ (cos re) (pow im 2))))))
(* -1 (* (pow im 5) (+ (* 1/120 (cos re)) (+ (* 1/6 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4))))))
(* -1 (* (pow im 5) (+ 1/120 (+ (* 1/6 (/ 1 (pow im 2))) (/ 1 (pow im 4))))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
Calls

6 calls:

TimeVariablePointExpression
18.0ms
re
@-inf
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (* 2 (sinh (neg im))) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (* (- (exp (neg im)) (exp im)) 1/2) (- (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (exp (neg im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (cos re) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im))) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im)) (sinh (neg im)) (neg im) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im) (+ (* -1/120 (* im im)) -1/6))
8.0ms
im
@inf
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (* 2 (sinh (neg im))) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (* (- (exp (neg im)) (exp im)) 1/2) (- (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (exp (neg im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (cos re) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im))) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im)) (sinh (neg im)) (neg im) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im) (+ (* -1/120 (* im im)) -1/6))
5.0ms
im
@-inf
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (* 2 (sinh (neg im))) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (* (- (exp (neg im)) (exp im)) 1/2) (- (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (exp (neg im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (cos re) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im))) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im)) (sinh (neg im)) (neg im) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im) (+ (* -1/120 (* im im)) -1/6))
4.0ms
re
@0
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (* 2 (sinh (neg im))) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (* (- (exp (neg im)) (exp im)) 1/2) (- (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (exp (neg im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (cos re) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im))) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im)) (sinh (neg im)) (neg im) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im) (+ (* -1/120 (* im im)) -1/6))
4.0ms
re
@inf
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (* 2 (sinh (neg im))) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im)) (* (- (exp (neg im)) (exp im)) 1/2) (- (exp (neg im)) (exp im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (exp (neg im)) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (cos re) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im))) (+ (* (+ (* -1/120 (* im im)) -1/6) (pow im 3)) (neg im)) (sinh (neg im)) (neg im) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im) (+ (* -1/120 (* im im)) -1/6))

simplify208.0ms (1.9%)

Memory
18.6MiB live, 257.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03161407
110421202
240431143
081701074
Stop Event
iter limit
node limit
Counts
93 → 93
Calls
Call 1
Inputs
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/48 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(- (exp (neg im)) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* -1/2 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/24 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/24 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (- (exp (neg im)) (exp im)))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(* -1 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
-1
(- (* 1/2 (pow re 2)) 1)
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)
(- (+ (* -1/2 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))) (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6))) im)
(- (+ (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/2 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)) (* 1/24 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)))))) im)
(- (+ (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/2 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))) (* 1/24 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))))))) im)
(* 1/2 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(cos re)
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(* -1 (* im (cos re)))
(* -1 (cos re))
(* 1/2 (cos re))
(* (cos re) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(* -2 (* im (cos re)))
(* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))
(* -2 im)
(* im (- (* -1/3 (pow im 2)) 2))
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(* im (- (* -1/6 (pow im 2)) 1))
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(* -1/3 im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(* -1/60 (pow im 2))
(* -1/3 (pow im 2))
(* (pow im 2) (- (* -1/60 (pow im 2)) 1/3))
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
-1/6
(- (* -1/120 (pow im 2)) 1/6)
(- (exp (neg im)) (exp im))
(exp (neg im))
(* -1/120 (* (pow im 5) (cos re)))
(* (pow im 5) (+ (* -1/6 (/ (cos re) (pow im 2))) (* -1/120 (cos re))))
(* (pow im 5) (+ (* -1 (/ (cos re) (pow im 4))) (+ (* -1/6 (/ (cos re) (pow im 2))) (* -1/120 (cos re)))))
(* -1/120 (pow im 5))
(* -1 (* (pow im 5) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(* (pow im 5) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 2))) 1/120))
(* -1/60 (pow im 3))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(* -1/60 (pow im 4))
(* -1 (* (pow im 4) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(exp im)
(* -1/120 (pow im 2))
(* -1 (* (pow im 2) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(- (exp (* -1 im)) (/ 1 (exp (* -1 im))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(- (exp (* -1 im)) (exp im))
(* 1/2 (- (exp (* -1 im)) (exp im)))
(exp (* -1 im))
(* -1 (* (pow im 5) (+ (* 1/120 (cos re)) (* 1/6 (/ (cos re) (pow im 2))))))
(* -1 (* (pow im 5) (+ (* 1/120 (cos re)) (+ (* 1/6 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4))))))
(* -1 (* (pow im 5) (+ 1/120 (+ (* 1/6 (/ 1 (pow im 2))) (/ 1 (pow im 4))))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
Outputs
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/48 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(- (exp (neg im)) (/ 1 (exp (neg im))))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(- (+ (exp (neg im)) (* -1/2 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/24 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im))))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/24 binary64) (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 re re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/24 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (- (exp (neg im)) (exp im)))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(* -1 im)
(neg.f64 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(fma.f64 (*.f64 im (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (*.f64 re re) (neg.f64 im))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 im (fma.f64 (*.f64 #s(literal 1/720 binary64) re) re #s(literal -1/24 binary64))) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
-1
#s(literal -1 binary64)
(- (* 1/2 (pow re 2)) 1)
(-.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
(-.f64 (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 re re)) #s(literal 1/24 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)
(fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
(- (+ (* -1/2 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))) (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6))) im)
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
(- (+ (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/2 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)) (* 1/24 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)))))) im)
(-.f64 (*.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal 1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) im) (fma.f64 #s(literal 1/24 binary64) (*.f64 re re) #s(literal -1/2 binary64))) (*.f64 re re) im))
(- (+ (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/2 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im)) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))) (* 1/24 (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))))))) im)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)) (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
(* 1/2 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re))
(cos re)
(cos.f64 re)
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(* -1 (* im (cos re)))
(*.f64 (neg.f64 (cos.f64 re)) im)
(* -1 (cos re))
(neg.f64 (cos.f64 re))
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* (cos re) (- (* (pow im 3) (- (* -1/120 (pow im 2)) 1/6)) im))
(*.f64 (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)) (cos.f64 re))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(*.f64 (*.f64 (cos.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(*.f64 (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64))) (*.f64 im im) (neg.f64 (cos.f64 re))) im)
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal -1/120 binary64))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))) im)
(* -2 (* im (cos re)))
(*.f64 (*.f64 #s(literal -2 binary64) (cos.f64 re)) im)
(* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/3 binary64) im) im #s(literal -2 binary64))) im)
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))
(fma.f64 (*.f64 #s(literal -2 binary64) im) (cos.f64 re) (*.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal -1/3 binary64))) (pow.f64 im #s(literal 3 binary64))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/2520 binary64) (*.f64 im im) #s(literal -1/60 binary64))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/3 binary64) im) im #s(literal -2 binary64)))) im)
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* im (- (* -1/3 (pow im 2)) 2))
(*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)
(* im (- (* -1/6 (pow im 2)) 1))
(*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
(+ 1 (* -1 im))
(-.f64 #s(literal 1 binary64) im)
(+ 1 (* im (- (* 1/2 im) 1)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) im #s(literal 1/2 binary64)) im) #s(literal 1 binary64)) im #s(literal 1 binary64))
(* -1/3 im)
(*.f64 #s(literal -1/3 binary64) im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(* -1/60 (pow im 2))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(* -1/3 (pow im 2))
(*.f64 #s(literal -1/3 binary64) (*.f64 im im))
(* (pow im 2) (- (* -1/60 (pow im 2)) 1/3))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(+ 1 im)
(+.f64 #s(literal 1 binary64) im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) im #s(literal 1 binary64)) im #s(literal 1 binary64))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) im #s(literal 1/2 binary64)) im #s(literal 1 binary64)) im #s(literal 1 binary64))
-1/6
#s(literal -1/6 binary64)
(- (* -1/120 (pow im 2)) 1/6)
(fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64))
(- (exp (neg im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp (neg im))
(exp.f64 (neg.f64 im))
(* -1/120 (* (pow im 5) (cos re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal -1/120 binary64)) (cos.f64 re))
(* (pow im 5) (+ (* -1/6 (/ (cos re) (pow im 2))) (* -1/120 (cos re))))
(*.f64 (*.f64 (cos.f64 re) (-.f64 (/.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1/120 binary64))) (pow.f64 im #s(literal 5 binary64)))
(* (pow im 5) (+ (* -1 (/ (cos re) (pow im 4))) (+ (* -1/6 (/ (cos re) (pow im 2))) (* -1/120 (cos re)))))
(*.f64 (fma.f64 (cos.f64 re) (-.f64 (/.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) (/.f64 (neg.f64 (cos.f64 re)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 im #s(literal 5 binary64)))
(* -1/120 (pow im 5))
(*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal -1/120 binary64))
(* -1 (* (pow im 5) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal -1/120 binary64)) (pow.f64 im #s(literal 5 binary64)))
(* (pow im 5) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 2))) 1/120))
(*.f64 (-.f64 (/.f64 (+.f64 (/.f64 #s(literal -1 binary64) (*.f64 im im)) #s(literal -1/6 binary64)) (*.f64 im im)) #s(literal 1/120 binary64)) (pow.f64 im #s(literal 5 binary64)))
(* -1/60 (pow im 3))
(*.f64 #s(literal -1/60 binary64) (pow.f64 im #s(literal 3 binary64)))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal -1/60 binary64)) (pow.f64 im #s(literal 3 binary64)))
(* -1/60 (pow im 4))
(*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/60 binary64))
(* -1 (* (pow im 4) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal -1/60 binary64)) (pow.f64 im #s(literal 4 binary64)))
(exp im)
(exp.f64 im)
(* -1/120 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -1/120 binary64))
(* -1 (* (pow im 2) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re))
(- (exp (* -1 im)) (/ 1 (exp (* -1 im))))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (cos.f64 re) #s(literal 1/2 binary64)))
(- (exp (* -1 im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (- (exp (* -1 im)) (exp im)))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(exp (* -1 im))
(exp.f64 (neg.f64 im))
(* -1 (* (pow im 5) (+ (* 1/120 (cos re)) (* 1/6 (/ (cos re) (pow im 2))))))
(*.f64 (*.f64 (cos.f64 re) (-.f64 (/.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1/120 binary64))) (pow.f64 im #s(literal 5 binary64)))
(* -1 (* (pow im 5) (+ (* 1/120 (cos re)) (+ (* 1/6 (/ (cos re) (pow im 2))) (/ (cos re) (pow im 4))))))
(*.f64 (fma.f64 (cos.f64 re) (-.f64 (/.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) (/.f64 (neg.f64 (cos.f64 re)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 im #s(literal 5 binary64)))
(* -1 (* (pow im 5) (+ 1/120 (+ (* 1/6 (/ 1 (pow im 2))) (/ 1 (pow im 4))))))
(*.f64 (+.f64 (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal 4 binary64))) (+.f64 (/.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal -1/120 binary64))) (pow.f64 im #s(literal 5 binary64)))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))

rewrite508.0ms (4.6%)

Memory
-74.2MiB live, 139.4MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
046237
073226
1245200
01472200
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
24 → 274
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(cos.f64 re)
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
(*.f64 (neg.f64 (cos.f64 re)) im)
(neg.f64 (cos.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(exp.f64 (neg.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
(*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(exp.f64 im)
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 re))) (sinh.f64 (neg.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (sinh.f64 (neg.f64 im))))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (sinh.f64 (neg.f64 im))) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re))
(*.f64 (cos.f64 re) (sinh.f64 (neg.f64 im)))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(*.f64 (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (sinh.f64 (neg.f64 im)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cos.f64 re))
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cos.f64 re)))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (sinh.f64 im)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 re))) (sinh.f64 (neg.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(fma.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (sinh.f64 (neg.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(fma.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 re)) (sinh.f64 (neg.f64 im))) #s(literal 1/2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(fma.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(fma.f64 (cos.f64 re) (sinh.f64 (neg.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(+.f64 (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) (cos.f64 re)))
(fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (/.f64 (+.f64 (neg.f64 im) (neg.f64 im)) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 (neg.f64 im) (neg.f64 im)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(/.f64 (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)))) (-.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))) (fma.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))))))
(/.f64 (fma.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (neg.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (neg.f64 (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(neg.f64 (+.f64 (sinh.f64 im) (sinh.f64 im)))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(neg.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (sinh.f64 (neg.f64 im)))
(fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64) (sinh.f64 (neg.f64 im)))
(fma.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64) (sinh.f64 (neg.f64 im)))
(fma.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (sinh.f64 (neg.f64 im)))
(fma.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)) (sinh.f64 (neg.f64 im)))
(-.f64 (-.f64 (exp.f64 (neg.f64 im)) (cosh.f64 im)) (sinh.f64 im))
(-.f64 (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(-.f64 (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))))
(-.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im)))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
(*.f64 (neg.f64 (cos.f64 re)) im)
(*.f64 (neg.f64 im) (cos.f64 re))
(*.f64 im (neg.f64 (cos.f64 re)))
(*.f64 (cos.f64 re) (neg.f64 im))
(/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im)
(/.f64 (*.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (cos.f64 re)) (*.f64 im im))
(/.f64 (*.f64 (cos.f64 re) (neg.f64 (*.f64 im im))) im)
(/.f64 (*.f64 (cos.f64 re) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (*.f64 im im))
(neg.f64 (*.f64 im (cos.f64 re)))
(neg.f64 (cos.f64 re))
(sin.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re)))
(sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (PI.f64) re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 re) (cos.f64 (PI.f64))) (*.f64 (sin.f64 re) (sin.f64 (PI.f64))))
(cos.f64 (neg.f64 (+.f64 (PI.f64) re)))
(cos.f64 (+.f64 (neg.f64 re) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (+.f64 (PI.f64) re))
(*.f64 (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) #s(literal 1/2 binary64)) (cos.f64 re))
(*.f64 (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) (cos.f64 re)) #s(literal 1/2 binary64))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) (cos.f64 re)))
(*.f64 (cos.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) #s(literal 1/2 binary64)) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(sinh.f64 (neg.f64 im))
(neg.f64 (sinh.f64 im))
(-.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
(-.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(+.f64 (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (/.f64 (+.f64 (neg.f64 im) (neg.f64 im)) #s(literal 2 binary64))) (cosh.f64 (/.f64 (-.f64 (neg.f64 im) (neg.f64 im)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(/.f64 (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)))) (-.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))) (fma.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))))))
(/.f64 (fma.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (neg.f64 (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(/.f64 (neg.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (neg.f64 (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(neg.f64 (+.f64 (sinh.f64 im) (sinh.f64 im)))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(neg.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (sinh.f64 (neg.f64 im)))
(fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64) (sinh.f64 (neg.f64 im)))
(fma.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64) (sinh.f64 (neg.f64 im)))
(fma.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (sinh.f64 (neg.f64 im)))
(fma.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)) (sinh.f64 (neg.f64 im)))
(-.f64 (-.f64 (exp.f64 (neg.f64 im)) (cosh.f64 im)) (sinh.f64 im))
(-.f64 (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))))
(-.f64 (/.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))))))
(-.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im)))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (cosh.f64 im) (cosh.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)))) (exp.f64 im))
(/.f64 (-.f64 (*.f64 (cosh.f64 im) (cosh.f64 im)) (*.f64 (sinh.f64 im) (sinh.f64 im))) (exp.f64 im))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im))) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(fma.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (cosh.f64 im))
(fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64) (cosh.f64 im))
(fma.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64) (cosh.f64 im))
(fma.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (cosh.f64 im))
(fma.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)) (cosh.f64 im))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(exp.f64 (neg.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(+.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (neg.f64 im)) (cos.f64 re)))
(*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (neg.f64 im)) (cos.f64 re))
(*.f64 (cos.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (neg.f64 im)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)) (*.f64 im im)) (cos.f64 re)) (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im)))
(/.f64 (*.f64 (+.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64))) (cos.f64 re)) (fma.f64 (neg.f64 im) (-.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64))))
(/.f64 (*.f64 (cos.f64 re) (-.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)) (*.f64 im im))) (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im)))
(/.f64 (*.f64 (cos.f64 re) (+.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64)))) (fma.f64 (neg.f64 im) (-.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re))) (*.f64 (*.f64 (neg.f64 im) (cos.f64 re)) (*.f64 (neg.f64 im) (cos.f64 re)))) (-.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) (*.f64 (neg.f64 im) (cos.f64 re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 im) (cos.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) (-.f64 (*.f64 (*.f64 (neg.f64 im) (cos.f64 re)) (*.f64 (neg.f64 im) (cos.f64 re))) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) (*.f64 (neg.f64 im) (cos.f64 re))))))
(fma.f64 (*.f64 (cos.f64 re) (pow.f64 im #s(literal 3 binary64))) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (neg.f64 im) (cos.f64 re)))
(fma.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (pow.f64 im #s(literal 3 binary64)) (*.f64 (neg.f64 im) (cos.f64 re)))
(fma.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re) (*.f64 (neg.f64 im) (cos.f64 re)))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (cos.f64 re)) (*.f64 (neg.f64 im) (cos.f64 re)))
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (pow.f64 im #s(literal 3 binary64)) (cos.f64 re)) (*.f64 (neg.f64 im) (cos.f64 re)))
(fma.f64 (neg.f64 (cos.f64 re)) im (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)))
(fma.f64 (neg.f64 im) (cos.f64 re) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)))
(fma.f64 im (neg.f64 (cos.f64 re)) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)))
(fma.f64 (cos.f64 re) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (*.f64 (neg.f64 im) (cos.f64 re)))
(fma.f64 (cos.f64 re) (neg.f64 im) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)))
(-.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) (*.f64 im (cos.f64 re)))
(-.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) (*.f64 (neg.f64 (cos.f64 re)) (neg.f64 im)))
(+.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)) (*.f64 (neg.f64 im) (cos.f64 re)))
(+.f64 (*.f64 (neg.f64 im) (cos.f64 re)) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (cos.f64 re)))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64))) (-.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (neg.f64 im) (-.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im)))
(/.f64 (+.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im)))))
(/.f64 (+.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64))) (fma.f64 (neg.f64 im) (-.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3/2 binary64))) (pow.f64 im #s(literal 3/2 binary64)) (neg.f64 im))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im)) im (neg.f64 im))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im) (*.f64 im im) (neg.f64 im))
(fma.f64 (pow.f64 im #s(literal 3/2 binary64)) (*.f64 (pow.f64 im #s(literal 3/2 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (neg.f64 im))
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
(fma.f64 (*.f64 im im) (*.f64 im (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im))
(fma.f64 im (*.f64 (*.f64 im im) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im))
(-.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 0 binary64)) im)
(-.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im))) (/.f64 (*.f64 im im) (-.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im))))
(-.f64 #s(literal 0 binary64) (-.f64 im (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)))))
(-.f64 (neg.f64 im) (*.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))))
(-.f64 (neg.f64 im) (*.f64 (neg.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (pow.f64 im #s(literal 3 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64)) (fma.f64 (neg.f64 im) (-.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (fma.f64 (neg.f64 im) (-.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)))) (pow.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 2 binary64)))))
(+.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (neg.f64 im))
(+.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))))
(*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64)) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) #s(literal 1/2 binary64)) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (+.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 3 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (+.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(sinh.f64 (neg.f64 im))
(neg.f64 (sinh.f64 im))
(-.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
(-.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(+.f64 (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)))
(/.f64 (neg.f64 (neg.f64 (*.f64 im im))) (neg.f64 im))
(/.f64 (neg.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (neg.f64 (*.f64 im im)))
(/.f64 (neg.f64 (*.f64 im im)) im)
(/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (*.f64 im im))
(neg.f64 im)
(-.f64 (/.f64 #s(literal 0 binary64) im) (/.f64 (*.f64 im im) im))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 im im)))
(-.f64 #s(literal 0 binary64) im)
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im)
(*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 2 binary64)) #s(literal 1/9 binary64)) im) (fma.f64 (*.f64 im im) #s(literal -1/60 binary64) #s(literal 1/3 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 3 binary64)) #s(literal 1/27 binary64)) im) (+.f64 (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64)) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 2 binary64))))
(/.f64 (*.f64 im (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 2 binary64)) #s(literal 1/9 binary64))) (fma.f64 (*.f64 im im) #s(literal -1/60 binary64) #s(literal 1/3 binary64)))
(/.f64 (*.f64 im (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 3 binary64)) #s(literal 1/27 binary64))) (+.f64 (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64)) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal -1/60 binary64) (fabs.f64 im)) (fabs.f64 im))
(*.f64 (*.f64 #s(literal -1/60 binary64) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 #s(literal -1/60 binary64) im) im)
(*.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal -1/60 binary64)))
(*.f64 (*.f64 im im) #s(literal -1/60 binary64))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/60 binary64)))
(*.f64 im (*.f64 #s(literal -1/60 binary64) im))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) (fabs.f64 im)) (fabs.f64 im))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im)
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) (*.f64 im im))
(*.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)))
(*.f64 im (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 2 binary64)) #s(literal 1/9 binary64)) (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal -1/60 binary64) #s(literal 1/3 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 3 binary64)) #s(literal 1/27 binary64)) (*.f64 im im)) (+.f64 (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64)) (pow.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (cosh.f64 im) (cosh.f64 im)) (*.f64 (sinh.f64 im) (sinh.f64 im))) (exp.f64 (neg.f64 im)))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (sinh.f64 im) (sinh.f64 im)) (*.f64 (cosh.f64 im) (sinh.f64 im)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(-.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(exp.f64 im)
(+.f64 (cosh.f64 im) (sinh.f64 im))
(+.f64 (sinh.f64 im) (cosh.f64 im))
(/.f64 (-.f64 #s(literal 1/36 binary64) (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64))) (-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/1728000 binary64) (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64)))
(/.f64 (fma.f64 #s(literal -1/1728000 binary64) (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64)) (+.f64 #s(literal 1/36 binary64) (-.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64)) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))
(/.f64 (fma.f64 #s(literal -1/1728000 binary64) (pow.f64 (*.f64 im im) #s(literal 3 binary64)) #s(literal -1/216 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))
(fma.f64 (*.f64 #s(literal -1/120 binary64) (fabs.f64 im)) (fabs.f64 im) #s(literal -1/6 binary64))
(fma.f64 (*.f64 #s(literal -1/120 binary64) (neg.f64 im)) (neg.f64 im) #s(literal -1/6 binary64))
(fma.f64 (*.f64 #s(literal -1/120 binary64) im) im #s(literal -1/6 binary64))
(fma.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal -1/120 binary64)) #s(literal -1/6 binary64))
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
(fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64))
(fma.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/120 binary64)) #s(literal -1/6 binary64))
(fma.f64 im (*.f64 #s(literal -1/120 binary64) im) #s(literal -1/6 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64))) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64))))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/120 binary64) im)) im))
(-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) (*.f64 im im)))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 im im)) #s(literal -1/120 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))) (/.f64 #s(literal -1/216 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))
(+.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64))
(+.f64 #s(literal -1/6 binary64) (*.f64 #s(literal -1/120 binary64) (*.f64 im im)))

eval53.0ms (0.5%)

Memory
-2.7MiB live, 119.7MiB allocated
Compiler

Compiled 10 459 to 1 490 computations (85.8% saved)

prune32.0ms (0.3%)

Memory
6.9MiB live, 72.5MiB allocated
Pruning

19 alts after pruning (18 fresh and 1 done)

PrunedKeptTotal
New35017367
Fresh314
Picked415
Done000
Total35719376
Accuracy
100.0%
Counts
376 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
66.9%
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
50.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))
60.4%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
60.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
59.6%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
60.7%
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
53.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
51.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (*.f64 (cos.f64 re) (cos.f64 (PI.f64))) (*.f64 (sin.f64 re) (sin.f64 (PI.f64)))) im))
51.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) im))
51.9%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
38.4%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
40.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
40.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
68.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
60.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
64.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
54.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
36.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
32.3%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
Compiler

Compiled 1 120 to 827 computations (26.2% saved)

simplify140.0ms (1.3%)

Memory
16.4MiB live, 196.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(neg.f64 (*.f64 im im))
cost-diff0
(*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
cost-diff4
(/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im)
cost-diff0
(*.f64 re re)
cost-diff0
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
cost-diff0
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
cost-diff0
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
cost-diff0
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
cost-diff0
(neg.f64 im)
cost-diff0
#s(approx (* (neg (cos re)) im) (neg.f64 im))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
cost-diff0
(neg.f64 im)
cost-diff0
(sinh.f64 (neg.f64 im))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
048363
072357
1140357
2313357
3790351
42251343
57414327
08116327
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (neg (cos re)) im) (neg.f64 im))
(neg.f64 im)
im
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
#s(literal 1/24 binary64)
(*.f64 re re)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
im
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
#s(literal -1/60 binary64)
(*.f64 im im)
im
#s(literal 1/3 binary64)
#s(literal 2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
(/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im)
(*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re))
(neg.f64 (*.f64 im im))
(*.f64 im im)
im
(cos.f64 re)
re
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (neg (cos re)) im) (neg.f64 im))
(neg.f64 im)
im
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) (neg.f64 im)))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) (neg.f64 im))
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
(*.f64 (*.f64 re re) #s(literal 1/24 binary64))
#s(literal 1/24 binary64)
(*.f64 re re)
re
#s(literal 1/2 binary64)
#s(literal 1 binary64)
im
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
#s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im)
(-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal -1/60 binary64))
#s(literal -1/60 binary64)
(*.f64 im im)
im
#s(literal 1/3 binary64)
#s(literal 2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
(/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im)
(*.f64 (neg.f64 (cos.f64 re)) im)
(*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re))
(*.f64 (*.f64 im (cos.f64 re)) (neg.f64 im))
(neg.f64 (*.f64 im im))
(*.f64 (neg.f64 im) im)
(*.f64 im im)
im
(cos.f64 re)
re

localize216.0ms (1.9%)

Memory
6.6MiB live, 384.8MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(cos.f64 re)
accuracy0.09765625
(*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re))
accuracy27.345491226877982
(/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im)
accuracy30.726175076639866
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
accuracy0.1484375
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
accuracy0.28515625
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
accuracy6.82955668805133
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
accuracy28.515507934933357
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
accuracy0.0859375
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
accuracy0.18359375
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
accuracy28.53887607869165
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
accuracy30.726175076639866
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
accuracy0.0
(neg.f64 im)
accuracy25.814558875971247
#s(approx (* (neg (cos re)) im) (neg.f64 im))
accuracy30.726175076639866
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
accuracy0.0
(neg.f64 im)
accuracy0.00390625
(sinh.f64 (neg.f64 im))
accuracy19.9778848850322
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
Samples
92.0ms134×0valid
58.0ms84×1valid
36.0ms38×2valid
Compiler

Compiled 237 to 40 computations (83.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 137.0ms
ival-div: 43.0ms (31.3% of total)
ival-mult: 26.0ms (18.9% of total)
ival-exp: 20.0ms (14.6% of total)
const: 12.0ms (8.7% of total)
ival-cos: 11.0ms (8% of total)
adjust: 10.0ms (7.3% of total)
ival-sub: 8.0ms (5.8% of total)
ival-add: 3.0ms (2.2% of total)
ival-neg: 3.0ms (2.2% of total)
exact: 1.0ms (0.7% of total)
ival-sinh: 1.0ms (0.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series44.0ms (0.4%)

Memory
-28.9MiB live, 31.5MiB allocated
Counts
22 → 54
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (neg (cos re)) im) (neg.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
(/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
(*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re))
(neg.f64 (*.f64 im im))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(cos.f64 re)
Outputs
(* 1/2 (- (exp (neg im)) (exp im)))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(* -1 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
-1
(- (* 1/2 (pow re 2)) 1)
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(pow re 2)
(* -1 (pow im 2))
(+ (* -1 (pow im 2)) (* 1/2 (* (pow im 2) (pow re 2))))
(+ (* -1 (pow im 2)) (* (pow re 2) (+ (* -1/24 (* (pow im 2) (pow re 2))) (* 1/2 (pow im 2)))))
(+ (* -1 (pow im 2)) (* (pow re 2) (+ (* 1/2 (pow im 2)) (* (pow re 2) (+ (* -1/24 (pow im 2)) (* 1/720 (* (pow im 2) (pow re 2))))))))
(* 1/24 (pow re 2))
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(* -1 (* im (cos re)))
(* -1 (cos re))
(cos re)
(* 1/2 (cos re))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1 (* (pow im 2) (cos re)))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(* im (- (* -1/6 (pow im 2)) 1))
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(* -2 im)
(* im (- (* -1/3 (pow im 2)) 2))
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(* -1/3 im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(* -1/60 (pow im 2))
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(- (exp (neg im)) (exp im))
(* -1/60 (pow im 3))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(- (exp (* -1 im)) (exp im))
Calls

6 calls:

TimeVariablePointExpression
32.0ms
re
@inf
((* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh (neg im)) (neg im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (/ (* (neg (* im im)) (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* im im)) (cos re)) (neg (* im im)) (* 1/24 (* re re)) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (cos re))
3.0ms
im
@inf
((* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh (neg im)) (neg im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (/ (* (neg (* im im)) (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* im im)) (cos re)) (neg (* im im)) (* 1/24 (* re re)) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (cos re))
2.0ms
im
@-inf
((* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh (neg im)) (neg im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (/ (* (neg (* im im)) (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* im im)) (cos re)) (neg (* im im)) (* 1/24 (* re re)) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (cos re))
2.0ms
re
@-inf
((* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh (neg im)) (neg im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (/ (* (neg (* im im)) (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* im im)) (cos re)) (neg (* im im)) (* 1/24 (* re re)) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (cos re))
2.0ms
im
@0
((* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh (neg im)) (neg im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (* re re) -1/4) 1/2) (* re re) (/ (* (neg (* im im)) (cos re)) im) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (* im im)) (cos re)) (neg (* im im)) (* 1/24 (* re re)) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* -1/60 (* im im)) (cos re))

simplify166.0ms (1.5%)

Memory
17.4MiB live, 276.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0197653
1581618
21997591
35468581
08062550
Stop Event
iter limit
node limit
Counts
54 → 54
Calls
Call 1
Inputs
(* 1/2 (- (exp (neg im)) (exp im)))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(* -1 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
-1
(- (* 1/2 (pow re 2)) 1)
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(pow re 2)
(* -1 (pow im 2))
(+ (* -1 (pow im 2)) (* 1/2 (* (pow im 2) (pow re 2))))
(+ (* -1 (pow im 2)) (* (pow re 2) (+ (* -1/24 (* (pow im 2) (pow re 2))) (* 1/2 (pow im 2)))))
(+ (* -1 (pow im 2)) (* (pow re 2) (+ (* 1/2 (pow im 2)) (* (pow re 2) (+ (* -1/24 (pow im 2)) (* 1/720 (* (pow im 2) (pow re 2))))))))
(* 1/24 (pow re 2))
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(* -1 (* im (cos re)))
(* -1 (cos re))
(cos re)
(* 1/2 (cos re))
(* -1/4 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(* -1 (* (pow im 2) (cos re)))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(* im (- (* -1/6 (pow im 2)) 1))
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(* -2 im)
(* im (- (* -1/3 (pow im 2)) 2))
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(* -1/3 im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(* -1/60 (pow im 2))
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(- (exp (neg im)) (exp im))
(* -1/60 (pow im 3))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(- (exp (* -1 im)) (exp im))
Outputs
(* 1/2 (- (exp (neg im)) (exp im)))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) (fma.f64 #s(literal 1/48 binary64) (*.f64 re re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(* -1 im)
(neg.f64 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(fma.f64 (*.f64 im (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (*.f64 re re) (neg.f64 im))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 im (fma.f64 (*.f64 #s(literal 1/720 binary64) re) re #s(literal -1/24 binary64))) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
-1
#s(literal -1 binary64)
(- (* 1/2 (pow re 2)) 1)
(-.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/24 binary64) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 re re)) #s(literal 1/24 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/720 binary64) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (*.f64 re re) #s(literal 1 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))) (*.f64 re re) #s(literal 1/2 binary64))
(pow re 2)
(*.f64 re re)
(* -1 (pow im 2))
(*.f64 (neg.f64 im) im)
(+ (* -1 (pow im 2)) (* 1/2 (* (pow im 2) (pow re 2))))
(*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(+ (* -1 (pow im 2)) (* (pow re 2) (+ (* -1/24 (* (pow im 2) (pow re 2))) (* 1/2 (pow im 2)))))
(fma.f64 (*.f64 (*.f64 im im) (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64))) (*.f64 re re) (*.f64 (neg.f64 im) im))
(+ (* -1 (pow im 2)) (* (pow re 2) (+ (* 1/2 (pow im 2)) (* (pow re 2) (+ (* -1/24 (pow im 2)) (* 1/720 (* (pow im 2) (pow re 2))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/720 binary64) re) re #s(literal -1/24 binary64))) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
(* 1/24 (pow re 2))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64))
(* -1 (* im (cos re)))
(*.f64 (neg.f64 (cos.f64 re)) im)
(* -1 (cos re))
(neg.f64 (cos.f64 re))
(cos re)
(cos.f64 re)
(* 1/2 (cos re))
(*.f64 (cos.f64 re) #s(literal 1/2 binary64))
(* -1/4 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/4 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re)
(* -1 (* (pow im 2) (cos re)))
(*.f64 (neg.f64 (cos.f64 re)) (*.f64 im im))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(*.f64 (*.f64 im (cos.f64 re)) (fma.f64 #s(literal -1/6 binary64) (*.f64 im im) #s(literal -1 binary64)))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal -1 binary64))) im)
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(*.f64 (fma.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal -1/120 binary64)) #s(literal -1/6 binary64))) (*.f64 im im) (neg.f64 (cos.f64 re))) im)
(* im (- (* -1/6 (pow im 2)) 1))
(*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* im (- (* -1/3 (pow im 2)) 2))
(*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)
(* -1/3 im)
(*.f64 #s(literal -1/3 binary64) im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(* -1/60 (pow im 2))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(- (exp (neg im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* -1/60 (pow im 3))
(*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/60 binary64))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal -1/60 binary64)) (pow.f64 im #s(literal 3 binary64)))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re)) #s(literal 1/2 binary64))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(- (exp (* -1 im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

rewrite182.0ms (1.6%)

Memory
-22.9MiB live, 367.1MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
048271
072265
1235251
21436251
08274251
Stop Event
iter limit
node limit
iter limit
Counts
22 → 209
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (neg (cos re)) im) (neg.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
(/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
(*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re))
(neg.f64 (*.f64 im im))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(cos.f64 re)
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
(/.f64 (-.f64 (*.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64))) (*.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))) (cosh.f64 im))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (*.f64 #s(literal 0 binary64) (cosh.f64 im))) (*.f64 (*.f64 #s(literal 1 binary64) (sinh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))) (sinh.f64 im))
(/.f64 (-.f64 (pow.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (fma.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 1 binary64) (sinh.f64 im)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (fma.f64 (*.f64 #s(literal 1 binary64) (sinh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)) (*.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im))))))
(/.f64 (neg.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (exp.f64 im))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 (neg.f64 im))) #s(literal -2 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64))
(sinh.f64 (neg.f64 im))
(neg.f64 (sinh.f64 im))
(fma.f64 #s(literal 0 binary64) (cosh.f64 im) (*.f64 #s(literal -1 binary64) (sinh.f64 im)))
(-.f64 (/.f64 (-.f64 (exp.f64 (neg.f64 im)) (cosh.f64 im)) #s(literal 2 binary64)) (/.f64 (sinh.f64 im) #s(literal 2 binary64)))
(-.f64 (/.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64)) (/.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64)))
(-.f64 (/.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) #s(literal 2 binary64)) (/.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) #s(literal 2 binary64)))
(-.f64 (*.f64 (sinh.f64 (/.f64 #s(literal 0 binary64) im)) (cosh.f64 im)) (*.f64 (cosh.f64 (/.f64 #s(literal 0 binary64) im)) (sinh.f64 im)))
(-.f64 (*.f64 (sinh.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im))) (cosh.f64 im)) (*.f64 (cosh.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im))) (sinh.f64 im)))
(-.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
(-.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(+.f64 (/.f64 (cosh.f64 im) #s(literal 2 binary64)) (/.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (*.f64 #s(literal -1 binary64) (sinh.f64 im)))
(*.f64 #s(literal -1 binary64) im)
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal 0 binary64) im) (/.f64 #s(literal 0 binary64) im)) (*.f64 im im)) im)
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 im im)) im)
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal 0 binary64) im) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 0 binary64) im) (/.f64 #s(literal 0 binary64) im) (fma.f64 im im (*.f64 (/.f64 #s(literal 0 binary64) im) im))))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 #s(literal 0 binary64) (*.f64 im im)) (fma.f64 im im (*.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) im))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 im (pow.f64 im #s(literal 3 binary64)))) (pow.f64 im #s(literal 3 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 (neg.f64 im) im)) (*.f64 im (pow.f64 (neg.f64 im) #s(literal 3 binary64)))) (*.f64 im (*.f64 (neg.f64 im) im)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)))
(/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (*.f64 im im))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (neg.f64 im) im))
(/.f64 (*.f64 (neg.f64 im) im) im)
(/.f64 (*.f64 im im) (neg.f64 im))
(neg.f64 im)
(fma.f64 #s(literal -1 binary64) im (/.f64 #s(literal 0 binary64) im))
(-.f64 (log.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (neg.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (log.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (neg.f64 (exp.f64 im))))
(-.f64 (/.f64 #s(literal 0 binary64) im) im)
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) im)
(-.f64 (neg.f64 im) (/.f64 #s(literal 0 binary64) im))
(-.f64 #s(literal 0 binary64) im)
(+.f64 (/.f64 #s(literal 0 binary64) im) (neg.f64 im))
(+.f64 (neg.f64 im) (/.f64 #s(literal 0 binary64) im))
(log.f64 (exp.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (neg (cos re)) im) (neg.f64 im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) (neg.f64 im)))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) (neg.f64 im))
(*.f64 (neg.f64 im) #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
(*.f64 im (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))))
(neg.f64 (*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) im))
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (cos re)) (fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))) (*.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))) (+.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))) (*.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))) (-.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (*.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (-.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))) (*.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 re re)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))) #s(literal 1/8 binary64))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (*.f64 (*.f64 (neg.f64 re) re) #s(literal -1/8 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (*.f64 (*.f64 (neg.f64 re) re) #s(literal -1/8 binary64)))))
(/.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64)))))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 #s(literal -1/4 binary64) re) re #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 #s(literal -1/4 binary64) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 re re)))) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 re re)))))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 re (*.f64 (neg.f64 re) #s(literal -1/4 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re (neg.f64 re)) #s(literal -1/4 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 re re)))
(+.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (*.f64 (*.f64 (neg.f64 re) re) #s(literal -1/8 binary64))))) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (*.f64 (*.f64 (neg.f64 re) re) #s(literal -1/8 binary64))))))
(+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (*.f64 (*.f64 (neg.f64 re) re) #s(literal -1/8 binary64))))) (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (*.f64 (*.f64 (neg.f64 re) re) #s(literal -1/8 binary64))))))
(+.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))
(+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/16 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/8 binary64))))))
(+.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 re re)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (neg.f64 re)) (*.f64 #s(literal -1/4 binary64) re)))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 re re)))
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(*.f64 (neg.f64 (neg.f64 (neg.f64 re))) (neg.f64 (neg.f64 (neg.f64 re))))
(*.f64 (neg.f64 (neg.f64 re)) (neg.f64 (neg.f64 re)))
(*.f64 (neg.f64 (neg.f64 re)) re)
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 re re)
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64))
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 re) re))
(neg.f64 (*.f64 re (neg.f64 re)))
(sqrt.f64 (pow.f64 re #s(literal 4 binary64)))
(fabs.f64 (*.f64 (neg.f64 re) re))
(fabs.f64 (*.f64 re (neg.f64 re)))
(fabs.f64 (*.f64 re re))
(exp.f64 (*.f64 (log.f64 (neg.f64 re)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 re) #s(literal 2 binary64))))
(*.f64 (*.f64 (/.f64 (cos.f64 re) im) (neg.f64 im)) im)
(*.f64 (/.f64 (*.f64 (*.f64 im im) (cos.f64 re)) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (*.f64 im im))
(*.f64 (/.f64 (cos.f64 re) im) (*.f64 (neg.f64 im) im))
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 (cos.f64 re) im))
(*.f64 (neg.f64 (cos.f64 re)) im)
(*.f64 (neg.f64 im) (*.f64 im (/.f64 (cos.f64 re) im)))
(*.f64 (neg.f64 im) (cos.f64 re))
(*.f64 im (*.f64 (/.f64 (cos.f64 re) im) (neg.f64 im)))
(*.f64 im (neg.f64 (cos.f64 re)))
(*.f64 (cos.f64 re) (neg.f64 im))
(/.f64 (*.f64 (*.f64 im im) (cos.f64 re)) (neg.f64 im))
(/.f64 (*.f64 (*.f64 im (cos.f64 re)) (neg.f64 im)) im)
(neg.f64 (/.f64 (*.f64 (*.f64 im im) (cos.f64 re)) im))
(neg.f64 (*.f64 im (cos.f64 re)))
(neg.f64 (*.f64 (*.f64 im im) (/.f64 (cos.f64 re) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 im) (cos.f64 re)))
(*.f64 (neg.f64 (neg.f64 (cos.f64 re))) (*.f64 (neg.f64 im) im))
(*.f64 (*.f64 im (cos.f64 re)) (neg.f64 im))
(*.f64 (*.f64 (neg.f64 im) im) (cos.f64 re))
(*.f64 (*.f64 im im) (neg.f64 (cos.f64 re)))
(*.f64 (*.f64 (neg.f64 im) (cos.f64 re)) im)
(*.f64 (neg.f64 (cos.f64 re)) (*.f64 im im))
(*.f64 (neg.f64 im) (*.f64 im (cos.f64 re)))
(*.f64 im (*.f64 (neg.f64 im) (cos.f64 re)))
(*.f64 (cos.f64 re) (*.f64 (neg.f64 im) im))
(neg.f64 (*.f64 (*.f64 im im) (cos.f64 re)))
(*.f64 (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (neg.f64 im)) (/.f64 im (neg.f64 im)))
(*.f64 (/.f64 im (neg.f64 im)) (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (neg.f64 im)))
(*.f64 (/.f64 im im) (*.f64 (neg.f64 im) im))
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 im im))
(*.f64 (neg.f64 im) im)
(*.f64 im (neg.f64 im))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (neg.f64 im) im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 (neg.f64 im) im)))))
(/.f64 (neg.f64 (*.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) im)) (*.f64 (neg.f64 im) im))
(/.f64 (neg.f64 (*.f64 im (*.f64 (neg.f64 im) im))) (neg.f64 im))
(/.f64 (neg.f64 (*.f64 im (pow.f64 (neg.f64 im) #s(literal 3 binary64)))) (*.f64 (neg.f64 im) im))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 im) im))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 im #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(/.f64 (*.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) im) (*.f64 im im))
(/.f64 (*.f64 im (*.f64 (neg.f64 im) im)) im)
(/.f64 (*.f64 im (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (*.f64 im im))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 im im))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) im)
(/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))
(neg.f64 (*.f64 im im))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 im im))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 im) im))
(*.f64 (fabs.f64 (*.f64 #s(literal 1/24 binary64) (neg.f64 re))) re)
(*.f64 (fabs.f64 (*.f64 #s(literal 1/24 binary64) re)) re)
(*.f64 (*.f64 #s(literal 1/24 binary64) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 #s(literal 1/24 binary64) re) re)
(*.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal 1/24 binary64)))
(*.f64 (*.f64 re re) #s(literal 1/24 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
(*.f64 re (fabs.f64 (*.f64 (neg.f64 re) #s(literal 1/24 binary64))))
(*.f64 re (fabs.f64 (*.f64 #s(literal 1/24 binary64) re)))
(*.f64 re (*.f64 #s(literal 1/24 binary64) re))
(sqrt.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/576 binary64)))
(fabs.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 re re)))
(fabs.f64 (*.f64 (*.f64 re re) #s(literal 1/24 binary64)))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)) im)
(*.f64 im (-.f64 (*.f64 (*.f64 im im) #s(literal -1/60 binary64)) #s(literal 1/3 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/9 binary64)) im)) (neg.f64 (fma.f64 (*.f64 im im) #s(literal -1/60 binary64) #s(literal 1/3 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal -1/216000 binary64)) #s(literal 1/27 binary64)) im)) (neg.f64 (fma.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64)))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (*.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/9 binary64)))) (neg.f64 (fma.f64 (*.f64 im im) #s(literal -1/60 binary64) #s(literal 1/3 binary64))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal -1/216000 binary64)) #s(literal 1/27 binary64)))) (neg.f64 (fma.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/9 binary64)) im) (fma.f64 (*.f64 im im) #s(literal -1/60 binary64) #s(literal 1/3 binary64)))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal -1/216000 binary64)) #s(literal 1/27 binary64)) im) (fma.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64))))
(/.f64 (*.f64 im (-.f64 (*.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/9 binary64))) (fma.f64 (*.f64 im im) #s(literal -1/60 binary64) #s(literal 1/3 binary64)))
(/.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal -1/216000 binary64)) #s(literal 1/27 binary64))) (fma.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64))))
(*.f64 (*.f64 #s(literal -1/60 binary64) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 #s(literal -1/60 binary64) im) im)
(*.f64 (*.f64 im im) #s(literal -1/60 binary64))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/60 binary64)))
(*.f64 im (*.f64 #s(literal -1/60 binary64) im))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (sin.f64 re) #s(literal 0 binary64))) (*.f64 (*.f64 (cos.f64 re) #s(literal 1 binary64)) (*.f64 (cos.f64 re) #s(literal 1 binary64)))) (-.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (cos.f64 re) #s(literal 1 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 re) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (sin.f64 re) #s(literal 0 binary64)) (-.f64 (*.f64 (*.f64 (cos.f64 re) #s(literal 1 binary64)) (*.f64 (cos.f64 re) #s(literal 1 binary64))) (*.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (cos.f64 re) #s(literal 1 binary64))))))
(fma.f64 (sin.f64 (neg.f64 re)) #s(literal 0 binary64) (*.f64 (cos.f64 re) #s(literal 1 binary64)))
(fma.f64 (sin.f64 re) #s(literal 0 binary64) (*.f64 (cos.f64 re) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 re) (*.f64 #s(literal 0 binary64) (sin.f64 re)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 re)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re))
(-.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (neg.f64 (cos.f64 re)) #s(literal 1 binary64)))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 re))))
(cos.f64 (neg.f64 (neg.f64 re)))
(cos.f64 (neg.f64 re))
(cos.f64 re)
(+.f64 (*.f64 (sin.f64 (neg.f64 re)) #s(literal 0 binary64)) (*.f64 (cos.f64 re) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 re)) (*.f64 #s(literal 0 binary64) (sin.f64 re)))
(+.f64 (*.f64 (sin.f64 re) #s(literal 0 binary64)) (*.f64 (cos.f64 re) #s(literal 1 binary64)))

eval73.0ms (0.7%)

Memory
-18.1MiB live, 103.1MiB allocated
Compiler

Compiled 10 951 to 1 565 computations (85.7% saved)

prune30.0ms (0.3%)

Memory
26.5MiB live, 86.7MiB allocated
Pruning

26 alts after pruning (22 fresh and 4 done)

PrunedKeptTotal
New31510325
Fresh11213
Picked235
Done011
Total31826344
Accuracy
100.0%
Counts
344 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
66.9%
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
50.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))
60.4%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
60.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
62.5%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
54.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
46.0%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
12.9%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
24.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (/.f64 (*.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) im) (*.f64 im im)) (cos.f64 re)) im))
53.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
36.4%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
35.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
51.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (*.f64 (cos.f64 re) (cos.f64 (PI.f64))) (*.f64 (sin.f64 re) (sin.f64 (PI.f64)))) im))
51.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) im))
51.9%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
38.4%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
40.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
40.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
68.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
60.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
64.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
54.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
14.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
36.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
32.3%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
60.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
Compiler

Compiled 1 561 to 1 138 computations (27.1% saved)

simplify161.0ms (1.4%)

Memory
38.2MiB live, 290.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
cost-diff0
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
cost-diff0
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
cost-diff0
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
cost-diff0
(-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))
cost-diff0
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
cost-diff0
#s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
cost-diff0
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
cost-diff0
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
cost-diff0
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
cost-diff0
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))
cost-diff0
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
cost-diff0
#s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
cost-diff0
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
cost-diff0
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
cost-diff0
#s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))
cost-diff0
(*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
cost-diff4
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
076645
0118640
1222638
2512636
31511609
44759609
08052609
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
#s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
#s(literal -1/2 binary64)
(*.f64 re re)
re
#s(literal 1 binary64)
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(literal 2 binary64)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
im
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) re)
#s(literal 1/2 binary64)
re
#s(literal -1 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/24 binary64) re) re)
(*.f64 #s(literal 1/24 binary64) re)
#s(literal 1/24 binary64)
re
#s(literal 1/2 binary64)
(*.f64 re re)
#s(literal 1 binary64)
im
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
(-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im)
(-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64))
(*.f64 #s(literal -1/5040 binary64) (*.f64 im im))
#s(literal -1/5040 binary64)
(*.f64 im im)
im
#s(literal 1/120 binary64)
#s(literal 1/6 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
#s(literal -1/1440 binary64)
(*.f64 re re)
re
#s(literal 1/48 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
#s(literal -1/60 binary64)
(*.f64 im im)
im
#s(literal 1/3 binary64)
#s(literal 2 binary64)
Outputs
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (sinh.f64 (neg.f64 im)))
#s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
#s(literal -1/2 binary64)
(*.f64 re re)
re
#s(literal 1 binary64)
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
#s(literal 1/2 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)) im)))
#s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
#s(approx (* (neg (cos re)) im) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)) im))
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)) im)
im
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) re)
#s(literal 1/2 binary64)
re
#s(literal -1 binary64)
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) (neg.f64 im)))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) (neg.f64 im))
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/24 binary64) re) re)
(*.f64 #s(literal 1/24 binary64) re)
#s(literal 1/24 binary64)
re
#s(literal 1/2 binary64)
(*.f64 re re)
#s(literal 1 binary64)
im
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im))
#s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)
(-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im)
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im)
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im)
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im)
(-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64))
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(*.f64 #s(literal -1/5040 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal -1/5040 binary64))
#s(literal -1/5040 binary64)
(*.f64 im im)
im
#s(literal 1/120 binary64)
#s(literal 1/6 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))
#s(literal -1/1440 binary64)
(*.f64 re re)
re
#s(literal 1/48 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64))
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
#s(literal -1/60 binary64)
(*.f64 im im)
im
#s(literal 1/3 binary64)
#s(literal 2 binary64)

localize527.0ms (4.7%)

Memory
-33.4MiB live, 616.3MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.24609375
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
accuracy0.28515625
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
accuracy6.82955668805133
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
accuracy28.48423136038038
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
accuracy0.125
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im)
accuracy0.13671875
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im))
accuracy4.263326065136414
#s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im))
accuracy19.9778848850322
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
accuracy0.09375
(*.f64 (*.f64 #s(literal 1/24 binary64) re) re)
accuracy0.33984375
(*.f64 #s(literal 1/24 binary64) re)
accuracy28.53887607869165
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
accuracy30.726175076639866
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) re)
accuracy3.2591890148216898
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
accuracy28.394145806809675
#s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
accuracy30.726175076639866
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
accuracy0.0
(neg.f64 im)
accuracy0.00390625
(sinh.f64 (neg.f64 im))
accuracy0.046875
(*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
accuracy28.515552845830804
#s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))
Samples
199.0ms84×1valid
148.0ms134×0valid
62.0ms38×2valid
Compiler

Compiled 433 to 70 computations (83.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 335.0ms
ival-add: 117.0ms (35% of total)
ival-mult: 57.0ms (17% of total)
ival-sub: 55.0ms (16.4% of total)
const: 39.0ms (11.7% of total)
ival-exp: 34.0ms (10.2% of total)
adjust: 18.0ms (5.4% of total)
ival-cos: 9.0ms (2.7% of total)
ival-neg: 2.0ms (0.6% of total)
exact: 1.0ms (0.3% of total)
ival-sinh: 1.0ms (0.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series70.0ms (0.6%)

Memory
-15.4MiB live, 44.6MiB allocated
Counts
30 → 105
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
#s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
(-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
(*.f64 #s(literal 1/2 binary64) re)
(*.f64 #s(literal 1/24 binary64) re)
(*.f64 (*.f64 #s(literal 1/24 binary64) re) re)
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im)
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
Outputs
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/48 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(- (exp (neg im)) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* -1/2 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/24 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/24 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (- (exp (neg im)) (exp im)))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(* -1 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
-1
(- (* 1/2 (pow re 2)) 1)
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
-1/4
(- (* 1/48 (pow re 2)) 1/4)
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(* 1/2 re)
(* 1/24 re)
(* 1/24 (pow re 2))
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(* 1/2 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(cos re)
(* -1/2 (pow re 2))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(* -1 (* im (cos re)))
(* 1/2 (* im (pow re 2)))
(* (pow re 2) (+ (* -1 (/ im (pow re 2))) (* 1/2 im)))
(* 1/2 (pow re 2))
(* (pow re 2) (- 1/2 (/ 1 (pow re 2))))
(* -1 (cos re))
(* 1/2 (cos re))
(* -1/1440 (pow re 6))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 4))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 3))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(* -2 (* im (cos re)))
(* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))
(* im (- (* 1/2 (pow re 2)) 1))
(* im (- (* -1/6 (pow im 2)) 1))
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(- (* -1/6 (pow im 2)) 1)
(- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)
(- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1)
(* -1/6 (pow im 2))
(* (pow im 2) (- (* -1/120 (pow im 2)) 1/6))
(* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6))
(* -1/120 (pow im 2))
(* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120))
(* -2 im)
(* im (- (* -1/3 (pow im 2)) 2))
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(* -1/3 im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(* -1/5040 (pow im 7))
(* -1 (* (pow im 7) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* (pow im 7) (- (* -1 (/ (+ 1/120 (* 1/6 (/ 1 (pow im 2)))) (pow im 2))) 1/5040))
(* (pow im 7) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 4))) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* -1/5040 (pow im 6))
(* -1 (* (pow im 6) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* (pow im 6) (- (* -1 (/ (+ 1/120 (* 1/6 (/ 1 (pow im 2)))) (pow im 2))) 1/5040))
(* (pow im 6) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 4))) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* -1/5040 (pow im 4))
(* -1 (* (pow im 4) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(- (exp (neg im)) (exp im))
(* -1/60 (pow im 3))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(* 1/2 (- (exp (* -1 im)) (exp im)))
(* -1 (* (pow im 7) (+ 1/5040 (+ (/ 1/6 (pow im 4)) (* 1/120 (/ 1 (pow im 2)))))))
(* -1 (* (pow im 7) (+ 1/5040 (+ (/ 1/6 (pow im 4)) (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6)))))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(- (exp (* -1 im)) (exp im))
Calls

6 calls:

TimeVariablePointExpression
50.0ms
im
@inf
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (+ (* -1/2 (* re re)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* im (+ (* (* 1/2 re) re) -1)) (+ (* (* 1/2 re) re) -1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (neg im)) (exp im)) 1/2) (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (sinh (neg im)) (neg im) (* 1/2 re) (* 1/24 re) (* (* 1/24 re) re) (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (+ (* -1/1440 (* re re)) 1/48) re))
4.0ms
re
@inf
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (+ (* -1/2 (* re re)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* im (+ (* (* 1/2 re) re) -1)) (+ (* (* 1/2 re) re) -1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (neg im)) (exp im)) 1/2) (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (sinh (neg im)) (neg im) (* 1/2 re) (* 1/24 re) (* (* 1/24 re) re) (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (+ (* -1/1440 (* re re)) 1/48) re))
4.0ms
im
@-inf
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (+ (* -1/2 (* re re)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* im (+ (* (* 1/2 re) re) -1)) (+ (* (* 1/2 re) re) -1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (neg im)) (exp im)) 1/2) (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (sinh (neg im)) (neg im) (* 1/2 re) (* 1/24 re) (* (* 1/24 re) re) (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (+ (* -1/1440 (* re re)) 1/48) re))
4.0ms
re
@-inf
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (+ (* -1/2 (* re re)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* im (+ (* (* 1/2 re) re) -1)) (+ (* (* 1/2 re) re) -1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (neg im)) (exp im)) 1/2) (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (sinh (neg im)) (neg im) (* 1/2 re) (* 1/24 re) (* (* 1/24 re) re) (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (+ (* -1/1440 (* re re)) 1/48) re))
3.0ms
im
@0
((* (* (cos re) (* 2 (sinh (neg im)))) 1/2) (* (cos re) (* 2 (sinh (neg im)))) (cos re) (+ (* -1/2 (* re re)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (* im (+ (* (* 1/2 re) re) -1)) (+ (* (* 1/2 re) re) -1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (neg (cos re)) im) (neg (cos re)) (cos re) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* (- (exp (neg im)) (exp im)) 1/2) (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (* 1/2 (cos re)) (+ (* (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (* re re)) 1/2) (- (* (* (+ (* -1/1440 (* re re)) 1/48) re) re) 1/4) (sinh (neg im)) (neg im) (* 1/2 re) (* 1/24 re) (* (* 1/24 re) re) (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (- (exp (- 0 im)) (exp im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (+ (* -1/1440 (* re re)) 1/48) re))

simplify216.0ms (1.9%)

Memory
48.9MiB live, 175.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03131434
19611277
235681239
082491192
Stop Event
iter limit
node limit
Counts
105 → 105
Calls
Call 1
Inputs
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/48 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(- (exp (neg im)) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* -1/2 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/24 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im))))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/24 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im))))
1
(+ 1 (* -1/2 (pow re 2)))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(* 1/2 (- (exp (neg im)) (exp im)))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(* -1 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
-1
(- (* 1/2 (pow re 2)) 1)
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
1/2
(+ 1/2 (* -1/4 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
-1/4
(- (* 1/48 (pow re 2)) 1/4)
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(* 1/2 re)
(* 1/24 re)
(* 1/24 (pow re 2))
(* 1/48 re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(* 1/2 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(cos re)
(* -1/2 (pow re 2))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(* -1 (* im (cos re)))
(* 1/2 (* im (pow re 2)))
(* (pow re 2) (+ (* -1 (/ im (pow re 2))) (* 1/2 im)))
(* 1/2 (pow re 2))
(* (pow re 2) (- 1/2 (/ 1 (pow re 2))))
(* -1 (cos re))
(* 1/2 (cos re))
(* -1/1440 (pow re 6))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 4))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(* -1/1440 (pow re 3))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(* -2 (* im (cos re)))
(* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))
(* im (- (* 1/2 (pow re 2)) 1))
(* im (- (* -1/6 (pow im 2)) 1))
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(- (* -1/6 (pow im 2)) 1)
(- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)
(- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1)
(* -1/6 (pow im 2))
(* (pow im 2) (- (* -1/120 (pow im 2)) 1/6))
(* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6))
(* -1/120 (pow im 2))
(* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120))
(* -2 im)
(* im (- (* -1/3 (pow im 2)) 2))
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(* -1/3 im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(* -1/5040 (pow im 7))
(* -1 (* (pow im 7) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* (pow im 7) (- (* -1 (/ (+ 1/120 (* 1/6 (/ 1 (pow im 2)))) (pow im 2))) 1/5040))
(* (pow im 7) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 4))) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* -1/5040 (pow im 6))
(* -1 (* (pow im 6) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* (pow im 6) (- (* -1 (/ (+ 1/120 (* 1/6 (/ 1 (pow im 2)))) (pow im 2))) 1/5040))
(* (pow im 6) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 4))) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(* -1/5040 (pow im 4))
(* -1 (* (pow im 4) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(- (exp (neg im)) (exp im))
(* -1/60 (pow im 3))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(* 1/2 (- (exp (* -1 im)) (exp im)))
(* -1 (* (pow im 7) (+ 1/5040 (+ (/ 1/6 (pow im 4)) (* 1/120 (/ 1 (pow im 2)))))))
(* -1 (* (pow im 7) (+ 1/5040 (+ (/ 1/6 (pow im 4)) (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6)))))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(- (exp (* -1 im)) (exp im))
Outputs
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))))))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/48 (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(- (exp (neg im)) (/ 1 (exp (neg im))))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(- (+ (exp (neg im)) (* -1/2 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/24 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im))))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 #s(literal 1/24 binary64) re) re #s(literal -1/2 binary64))) (*.f64 re re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/720 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/24 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64))) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow re 2)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* 1/24 (pow re 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))
(+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/24 (* -1/720 (pow re 2)))) 1/2)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/720 binary64) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (*.f64 re re) #s(literal 1 binary64))
(* 1/2 (- (exp (neg im)) (exp im)))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(+ (* -1/4 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* 1/48 (* (pow re 2) (- (exp (neg im)) (exp im)))))))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 #s(literal 1/48 binary64) re) re #s(literal -1/4 binary64))) (*.f64 re re) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
(+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/4 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/1440 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/48 (- (exp (neg im)) (exp im))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))))
(* -1 im)
(neg.f64 im)
(+ (* -1 im) (* 1/2 (* im (pow re 2))))
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(+ (* -1 im) (* (pow re 2) (+ (* -1/24 (* im (pow re 2))) (* 1/2 im))))
(fma.f64 (*.f64 (*.f64 im (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64))) re) re (neg.f64 im))
(+ (* -1 im) (* (pow re 2) (+ (* 1/2 im) (* (pow re 2) (+ (* -1/24 im) (* 1/720 (* im (pow re 2))))))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 im (fma.f64 (*.f64 #s(literal 1/720 binary64) re) re #s(literal -1/24 binary64))) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
-1
#s(literal -1 binary64)
(- (* 1/2 (pow re 2)) 1)
(-.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(- (* (pow re 2) (+ 1/2 (* -1/24 (pow re 2)))) 1)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/24 binary64) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(- (* (pow re 2) (+ 1/2 (* (pow re 2) (- (* 1/720 (pow re 2)) 1/24)))) 1)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 re re)) #s(literal 1/24 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/48 (pow re 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))) (*.f64 re re) #s(literal 1/2 binary64))
-1/4
#s(literal -1/4 binary64)
(- (* 1/48 (pow re 2)) 1/4)
(-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64))
(- (* (pow re 2) (+ 1/48 (* -1/1440 (pow re 2)))) 1/4)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64) (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)))
(* 1/2 re)
(*.f64 #s(literal 1/2 binary64) re)
(* 1/24 re)
(*.f64 #s(literal 1/24 binary64) re)
(* 1/24 (pow re 2))
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
(* 1/48 re)
(*.f64 #s(literal 1/48 binary64) re)
(* re (+ 1/48 (* -1/1440 (pow re 2))))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(* 1/2 (* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(* (cos re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re))
(cos re)
(cos.f64 re)
(* -1/2 (pow re 2))
(*.f64 #s(literal -1/2 binary64) (*.f64 re re))
(* (pow re 2) (- (/ 1 (pow re 2)) 1/2))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) re) re)
(* 1/2 (* (cos re) (- (exp (neg im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(* -1 (* im (cos re)))
(*.f64 (neg.f64 (cos.f64 re)) im)
(* 1/2 (* im (pow re 2)))
(*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im)
(* (pow re 2) (+ (* -1 (/ im (pow re 2))) (* 1/2 im)))
(*.f64 (*.f64 (*.f64 im (-.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) re) #s(literal -1/2 binary64))) re) re)
(* 1/2 (pow re 2))
(*.f64 (*.f64 re re) #s(literal 1/2 binary64))
(* (pow re 2) (- 1/2 (/ 1 (pow re 2))))
(*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)
(* -1 (cos re))
(neg.f64 (cos.f64 re))
(* 1/2 (cos re))
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
(* -1/1440 (pow re 6))
(*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal -1/1440 binary64))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (pow.f64 re #s(literal 6 binary64)))
(* (pow re 6) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal 6 binary64)))
(* (pow re 6) (- (+ (* 1/48 (/ 1 (pow re 2))) (* 1/2 (/ 1 (pow re 6)))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 6 binary64))) (-.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))))) (pow.f64 re #s(literal 6 binary64)))
(* -1/1440 (pow re 4))
(*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/1440 binary64))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)))
(* (pow re 4) (- (* 1/48 (/ 1 (pow re 2))) (+ 1/1440 (/ 1/4 (pow re 4)))))
(*.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))))
(* -1/1440 (pow re 3))
(*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/1440 binary64))
(* (pow re 3) (- (* 1/48 (/ 1 (pow re 2))) 1/1440))
(*.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (/.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/1440 binary64)))
(* -1 (* (pow re 3) (- 1/1440 (* 1/48 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/48 binary64) (*.f64 re re)) #s(literal -1 binary64) #s(literal -1/1440 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* im (+ (* -1 (cos re)) (* -1/6 (* (pow im 2) (cos re)))))
(*.f64 (*.f64 im (cos.f64 re)) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* -1/120 (* (pow im 2) (cos re)))))))
(*.f64 (fma.f64 (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (*.f64 im im) (neg.f64 (cos.f64 re))) im)
(* im (+ (* -1 (cos re)) (* (pow im 2) (+ (* -1/6 (cos re)) (* (pow im 2) (+ (* -1/120 (cos re)) (* -1/5040 (* (pow im 2) (cos re)))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/5040 binary64) (*.f64 im im) #s(literal -1/120 binary64))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/6 binary64) #s(literal -1 binary64)))) im)
(* -2 (* im (cos re)))
(*.f64 (*.f64 #s(literal -2 binary64) (cos.f64 re)) im)
(* im (+ (* -2 (cos re)) (* -1/3 (* (pow im 2) (cos re)))))
(*.f64 (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/3 binary64) im) im #s(literal -2 binary64))) im)
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* -1/60 (* (pow im 2) (cos re)))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal -1/3 binary64))) (*.f64 (*.f64 #s(literal -2 binary64) (cos.f64 re)) im))
(* im (+ (* -2 (cos re)) (* (pow im 2) (+ (* -1/3 (cos re)) (* (pow im 2) (+ (* -1/60 (cos re)) (* -1/2520 (* (pow im 2) (cos re)))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (cos.f64 re) (fma.f64 #s(literal -1/2520 binary64) (*.f64 im im) #s(literal -1/60 binary64))) (*.f64 (cos.f64 re) (fma.f64 (*.f64 #s(literal -1/3 binary64) im) im #s(literal -2 binary64)))) im)
(* im (- (* 1/2 (pow re 2)) 1))
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(* im (- (* -1/6 (pow im 2)) 1))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
(- (* -1/6 (pow im 2)) 1)
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64))
(- (* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6)) 1)
(-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))
(* -1/6 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -1/6 binary64))
(* (pow im 2) (- (* -1/120 (pow im 2)) 1/6))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im)
(* (pow im 2) (- (* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120)) 1/6))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im))
(* -1/120 (pow im 2))
(*.f64 #s(literal -1/120 binary64) (*.f64 im im))
(* (pow im 2) (- (* -1/5040 (pow im 2)) 1/120))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im)
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* im (- (* -1/3 (pow im 2)) 2))
(*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* (pow im 2) (- (* -1/2520 (pow im 2)) 1/60)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)
(* -1/3 im)
(*.f64 #s(literal -1/3 binary64) im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(* -1/5040 (pow im 7))
(*.f64 (pow.f64 im #s(literal 7 binary64)) #s(literal -1/5040 binary64))
(* -1 (* (pow im 7) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/5040 binary64)) (pow.f64 im #s(literal 7 binary64)))
(* (pow im 7) (- (* -1 (/ (+ 1/120 (* 1/6 (/ 1 (pow im 2)))) (pow im 2))) 1/5040))
(*.f64 (+.f64 (/.f64 #s(literal -1/120 binary64) (*.f64 im im)) (-.f64 (/.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/5040 binary64))) (pow.f64 im #s(literal 7 binary64)))
(* (pow im 7) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 4))) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(*.f64 (-.f64 (/.f64 (+.f64 (/.f64 (/.f64 #s(literal -1 binary64) im) im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/5040 binary64))) (pow.f64 im #s(literal 7 binary64)))
(* -1/5040 (pow im 6))
(*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal -1/5040 binary64))
(* -1 (* (pow im 6) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/5040 binary64)) (pow.f64 im #s(literal 6 binary64)))
(* (pow im 6) (- (* -1 (/ (+ 1/120 (* 1/6 (/ 1 (pow im 2)))) (pow im 2))) 1/5040))
(*.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 (/.f64 #s(literal -1/120 binary64) (*.f64 im im)) (-.f64 (/.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/5040 binary64))))
(* (pow im 6) (- (* -1 (/ (+ 1/6 (/ 1 (pow im 2))) (pow im 4))) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(*.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (/.f64 (+.f64 (/.f64 (/.f64 #s(literal -1 binary64) im) im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 im im)) #s(literal 1/5040 binary64))))
(* -1/5040 (pow im 4))
(*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/5040 binary64))
(* -1 (* (pow im 4) (+ 1/5040 (* 1/120 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/5040 binary64)) (pow.f64 im #s(literal 4 binary64)))
(- (exp (neg im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* -1/60 (pow im 3))
(*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/60 binary64))
(* -1 (* (pow im 3) (+ 1/60 (* 1/3 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal -1/60 binary64)) (pow.f64 im #s(literal 3 binary64)))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(* (cos re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (cos.f64 re))
(* 1/2 (* (cos re) (- (exp (* -1 im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 #s(literal 1/2 binary64) (cos.f64 re)))
(* 1/2 (- (exp (* -1 im)) (exp im)))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(* -1 (* (pow im 7) (+ 1/5040 (+ (/ 1/6 (pow im 4)) (* 1/120 (/ 1 (pow im 2)))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 4 binary64))) (+.f64 (/.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/5040 binary64))) (pow.f64 im #s(literal 7 binary64)))
(* -1 (* (pow im 7) (+ 1/5040 (+ (/ 1/6 (pow im 4)) (+ (* 1/120 (/ 1 (pow im 2))) (/ 1 (pow im 6)))))))
(*.f64 (neg.f64 (pow.f64 im #s(literal 7 binary64))) (+.f64 (+.f64 #s(literal 1/5040 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 6 binary64)))) (/.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im)))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))
(- (exp (* -1 im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

rewrite271.0ms (2.4%)

Memory
-57.2MiB live, 267.6MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
076476
0118471
1415440
22640440
08503440
Stop Event
iter limit
node limit
iter limit
Counts
30 → 305
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
#s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))))
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)
(-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
(*.f64 #s(literal 1/2 binary64) re)
(*.f64 #s(literal 1/24 binary64) re)
(*.f64 (*.f64 #s(literal 1/24 binary64) re) re)
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im)
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (sinh.f64 (neg.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sinh.f64 (neg.f64 im)))
(*.f64 (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (sinh.f64 (neg.f64 im)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))) #s(literal -2 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (sinh.f64 im)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (sinh.f64 (neg.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(fma.f64 (*.f64 #s(literal 2 binary64) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(fma.f64 (*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(literal 1/2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(fma.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(fma.f64 #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sinh.f64 (neg.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(+.f64 (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))) #s(literal 1 binary64))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (neg.f64 re)) (neg.f64 re) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) (*.f64 re #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) re #s(literal 1 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))
(fma.f64 re (*.f64 #s(literal -1/2 binary64) re) #s(literal 1 binary64))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) re)) re))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 re re)) #s(literal -1/2 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) re))
(+.f64 (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64))))) (pow.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)) im)))
#s(approx (* (neg (cos re)) im) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)) im))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)) im)
(*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)) im)) (neg.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64)) im)) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64)))) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) (neg.f64 im))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 (neg.f64 im) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) (neg.f64 im))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)) im) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64)) im) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))))
(/.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))
(/.f64 (*.f64 im (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) (neg.f64 im)))
(/.f64 (fma.f64 (pow.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) (neg.f64 im)))))
(fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))
(fma.f64 (*.f64 im #s(literal 1/2 binary64)) (*.f64 re re) (neg.f64 im))
(fma.f64 (*.f64 im re) (*.f64 #s(literal 1/2 binary64) re) (neg.f64 im))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im (neg.f64 im))
(fma.f64 #s(literal -1 binary64) im (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 re im) (neg.f64 im))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im))
(fma.f64 im (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) (neg.f64 im))
(fma.f64 im #s(literal -1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im))
(fma.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) re) im) (neg.f64 im))
(-.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) (*.f64 (neg.f64 im) #s(literal -1 binary64)))
(-.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) im)
(+.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im) (neg.f64 im))
(+.f64 (neg.f64 im) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) re))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))) #s(literal -1 binary64))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64))) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64))) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal -1 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)))))
(fma.f64 (fabs.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 re))) re #s(literal -1 binary64))
(fma.f64 (fabs.f64 (*.f64 #s(literal 1/2 binary64) re)) re #s(literal -1 binary64))
(fma.f64 (fabs.f64 (*.f64 #s(literal -1/2 binary64) (neg.f64 re))) re #s(literal -1 binary64))
(fma.f64 (fabs.f64 (*.f64 #s(literal -1/2 binary64) re)) (fabs.f64 (*.f64 re #s(literal 1 binary64))) #s(literal -1 binary64))
(fma.f64 (fabs.f64 (*.f64 #s(literal -1/2 binary64) re)) re #s(literal -1 binary64))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 re)) (neg.f64 re) #s(literal -1 binary64))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal 1 binary64) #s(literal -1 binary64))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64))
(fma.f64 #s(literal 1/2 binary64) (fabs.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64))) #s(literal -1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 re re) #s(literal -1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))
(fma.f64 (*.f64 re re) #s(literal 1/2 binary64) #s(literal -1 binary64))
(fma.f64 re (fabs.f64 (*.f64 #s(literal 1/2 binary64) re)) #s(literal -1 binary64))
(fma.f64 re (fabs.f64 (*.f64 (neg.f64 re) #s(literal -1/2 binary64))) #s(literal -1 binary64))
(fma.f64 re (fabs.f64 (*.f64 #s(literal -1/2 binary64) re)) #s(literal -1 binary64))
(fma.f64 re (*.f64 #s(literal 1/2 binary64) re) #s(literal -1 binary64))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))) (pow.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) re)) re))
(-.f64 #s(literal -1 binary64) (*.f64 (neg.f64 re) (*.f64 #s(literal 1/2 binary64) re)))
(-.f64 #s(literal -1 binary64) (*.f64 (*.f64 re re) #s(literal -1/2 binary64)))
(+.f64 (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))) (/.f64 #s(literal -1 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))))))
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) re) re))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) (neg.f64 im)))
(*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im)
(*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) (neg.f64 im))
(*.f64 im (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))))
(neg.f64 (*.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))) im))
(neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64))))
#s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)
(*.f64 im (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) im)) (neg.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) im)) (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)))) (neg.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)))) (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) im) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) im) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(/.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64))) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))) (pow.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))) (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(literal 1 binary64))) (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64))) (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))))
(-.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))) (pow.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64)))) (pow.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im) #s(literal 1 binary64))) #s(literal -1 binary64)))
(-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64))
(*.f64 #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re))) (*.f64 (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re))) #s(literal 1/8 binary64))) (*.f64 (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re))) (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re)))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re)))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re)) re))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))) (*.f64 re re)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))))
(+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re)))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) (*.f64 #s(literal 1/2 binary64) re)))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) re) re))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64)))) (neg.f64 (neg.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))) (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)) #s(literal 1/16 binary64))) (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64))) #s(literal 1/64 binary64))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64))) (neg.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64))) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) #s(literal 1/16 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) #s(literal 1/64 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))) (/.f64 #s(literal 1/16 binary64) (fma.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re #s(literal 1/4 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 3 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))) (/.f64 #s(literal 1/64 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/16 binary64)))))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64))
(*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 im) #s(literal -2 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) #s(literal 1/2 binary64))) (neg.f64 (fma.f64 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))) (neg.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (exp.f64 im))) #s(literal 4 binary64))
(/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))) #s(literal 1/2 binary64)) (fma.f64 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (fma.f64 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))
(/.f64 (fma.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 4 binary64))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(sinh.f64 (neg.f64 im))
(neg.f64 (sinh.f64 im))
(-.f64 (*.f64 (sinh.f64 (/.f64 #s(literal 0 binary64) im)) (cosh.f64 im)) (*.f64 (cosh.f64 (/.f64 #s(literal 0 binary64) im)) (sinh.f64 im)))
(-.f64 (*.f64 (sinh.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im))) (cosh.f64 im)) (*.f64 (cosh.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im))) (sinh.f64 im)))
(-.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (exp.f64 im) #s(literal 2 binary64)))
(-.f64 (*.f64 #s(literal 0 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(+.f64 (/.f64 (sinh.f64 im) #s(literal -2 binary64)) (/.f64 (sinh.f64 im) #s(literal -2 binary64)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 im #s(literal -1 binary64))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (*.f64 im im)))) im)
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)))
(/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (neg.f64 (neg.f64 (*.f64 im im))))
(/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (*.f64 im im))
(/.f64 (neg.f64 (neg.f64 (*.f64 im im))) (neg.f64 im))
(/.f64 (neg.f64 (*.f64 im im)) im)
(/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 im (neg.f64 im)))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (neg.f64 im) im))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 (*.f64 im im)))
(/.f64 (*.f64 im im) (neg.f64 im))
(neg.f64 im)
(-.f64 (log.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (log.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (cosh.f64 im) (sinh.f64 im))))))
(-.f64 (log.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (neg.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (log.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (neg.f64 (exp.f64 im))))
(-.f64 (/.f64 #s(literal 0 binary64) im) im)
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) im)
(-.f64 #s(literal 0 binary64) im)
(log.f64 (exp.f64 (neg.f64 im)))
(*.f64 #s(literal 1/2 binary64) re)
(*.f64 re #s(literal 1/2 binary64))
(*.f64 #s(literal 1/24 binary64) re)
(*.f64 re #s(literal 1/24 binary64))
(*.f64 (fabs.f64 (*.f64 #s(literal 1/24 binary64) (neg.f64 re))) re)
(*.f64 (fabs.f64 (*.f64 #s(literal 1/24 binary64) re)) re)
(*.f64 (*.f64 #s(literal 1/24 binary64) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 #s(literal 1/24 binary64) re) re)
(*.f64 #s(literal 1/24 binary64) (*.f64 re re))
(*.f64 (*.f64 re re) #s(literal 1/24 binary64))
(*.f64 re (fabs.f64 (*.f64 #s(literal 1/24 binary64) re)))
(*.f64 re (*.f64 #s(literal 1/24 binary64) re))
(sqrt.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/576 binary64)))
(fabs.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re)))
(fabs.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im)
(*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64))
(*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im))
(*.f64 (*.f64 im im) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) #s(literal 1 binary64)))
(*.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)))
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64))))
(*.f64 im (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 im im))) (neg.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im #s(literal 1/6 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 3 binary64)) #s(literal 1/216 binary64)) (*.f64 im im))) (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/36 binary64)))))
(/.f64 (neg.f64 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1/36 binary64)))) (neg.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im #s(literal 1/6 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 3 binary64)) #s(literal 1/216 binary64)))) (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/36 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 im im)) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im #s(literal 1/6 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 3 binary64)) #s(literal 1/216 binary64)) (*.f64 im im)) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/36 binary64))))
(/.f64 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im #s(literal 1/6 binary64)))
(/.f64 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 3 binary64)) #s(literal 1/216 binary64))) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/36 binary64))))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im)
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im))
(*.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)))
(*.f64 im (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/25401600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/14400 binary64)) (*.f64 im im))) (neg.f64 (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/128024064000 binary64) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/1728000 binary64)) (*.f64 im im))) (neg.f64 (fma.f64 #s(literal 1/25401600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/604800 binary64) #s(literal 1/14400 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/25401600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/14400 binary64)) (*.f64 im im)) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/128024064000 binary64) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/1728000 binary64)) (*.f64 im im)) (fma.f64 #s(literal 1/25401600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/604800 binary64) #s(literal 1/14400 binary64))))
#s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 im (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/9 binary64)) im)) (neg.f64 (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/216000 binary64) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/27 binary64)) im)) (neg.f64 (fma.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64)))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (*.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/9 binary64)))) (neg.f64 (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (*.f64 #s(literal -1/216000 binary64) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/27 binary64)))) (neg.f64 (fma.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/9 binary64)) im) (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/216000 binary64) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/27 binary64)) im) (fma.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64))))
(/.f64 (*.f64 im (-.f64 (*.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/9 binary64))) (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)))
(/.f64 (*.f64 im (-.f64 (*.f64 #s(literal -1/216000 binary64) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/27 binary64))) (fma.f64 #s(literal 1/3600 binary64) (pow.f64 im #s(literal 4 binary64)) (fma.f64 (*.f64 im im) #s(literal -1/180 binary64) #s(literal 1/9 binary64))))
(*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re)
(*.f64 re (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2073600 binary64)) #s(literal 1/2304 binary64)) re)) (neg.f64 (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) re)) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2073600 binary64) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64))))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2073600 binary64)) #s(literal 1/2304 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64))))
(/.f64 (neg.f64 (*.f64 re (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)))) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2073600 binary64) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2073600 binary64)) #s(literal 1/2304 binary64)) re) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64)) re) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2073600 binary64) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64)))))
(/.f64 (*.f64 re (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2073600 binary64)) #s(literal 1/2304 binary64))) (-.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) #s(literal 1/48 binary64)))
(/.f64 (*.f64 re (fma.f64 #s(literal -1/2985984000 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/110592 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/2073600 binary64) (-.f64 #s(literal 1/2304 binary64) (*.f64 (*.f64 re re) #s(literal -1/69120 binary64)))))
(fma.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re (*.f64 #s(literal 1/48 binary64) re))
(fma.f64 #s(literal 1/48 binary64) re (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re))
(fma.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) (*.f64 re #s(literal 1/48 binary64)))
(fma.f64 re #s(literal 1/48 binary64) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))))
(+.f64 (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re) (*.f64 #s(literal 1/48 binary64) re))
(+.f64 (*.f64 #s(literal 1/48 binary64) re) (*.f64 (*.f64 #s(literal -1/1440 binary64) (*.f64 re re)) re))
(+.f64 (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))) (*.f64 re #s(literal 1/48 binary64)))
(+.f64 (*.f64 re #s(literal 1/48 binary64)) (*.f64 re (*.f64 #s(literal -1/1440 binary64) (*.f64 re re))))

eval81.0ms (0.7%)

Memory
48.8MiB live, 160.6MiB allocated
Compiler

Compiled 17 093 to 2 162 computations (87.4% saved)

prune129.0ms (1.2%)

Memory
-4.7MiB live, 115.5MiB allocated
Pruning

33 alts after pruning (26 fresh and 7 done)

PrunedKeptTotal
New39213405
Fresh41317
Picked235
Done044
Total39833431
Accuracy
100.0%
Counts
431 → 33
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))
66.9%
(*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
63.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
60.4%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
56.3%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
60.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
62.5%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
54.7%
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
12.9%
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
24.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (/.f64 (*.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) im) (*.f64 im im)) (cos.f64 re)) im))
53.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
36.4%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
35.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
51.6%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (*.f64 (cos.f64 re) (cos.f64 (PI.f64))) (*.f64 (sin.f64 re) (sin.f64 (PI.f64)))) im))
51.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) im))
51.9%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
38.4%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
40.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
40.5%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
68.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
60.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
64.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
60.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
64.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
60.7%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
54.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
36.3%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) #s(approx (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (*.f64 (pow.f64 im #s(literal 7 binary64)) #s(literal -1/5040 binary64)))))
36.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
14.1%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
36.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
33.0%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
9.8%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
32.3%
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
Compiler

Compiled 2 720 to 1 149 computations (57.8% saved)

regimes192.0ms (1.7%)

Memory
23.6MiB live, 195.0MiB allocated
Counts
50 → 1
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) #s(approx (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (*.f64 (pow.f64 im #s(literal 7 binary64)) #s(literal -1/5040 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
(*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 im))))
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (/.f64 (*.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) im) (*.f64 im im)) (cos.f64 re)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (*.f64 (cos.f64 re) (cos.f64 (PI.f64))) (*.f64 (sin.f64 re) (sin.f64 (PI.f64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (fma.f64 (sin.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (exp.f64 im) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))))
Outputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
Calls

6 calls:

65.0ms
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
56.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
31.0ms
im
13.0ms
re
12.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
99.9%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
99.9%1(cos.f64 re)
99.9%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
99.9%1(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
99.9%1re
99.9%1im
Compiler

Compiled 27 to 30 computations (-11.1% saved)

regimes75.0ms (0.7%)

Memory
10.8MiB live, 195.2MiB allocated
Counts
43 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) #s(approx (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (*.f64 (pow.f64 im #s(literal 7 binary64)) #s(literal -1/5040 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
(*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (fma.f64 (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 (*.f64 (neg.f64 (*.f64 im im)) (cos.f64 re)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (*.f64 #s(approx (cos re) (fma.f64 #s(literal -1/2 binary64) (*.f64 re re) #s(literal 1 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (cos.f64 re) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 im))))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
(*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))
Calls

6 calls:

17.0ms
im
14.0ms
(cos.f64 re)
11.0ms
re
11.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
10.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
93.3%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
96.2%2(cos.f64 re)
96.2%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
99.9%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
96.2%2re
98.0%3im
Compiler

Compiled 27 to 30 computations (-11.1% saved)

regimes21.0ms (0.2%)

Memory
-46.8MiB live, 29.4MiB allocated
Counts
34 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) #s(approx (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (*.f64 (pow.f64 im #s(literal 7 binary64)) #s(literal -1/5040 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
Calls

1 calls:

7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
99.2%3(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 12 to 11 computations (8.3% saved)

regimes69.0ms (0.6%)

Memory
52.9MiB live, 114.2MiB allocated
Counts
33 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) #s(approx (* (- (* (- (* (* (- (* -1/5040 (* im im)) 1/120) im) im) 1/6) (* im im)) 1) im) (*.f64 (pow.f64 im #s(literal 7 binary64)) #s(literal -1/5040 binary64)))))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
Calls

6 calls:

28.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
9.0ms
re
9.0ms
im
8.0ms
(cos.f64 re)
7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
68.8%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
80.1%2(cos.f64 re)
80.1%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
73.1%3re
70.7%2im
80.2%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 27 to 30 computations (-11.1% saved)

regimes27.0ms (0.2%)

Memory
10.8MiB live, 69.9MiB allocated
Counts
31 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
Calls

3 calls:

9.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
8.0ms
(cos.f64 re)
8.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
75.3%2(cos.f64 re)
75.3%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
75.4%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 18 to 19 computations (-5.6% saved)

regimes10.0ms (0.1%)

Memory
-36.4MiB live, 25.1MiB allocated
Counts
30 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
Calls

1 calls:

8.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
75.4%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 12 to 11 computations (8.3% saved)

regimes64.0ms (0.6%)

Memory
-26.1MiB live, 55.2MiB allocated
Counts
29 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 #s(approx (* (+ (* -1/1440 (* re re)) 1/48) re) (*.f64 #s(literal 1/48 binary64) re)) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/4 binary64)) re) re))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
Calls

3 calls:

49.0ms
(cos.f64 re)
7.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
6.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
75.0%2(cos.f64 re)
75.0%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
75.0%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 18 to 19 computations (-5.6% saved)

regimes19.0ms (0.2%)

Memory
46.5MiB live, 46.5MiB allocated
Counts
24 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
Calls

3 calls:

6.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
6.0ms
(cos.f64 re)
5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
74.6%2(cos.f64 re)
74.6%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
74.6%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 18 to 19 computations (-5.6% saved)

regimes48.0ms (0.4%)

Memory
-9.2MiB live, 54.9MiB allocated
Counts
22 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 im im)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) (*.f64 im im)) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
Calls

3 calls:

36.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
6.0ms
(cos.f64 re)
5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
73.5%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
73.5%2(cos.f64 re)
73.5%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 18 to 19 computations (-5.6% saved)

regimes61.0ms (0.5%)

Memory
-18.0MiB live, 106.5MiB allocated
Counts
19 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (cos re)) #s(literal 1/2 binary64)) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 im) im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 re re) #s(literal 1/24 binary64)) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
Outputs
(*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
Calls

6 calls:

33.0ms
im
7.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
5.0ms
re
5.0ms
(cos.f64 re)
4.0ms
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
Results
AccuracySegmentsBranch
60.7%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
66.6%4im
63.9%3re
70.2%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
70.3%2(cos.f64 re)
70.3%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 27 to 30 computations (-11.1% saved)

regimes13.0ms (0.1%)

Memory
27.2MiB live, 27.2MiB allocated
Counts
15 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re re))) re) re)))))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im))
Calls

3 calls:

4.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
4.0ms
(cos.f64 re)
3.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
69.4%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
69.4%2(cos.f64 re)
69.4%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 18 to 19 computations (-5.6% saved)

regimes43.0ms (0.4%)

Memory
-45.7MiB live, 23.3MiB allocated
Counts
13 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (-.f64 #s(approx (* (* (- (* -1/5040 (* im im)) 1/120) im) im) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 #s(approx (cos re) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) re) re) #s(literal 1/2 binary64)) (*.f64 re re) #s(literal 1 binary64)))) im))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im)))
Calls

3 calls:

35.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
4.0ms
(cos.f64 re)
3.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
68.0%2(cos.f64 re)
68.0%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
68.0%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Compiler

Compiled 18 to 19 computations (-5.6% saved)

regimes16.0ms (0.1%)

Memory
41.5MiB live, 41.5MiB allocated
Counts
8 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
Calls

6 calls:

3.0ms
im
3.0ms
re
3.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
3.0ms
(cos.f64 re)
2.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
54.1%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
57.0%2re
58.3%3im
61.4%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
63.7%3(cos.f64 re)
63.7%3(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 27 to 30 computations (-11.1% saved)

regimes21.0ms (0.2%)

Memory
-46.5MiB live, 15.5MiB allocated
Counts
7 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 1 binary64)) im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (neg.f64 im) im)) im))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))
Calls

2 calls:

18.0ms
(cos.f64 re)
3.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
61.4%2(cos.f64 re)
61.4%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes20.0ms (0.2%)

Memory
45.7MiB live, 45.7MiB allocated
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
Calls

6 calls:

4.0ms
re
4.0ms
im
3.0ms
(cos.f64 re)
3.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
3.0ms
(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
Results
AccuracySegmentsBranch
39.0%2(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
39.0%2im
36.8%1re
39.6%2(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
39.6%2(cos.f64 re)
39.6%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 27 to 30 computations (-11.1% saved)

regimes20.0ms (0.2%)

Memory
-46.9MiB live, 15.8MiB allocated
Counts
3 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
Calls

2 calls:

17.0ms
(cos.f64 re)
3.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Results
AccuracySegmentsBranch
39.6%2(cos.f64 re)
39.6%2(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes12.0ms (0.1%)

Memory
29.2MiB live, 29.2MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
Outputs
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
Calls

6 calls:

2.0ms
im
2.0ms
re
2.0ms
(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
2.0ms
(cos.f64 re)
2.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
32.3%1re
32.3%1im
32.3%1(-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))
32.3%1(*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im)))
32.3%1(cos.f64 re)
32.3%1(*.f64 #s(literal 1/2 binary64) (cos.f64 re))
Compiler

Compiled 27 to 30 computations (-11.1% saved)

bsearch1.0ms (0%)

Memory
2.7MiB live, 2.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.3948923418906494e-11
+inf
0.0ms
-4.622951449428925e-8
-3.323713160829677e-11
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
2.8MiB live, 2.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.3948923418906494e-11
+inf
0.0ms
-4.622951449428925e-8
-3.323713160829677e-11
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3.3948923418906494e-11
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3.3948923418906494e-11
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3.3948923418906494e-11
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3.3948923418906494e-11
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.00840009885792864
0.017612963183531647
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.00840009885792864
0.017612963183531647
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.00840009885792864
0.017612963183531647
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
3.3948923418906494e-11
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.00840009885792864
0.017612963183531647
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch1.0ms (0%)

Memory
2.0MiB live, 2.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.4978453468544543
0.4993091314694339
0.0ms
-0.00840009885792864
0.017612963183531647
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.00840009885792864
0.017612963183531647
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.00840009885792864
0.017612963183531647
Compiler

Compiled 15 to 16 computations (-6.7% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.00840009885792864
0.017612963183531647
Compiler

Compiled 15 to 16 computations (-6.7% saved)

simplify92.0ms (0.8%)

Memory
-14.1MiB live, 114.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01781251
12681251
24231251
37921251
420781211
576191211
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal -3022314549036573/75557863725914323419136 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 7737125245533627/154742504910672534362390528 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im)) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal -3022314549036573/75557863725914323419136 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 7737125245533627/154742504910672534362390528 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im)))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im)))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im)))) (if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2242792614430507/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im)))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im)))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))
Outputs
(*.f64 (*.f64 (cos.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal -3022314549036573/75557863725914323419136 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 7737125245533627/154742504910672534362390528 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im)) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -3022314549036573/75557863725914323419136 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 7737125245533627/154742504910672534362390528 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im)) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (cos re) (fma.f64 (*.f64 re re) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal -3022314549036573/75557863725914323419136 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 7737125245533627/154742504910672534362390528 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -3022314549036573/75557863725914323419136 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 7737125245533627/154742504910672534362390528 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 (neg.f64 (cos.f64 re)) im)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (sinh.f64 (neg.f64 im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) im) im) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/1440 binary64) (*.f64 re re) #s(literal 1/48 binary64)) re) re) #s(literal 1/4 binary64)) (*.f64 re re) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) #s(approx (+ (* (* re re) -1/4) 1/2) (*.f64 (*.f64 re re) #s(literal -1/4 binary64)))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)) im) im) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (* 1/2 (cos re)) (fma.f64 (*.f64 re re) #s(literal -1/4 binary64) #s(literal 1/2 binary64))) #s(approx (- (exp (- 0 im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (-.f64 #s(literal 0 binary64) im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im)))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 0 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (/.f64 #s(approx (* (neg (* im im)) (cos re)) (*.f64 (*.f64 im im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) re #s(literal -1 binary64)))) im)))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im)))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (sinh (neg im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal 1/6 binary64)) im) im) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im)))) (if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal 2242792614430507/4503599627370496 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) (*.f64 #s(approx (neg (cos re)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/24 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re) re) #s(literal 1 binary64))) im)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im)))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im)))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (- (exp (neg im)) (exp im)) 1/2) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal 1 binary64)) im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (fma.f64 (*.f64 im (*.f64 #s(literal 1/2 binary64) re)) re (neg.f64 im)))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im))))
(if (<=.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 re)) #s(literal -5764607523034235/1152921504606846976 binary64)) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (*.f64 im #s(approx (+ (* (* 1/2 re) re) -1) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)))))) #s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im))))
#s(approx (* (* 1/2 (cos re)) (- (exp (- 0 im)) (exp im))) #s(approx (* (neg (cos re)) im) (neg.f64 im)))

soundness2.1s (18.4%)

Memory
72.6MiB live, 2 197.1MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03161407
110421202
240431143
081701074
046237
073226
1245200
01472200
01130
01827
16427
242025
0500125
0126381
1387349
21286341
35237320
08363297
0197653
1581618
21997591
35468581
08062550
076476
0118471
1415440
22640440
08503440
03131434
19611277
235681239
082491192
Stop Event
fuel
iter limit
node 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
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 2 512 to 1 198 computations (52.3% saved)

preprocess213.0ms (1.9%)

Memory
7.1MiB live, 311.1MiB allocated
Remove

(negabs im)

(abs re)

Compiler

Compiled 2 716 to 482 computations (82.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...