math.cos on complex, imaginary part

Time bar (total: 10.0s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.5MiB live, 0.5MiB 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 13 to 12 computations (7.7% saved)

sample2.3s (22.7%)

Memory
-103.9MiB live, 2 297.9MiB allocated
Samples
581.0ms2 788×1valid
510.0ms940×2valid
488.0ms4 528×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.3s
ival-exp: 645.0ms (49.7% of total)
ival-sin: 241.0ms (18.6% of total)
ival-mult: 201.0ms (15.5% of total)
ival-sub: 78.0ms (6% of total)
adjust: 75.0ms (5.8% of total)
ival-neg: 42.0ms (3.2% of total)
ival-true: 7.0ms (0.5% of total)
exact: 6.0ms (0.5% of total)
ival-assert: 4.0ms (0.3% of total)
Bogosity

explain275.0ms (2.7%)

Memory
-13.4MiB live, 259.2MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1300-1(-6.458790276851262e-23 -0.006149645670916006)(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
00-0-(exp.f64 im)
00-0-(neg.f64 im)
00-0-(exp.f64 (neg.f64 im))
00-0-(sin.f64 re)
00-0-im
00-0-(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
00-0-(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
00-0-re
00-0-#s(literal 1/2 binary64)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))cancellation1291
Confusion
Predicted +Predicted -
+1011
-28126
Precision
0.7829457364341085
Recall
0.9901960784313726
Confusion?
Predicted +Predicted MaybePredicted -
+10110
-280126
Precision?
0.7846153846153846
Recall?
1.0
Freqs
test
numberfreq
0127
1129
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
60.0ms152×1valid
52.0ms92×2valid
25.0ms268×0valid
Compiler

Compiled 81 to 34 computations (58% saved)

Precisions
Click to see histograms. Total time spent on operations: 115.0ms
ival-exp: 64.0ms (55.7% of total)
ival-sin: 19.0ms (16.5% of total)
adjust: 16.0ms (13.9% of total)
ival-mult: 9.0ms (7.8% of total)
ival-sub: 4.0ms (3.5% of total)
ival-neg: 2.0ms (1.7% of total)
ival-true: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess129.0ms (1.3%)

Memory
43.5MiB live, 154.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02561
17057
217755
372155
4399333
01011
01711
13011
25811
317911
476510
5797010
0803810
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))
Symmetry

(negabs im)

(negabs re)

Compiler

Compiled 11 to 10 computations (9.1% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 11 to 10 computations (9.1% saved)

simplify134.0ms (1.3%)

Memory
-10.8MiB live, 106.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

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

Useful iterations: 4 (0.0ms)

IterNodesCost
01033
01733
13033
25833
317933
476531
5797031
0803831
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sin.f64 re)
re
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)

localize75.0ms (0.8%)

Memory
-46.0MiB live, 96.7MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(exp.f64 (neg.f64 im))
accuracy0.0
(exp.f64 im)
accuracy0.06640625
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
accuracy29.108658281184553
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Samples
29.0ms46×2valid
15.0ms76×1valid
13.0ms134×0valid
Compiler

Compiled 35 to 12 computations (65.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 46.0ms
ival-exp: 29.0ms (63.1% of total)
ival-sin: 6.0ms (13.1% of total)
ival-mult: 4.0ms (8.7% of total)
adjust: 3.0ms (6.5% of total)
ival-sub: 2.0ms (4.4% of total)
ival-neg: 1.0ms (2.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series7.0ms (0.1%)

Memory
8.0MiB live, 8.0MiB allocated
Counts
6 → 36
Calls
Call 1
Inputs
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(sin.f64 re)
(exp.f64 im)
(exp.f64 (neg.f64 im))
Outputs
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(* 1/2 re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(* 1/2 (sin re))
(sin 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 (sin re)))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
1
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(- (exp (neg im)) (exp im))
(exp im)
(exp (neg im))
(- (exp (* -1 im)) (exp im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(exp (* -1 im))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@0
((- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (sin re) (exp im) (exp (neg im)))
1.0ms
re
@0
((- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (sin re) (exp im) (exp (neg im)))
1.0ms
re
@inf
((- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (sin re) (exp im) (exp (neg im)))
1.0ms
im
@inf
((- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (sin re) (exp im) (exp (neg im)))
1.0ms
im
@-inf
((- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (sin re) (exp im) (exp (neg im)))

simplify144.0ms (1.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0146434
1474401
21567388
34246378
08228351
Stop Event
iter limit
node limit
Counts
36 → 35
Calls
Call 1
Inputs
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(* 1/2 re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(* 1/2 (sin re))
(sin 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 (sin re)))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
1
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(+ 1 (* -1 im))
(+ 1 (* im (- (* 1/2 im) 1)))
(+ 1 (* im (- (* im (+ 1/2 (* -1/6 im))) 1)))
(- (exp (neg im)) (exp im))
(exp im)
(exp (neg im))
(- (exp (* -1 im)) (exp im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(exp (* -1 im))
Outputs
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* re (+ (* -1/12 (* (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)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) (fma.f64 #s(literal 1/240 binary64) (*.f64 re re) #s(literal -1/12 binary64)) #s(literal 1/2 binary64))) re)
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/10080 binary64) (fma.f64 #s(literal 1/240 binary64) (*.f64 re re) #s(literal -1/12 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(* 1/2 re)
(*.f64 #s(literal 1/2 binary64) re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/10080 binary64) (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64))) (*.f64 #s(literal 1/2 binary64) re))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/6 binary64) re)
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/6 binary64)) re)
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/5040 binary64) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/6 binary64))) re)
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* 1/2 (sin re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
(sin re)
(sin.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 (sin re)))
(*.f64 (neg.f64 (sin.f64 re)) im)
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(*.f64 (*.f64 (sin.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 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal -1/120 binary64)) #s(literal -1/6 binary64))) (*.f64 (neg.f64 (sin.f64 re)) im))
1
#s(literal 1 binary64)
(+ 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 (* -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))
(- (exp (neg im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp im)
(exp.f64 im)
(exp (neg im))
(exp.f64 (neg.f64 im))
(- (exp (* -1 im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(exp (* -1 im))
(exp.f64 (neg.f64 im))

rewrite148.0ms (1.5%)

Memory
-16.2MiB live, 176.5MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01028
01728
14328
226826
3324326
0918726
Stop Event
iter limit
node limit
iter limit
Counts
6 → 351
Calls
Call 1
Inputs
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(sin.f64 re)
(exp.f64 im)
(exp.f64 (neg.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 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im)))) (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im))) #s(literal 1 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 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (-.f64 (pow.f64 (exp.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 im #s(literal -2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (+.f64 (pow.f64 (fma.f64 (exp.f64 im) (exp.f64 im) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.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 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) #s(literal 1 binary64))) (pow.f64 (exp.f64 im) #s(literal -4 binary64))))
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (tanh.f64 (neg.f64 im)))
(*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64)))) (neg.f64 (+.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 2 binary64)))) (neg.f64 (+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (pow.f64 (+.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 2 binary64)))) (neg.f64 (+.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (pow.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im))))))
(/.f64 (neg.f64 (-.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 6 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))))) (neg.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64)) (+.f64 (pow.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))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (+.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (+.f64 (pow.f64 (+.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im)))))))
(/.f64 (neg.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)))) (neg.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))))))
(/.f64 (neg.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))))) (neg.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64))))) (neg.f64 (pow.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (exp.f64 (neg.f64 im))) (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal 1 binary64)))) (neg.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (*.f64 (fma.f64 (sinh.f64 im) (exp.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)))))) (neg.f64 (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (+.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 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) #s(literal 1 binary64)))) (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))))) (neg.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 im))) (*.f64 (neg.f64 (exp.f64 im)) #s(literal 1 binary64)))) (neg.f64 (*.f64 (neg.f64 (exp.f64 im)) (exp.f64 (neg.f64 im)))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (*.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)))))) (neg.f64 (*.f64 (neg.f64 (exp.f64 im)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (*.f64 (exp.f64 im) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))))) (neg.f64 (*.f64 (exp.f64 im) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))))
(/.f64 (-.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (fma.f64 #s(literal 2 binary64) (sinh.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (fma.f64 #s(literal 2 binary64) (sinh.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 #s(literal 2 binary64) (sinh.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (-.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 im)))) (-.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 (-.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 (neg.f64 im))))) (-.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 (-.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) (-.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 (-.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 im)))) (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 (-.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 (neg.f64 im))))) (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 (-.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) (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 (-.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 im)))) (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 (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 (neg.f64 im))))) (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 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) (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 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (-.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 (fma.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (-.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 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (-.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 (-.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))) (+.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 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 2 binary64))) (+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (pow.f64 (+.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 2 binary64))) (+.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (pow.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64))) (-.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))) (+.f64 (pow.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (-.f64 (cosh.f64 im) (exp.f64 im)) (sinh.f64 im)))))
(/.f64 (-.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 6 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64)) (+.f64 (pow.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))) (/.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 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (+.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (+.f64 (pow.f64 (+.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im))))))
(/.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 (pow.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -9 binary64)) (pow.f64 (exp.f64 im) #s(literal 9 binary64)))) (neg.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (expm1.f64 (*.f64 im #s(literal 6 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -4 binary64)) (pow.f64 (exp.f64 im) #s(literal 4 binary64)))) (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (pow.f64 (exp.f64 im) #s(literal 6 binary64)))) (neg.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (exp.f64 im) #s(literal -4 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (pow.f64 (exp.f64 im) #s(literal 6 binary64)))) (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 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)))) (pow.f64 (*.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 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (pow.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (exp.f64 (neg.f64 im))) (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal 1 binary64))) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))
(/.f64 (-.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (*.f64 (fma.f64 (sinh.f64 im) (exp.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 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (-.f64 (*.f64 (+.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 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) #s(literal 1 binary64))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))
(/.f64 (-.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.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) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (*.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)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (*.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) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -4 binary64)) (pow.f64 (exp.f64 im) #s(literal 4 binary64))) (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -9 binary64)) (pow.f64 (exp.f64 im) #s(literal 9 binary64))) (*.f64 (+.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (expm1.f64 (*.f64 im #s(literal 6 binary64)))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
(/.f64 (-.f64 (pow.f64 (exp.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 im) #s(literal -4 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(/.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -6 binary64)) (pow.f64 (exp.f64 im) #s(literal 6 binary64))) (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 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 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (neg.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal -1 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 1 binary64))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im)))) (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im))) #s(literal 1 binary64)) (/.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 (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 (exp.f64 (neg.f64 im)) (*.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 (exp.f64 (neg.f64 im)) (/.f64 (exp.f64 (neg.f64 im)) (*.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 (exp.f64 (neg.f64 im)) (sinh.f64 im)) (cosh.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 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))) (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 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 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(+.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))
(+.f64 (sinh.f64 (neg.f64 im)) (-.f64 (cosh.f64 im) (exp.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 (sin.f64 re) #s(literal 1/2 binary64))) (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im)))) (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im))) #s(literal 1 binary64)))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (sin.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 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)) (-.f64 (pow.f64 (exp.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 im #s(literal -2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.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 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 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) #s(literal 1 binary64))) (pow.f64 (exp.f64 im) #s(literal -4 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) (sin.f64 re))
(*.f64 (*.f64 (sin.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 (sin.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (/.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
(*.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (sin.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 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)))) (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 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 (sin.f64 re) #s(literal 1/2 binary64)))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(/.f64 (neg.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64))) (neg.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64))) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)) (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
(fma.f64 (cosh.f64 im) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (*.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im) (*.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))))
(+.f64 (*.f64 (cosh.f64 im) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))) (*.f64 (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (cosh.f64 im)) (*.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im))))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(sin.f64 re)
(*.f64 (fabs.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64))) (fabs.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(*.f64 (fabs.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64))) (fabs.f64 (-.f64 (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))) (cosh.f64 (*.f64 #s(literal -2 binary64) im)))))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 im)))) (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 im)))))
(*.f64 (sqrt.f64 (neg.f64 (exp.f64 im))) (sqrt.f64 (*.f64 (neg.f64 (exp.f64 im)) #s(literal 1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (exp.f64 im))) (sqrt.f64 (neg.f64 (exp.f64 im))))
(*.f64 (sqrt.f64 (exp.f64 im)) (sqrt.f64 (exp.f64 im)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(*.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) 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))
(*.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))
(*.f64 #s(literal 1 binary64) (exp.f64 im))
(*.f64 (exp.f64 im) #s(literal 1 binary64))
(*.f64 (exp.f64 (neg.f64 im)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))
(pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) (pow.f64 (exp.f64 im) #s(literal 3/2 binary64))) #s(literal 2 binary64))
(pow.f64 (*.f64 (exp.f64 (neg.f64 im)) (pow.f64 (exp.f64 im) #s(literal 3/2 binary64))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (exp.f64 im)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 im) #s(literal 1 binary64))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal -1 binary64))
(/.f64 (neg.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (neg.f64 (fabs.f64 (-.f64 (*.f64 (sinh.f64 im) (cosh.f64 im)) (cosh.f64 (*.f64 #s(literal -2 binary64) im))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.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 (*.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 (neg.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 (neg.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 (neg.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 (neg.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (neg.f64 (-.f64 (sinh.f64 im) (cosh.f64 im))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))))
(/.f64 (neg.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))))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (exp.f64 (neg.f64 im)))
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (fabs.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 (fabs.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 (fabs.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 (fabs.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 (fabs.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))))) (fabs.f64 (-.f64 (*.f64 (sinh.f64 im) (cosh.f64 im)) (cosh.f64 (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (fabs.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (fabs.f64 (fabs.f64 (-.f64 (*.f64 (sinh.f64 im) (cosh.f64 im)) (cosh.f64 (*.f64 #s(literal -2 binary64) im))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) (exp.f64 (neg.f64 im)))))
(/.f64 (sqrt.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))))) (sqrt.f64 (*.f64 (exp.f64 (neg.f64 im)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (*.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (sinh.f64 im) (exp.f64 im)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 (cosh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (sinh.f64 im) (exp.f64 im)) #s(literal 2 binary64)) (*.f64 (*.f64 (cosh.f64 im) (exp.f64 im)) (*.f64 (sinh.f64 im) (exp.f64 im)))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (exp.f64 im))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (sqrt.f64 (*.f64 (exp.f64 im) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.f64 (sqrt.f64 (exp.f64 im)) (sqrt.f64 (exp.f64 (neg.f64 im))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (exp.f64 (log.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))))
(/.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 (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 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (*.f64 (sinh.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))))))
(/.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) (sinh.f64 im) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (sinh.f64 im) (cosh.f64 im))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(/.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)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))
(/.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 im))) #s(literal -2 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 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (*.f64 (sinh.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))))))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (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 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (-.f64 (*.f64 (sinh.f64 im) (cosh.f64 im)) (cosh.f64 (*.f64 #s(literal -2 binary64) 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 (sinh.f64 (neg.f64 im)) (exp.f64 (neg.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) (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))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))
(/.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 (cosh.f64 im) #s(literal 1 binary64)))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (*.f64 (sinh.f64 im) #s(literal 1 binary64)))
(sqrt.f64 (pow.f64 (exp.f64 im) #s(literal 2 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 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (exp.f64 (neg.f64 im))) (/.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (exp.f64 (neg.f64 im)))))
(fabs.f64 (*.f64 (-.f64 (sinh.f64 im) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))
(fabs.f64 (*.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) (pow.f64 (exp.f64 im) #s(literal 2 binary64))))
(fabs.f64 (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))
(fabs.f64 (neg.f64 (neg.f64 (exp.f64 im))))
(fabs.f64 (neg.f64 (exp.f64 im)))
(fabs.f64 (exp.f64 im))
(exp.f64 (fma.f64 #s(literal -1 binary64) im (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (fma.f64 #s(literal -2 binary64) im (*.f64 #s(literal 3 binary64) im)))
(exp.f64 (*.f64 im #s(literal 1 binary64)))
(exp.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 2 binary64)))
(exp.f64 im)
(+.f64 (*.f64 (sinh.f64 im) #s(literal 1 binary64)) (*.f64 (cosh.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 (cosh.f64 im) #s(literal 1 binary64)) (*.f64 (sinh.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (sinh.f64 im)) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(+.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 im)))
(+.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(+.f64 (sinh.f64 im) (cosh.f64 im))
(+.f64 (cosh.f64 im) (sinh.f64 im))
(*.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64))) (neg.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64))))
(*.f64 (fabs.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64))) (fabs.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64))))
(*.f64 (fabs.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64))) (fabs.f64 (-.f64 (*.f64 (sinh.f64 im) (cosh.f64 im)) (cosh.f64 (*.f64 #s(literal -2 binary64) im)))))
(*.f64 (sqrt.f64 (/.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))) (sqrt.f64 (exp.f64 (neg.f64 im))))
(*.f64 (sqrt.f64 (/.f64 (exp.f64 (neg.f64 im)) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im))))
(*.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) (sqrt.f64 (exp.f64 (neg.f64 im))))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (sinh.f64 im) (cosh.f64 im))))
(*.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(*.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (exp.f64 im))
(*.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (pow.f64 (exp.f64 im) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im)))
(*.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) im)
(pow.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -3/2 binary64)) (neg.f64 (exp.f64 im))) #s(literal 2 binary64))
(pow.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -3/2 binary64)) (exp.f64 im)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (exp.f64 im) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 (exp.f64 im))) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 im) #s(literal -1 binary64))
(pow.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))
(/.f64 (neg.f64 (fabs.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (neg.f64 (fabs.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (neg.f64 (fabs.f64 (-.f64 (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))) (cosh.f64 (*.f64 #s(literal -2 binary64) im))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (neg.f64 (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))))
(/.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) #s(literal -2 binary64))
(/.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))))
(/.f64 (neg.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 im))))) #s(literal -4 binary64))
(/.f64 (neg.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 (neg.f64 im)))))) #s(literal -4 binary64))
(/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))) #s(literal -4 binary64))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64))) (neg.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (neg.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))))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal -2 binary64))
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 2 binary64))
(/.f64 (fabs.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 im))))) #s(literal 4 binary64))
(/.f64 (fabs.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 (neg.f64 im)))))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (exp.f64 im))
(/.f64 (fabs.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64))) (fabs.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (fabs.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64))) (fabs.f64 (-.f64 (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))) (cosh.f64 (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (fabs.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (fabs.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (fabs.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))))) (fabs.f64 (-.f64 (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))) (cosh.f64 (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (fabs.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (fabs.f64 (fabs.f64 (-.f64 (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))) (cosh.f64 (*.f64 #s(literal -2 binary64) im))))))
(/.f64 (fabs.f64 (fabs.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (fabs.f64 (fabs.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))) (sqrt.f64 (/.f64 (-.f64 (*.f64 (cosh.f64 im) #s(literal 1 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64))) (exp.f64 im))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (*.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (exp.f64 im) #s(literal -3 binary64))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (sinh.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)) (*.f64 (*.f64 (cosh.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (exp.f64 (neg.f64 im))))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (sqrt.f64 (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64))) (sqrt.f64 (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (neg.f64 (exp.f64 im)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (exp.f64 im))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (sqrt.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal -1 binary64))) (sqrt.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) (neg.f64 (exp.f64 im)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))) (exp.f64 im))))
(/.f64 (sqrt.f64 (*.f64 #s(literal -1 binary64) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (sqrt.f64 (*.f64 (neg.f64 (exp.f64 im)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))))
(/.f64 (sqrt.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))))) (sqrt.f64 (*.f64 (neg.f64 (exp.f64 im)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (sqrt.f64 (*.f64 (exp.f64 im) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))))
(/.f64 (sqrt.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))))) (sqrt.f64 (*.f64 (exp.f64 im) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(/.f64 (sqrt.f64 (*.f64 (exp.f64 (neg.f64 im)) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (exp.f64 (neg.f64 im)) (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 (sqrt.f64 (*.f64 (exp.f64 (neg.f64 im)) #s(literal -1 binary64))) (sqrt.f64 (neg.f64 (exp.f64 im))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (exp.f64 (neg.f64 im)))) (sqrt.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (exp.f64 (neg.f64 im)))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 (sqrt.f64 (*.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 im)))) (sqrt.f64 (neg.f64 (exp.f64 im))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (pow.f64 (exp.f64 im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im))) (sqrt.f64 (neg.f64 (exp.f64 im))))
(/.f64 (sqrt.f64 (exp.f64 (neg.f64 im))) (sqrt.f64 (exp.f64 im)))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))))) (exp.f64 (log.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (exp.f64 (log.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))))
(/.f64 (exp.f64 (log.f64 #s(literal -1 binary64))) (exp.f64 (log.f64 (neg.f64 (exp.f64 im)))))
(/.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))) (-.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im)))
(/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 im) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 2 binary64))
(/.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.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) (sinh.f64 im) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) #s(literal 1 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (fma.f64 (sinh.f64 im) (exp.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)))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))
(/.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 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 (neg.f64 im))))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 im)))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64)))) (fabs.f64 (-.f64 (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))) (cosh.f64 (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.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 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (cosh.f64 im) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (neg.f64 (exp.f64 im)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 im)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 im))))
(/.f64 #s(literal 1 binary64) (exp.f64 im))
(neg.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(fma.f64 #s(literal 1 binary64) (cosh.f64 im) (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))))
(fma.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(fma.f64 (cosh.f64 im) #s(literal 1 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64)))
(fma.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64) (*.f64 (cosh.f64 im) #s(literal 1 binary64)))
(sqrt.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)))
(-.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (exp.f64 im)) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (exp.f64 im)))
(-.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (exp.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) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))))
(-.f64 (cosh.f64 im) (sinh.f64 im))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (exp.f64 im)) (/.f64 (pow.f64 (cosh.f64 im) #s(literal 2 binary64)) (exp.f64 im))))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (exp.f64 im) (pow.f64 (cosh.f64 im) #s(literal 2 binary64))))))
(fabs.f64 (neg.f64 (-.f64 (sinh.f64 im) (cosh.f64 im))))
(fabs.f64 (*.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (neg.f64 (exp.f64 im))))
(fabs.f64 (-.f64 (sinh.f64 im) (cosh.f64 im)))
(fabs.f64 (/.f64 #s(literal -1 binary64) (exp.f64 im)))
(fabs.f64 (exp.f64 (neg.f64 im)))
(exp.f64 (fma.f64 #s(literal -3 binary64) im (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (fma.f64 #s(literal -2 binary64) im im))
(exp.f64 (*.f64 (neg.f64 im) #s(literal 1 binary64)))
(exp.f64 (/.f64 (*.f64 #s(literal -2 binary64) im) #s(literal 2 binary64)))
(exp.f64 (neg.f64 im))
(+.f64 (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64)) (*.f64 (cosh.f64 im) #s(literal 1 binary64)))
(+.f64 (*.f64 (cosh.f64 im) #s(literal 1 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))) (*.f64 #s(literal 1 binary64) (cosh.f64 im)))
(+.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 im)) (*.f64 #s(literal 1 binary64) (sinh.f64 (neg.f64 im))))
(+.f64 (/.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal -2 binary64) im)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im))))))
(+.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))
(+.f64 (sinh.f64 (neg.f64 im)) (cosh.f64 im))

eval49.0ms (0.5%)

Memory
15.1MiB live, 52.7MiB allocated
Compiler

Compiled 9 878 to 1 597 computations (83.8% saved)

prune13.0ms (0.1%)

Memory
22.9MiB live, 22.9MiB allocated
Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New37112383
Fresh000
Picked101
Done000
Total37212384
Accuracy
100.0%
Counts
384 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.5%
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
99.9%
(*.f64 (*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
50.6%
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (/.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
65.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) (-.f64 #s(literal 1 binary64) im)) (exp.f64 im)))
50.6%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))))
93.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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)))
90.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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)))
86.7%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
54.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
90.2%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
83.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
52.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
Compiler

Compiled 506 to 402 computations (20.6% saved)

simplify123.0ms (1.2%)

Memory
3.8MiB live, 155.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 1/2 binary64) re)
cost-diff0
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
cost-diff0
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
cost-diff1
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
cost-diff0
#s(approx (- (exp (neg 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
(sin.f64 re)
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
cost-diff0
(sin.f64 re)
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
cost-diff0
(sin.f64 re)
cost-diff0
(neg.f64 (sin.f64 re))
cost-diff0
(*.f64 (neg.f64 (sin.f64 re)) im)
cost-diff0
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
cost-diff0
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
cost-diff0
(sin.f64 re)
cost-diff0
(*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
cost-diff4
(*.f64 (*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
044301
072300
1130298
2264296
3642286
43069286
08238286
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(sin.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 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
(*.f64 (neg.f64 (sin.f64 re)) im)
(neg.f64 (sin.f64 re))
(sin.f64 re)
re
im
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 im im)
im
#s(literal -1/3 binary64)
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
#s(approx (- (exp (neg 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)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal 1/2 binary64) re)
#s(literal 1/2 binary64)
re
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(exp.f64 (neg.f64 im))
(neg.f64 im)
im
(exp.f64 im)
Outputs
(*.f64 (*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (sinh.f64 (neg.f64 im)))
(sin.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 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
(*.f64 (neg.f64 (sin.f64 re)) im)
(neg.f64 (sin.f64 re))
(sin.f64 re)
re
im
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64))
(-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 #s(literal -1/3 binary64) (*.f64 im im))
(*.f64 im im)
im
#s(literal -1/3 binary64)
#s(literal 2 binary64)
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (neg 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) (sin.f64 re)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(literal 1/2 binary64)
(sin.f64 re)
re
#s(approx (- (exp (neg 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)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal 1/2 binary64) re)
#s(literal 1/2 binary64)
re
(-.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)

localize241.0ms (2.4%)

Memory
-4.8MiB live, 280.2MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(exp.f64 im)
accuracy0.06640625
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
accuracy27.046816598649805
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
accuracy29.108658281184553
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
accuracy0.109375
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
accuracy0.18359375
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
accuracy0.36328077638890455
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
accuracy6.1336360239382355
#s(approx (- (exp (neg 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.05078125
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
accuracy0.06640625
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
accuracy0.1875
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
accuracy8.394511592480944
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
accuracy0.0
(sin.f64 re)
accuracy0.0
(neg.f64 (sin.f64 re))
accuracy0.1015625
(*.f64 (neg.f64 (sin.f64 re)) im)
accuracy30.691708832870546
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
accuracy0.0
(sin.f64 re)
accuracy0.0
(neg.f64 im)
accuracy0.01171875
(sinh.f64 (neg.f64 im))
accuracy0.06640625
(*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
Samples
65.0ms134×0valid
43.0ms76×1valid
38.0ms46×2valid
Compiler

Compiled 237 to 33 computations (86.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 116.0ms
ival-mult: 57.0ms (49.3% of total)
ival-exp: 23.0ms (19.9% of total)
const: 11.0ms (9.5% of total)
adjust: 7.0ms (6.1% of total)
ival-sub: 7.0ms (6.1% of total)
ival-sin: 6.0ms (5.2% of total)
ival-neg: 2.0ms (1.7% of total)
ival-sinh: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series44.0ms (0.4%)

Memory
5.8MiB live, 42.3MiB allocated
Counts
24 → 75
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(sin.f64 re)
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
(*.f64 (neg.f64 (sin.f64 re)) im)
(neg.f64 (sin.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (neg 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 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal 1/2 binary64) re)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(exp.f64 im)
Outputs
(* 1/2 (* re (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/240 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))
(* re (- (exp (neg im)) (/ 1 (exp (neg im)))))
(* re (- (+ (exp (neg im)) (* -1/6 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im)))))
(* re (- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/6 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/120 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im)))))
(* re (- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/6 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/5040 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/120 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im)))))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(* -1 (* im re))
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(* -1 re)
(* re (- (* 1/6 (pow re 2)) 1))
(* re (- (* (pow re 2) (+ 1/6 (* -1/120 (pow re 2)))) 1))
(* re (- (* (pow re 2) (+ 1/6 (* (pow re 2) (- (* 1/5040 (pow re 2)) 1/120)))) 1))
(* 1/2 re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
(* 1/2 (* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(sin re)
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(* -1 (* im (sin re)))
(* -1 (sin re))
(* 1/2 (sin re))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(* -2 (* im (sin re)))
(* im (+ (* -2 (sin re)) (* -1/3 (* (pow im 2) (sin re)))))
(* im (+ (* -2 (sin re)) (* (pow im 2) (+ (* -1/3 (sin re)) (* -1/60 (* (pow im 2) (sin re)))))))
(* im (+ (* -2 (sin re)) (* (pow im 2) (+ (* -1/3 (sin re)) (* (pow im 2) (+ (* -1/60 (sin re)) (* -1/2520 (* (pow im 2) (sin 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)
(* 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/3 (pow im 2))
(* -1/60 (pow im 2))
(* -1/3 im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(* (pow im 2) (- (* -1/60 (pow im 2)) 1/3))
1
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(- (exp (neg im)) (/ 1 (exp (neg im))))
(- (exp (neg im)) (exp im))
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(* -1/3 (pow im 3))
(* -1 (* (pow im 3) (+ 1/3 (* 2 (/ 1 (pow im 2))))))
(* -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/2 (* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(- (exp (* -1 im)) (/ 1 (exp (* -1 im))))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(- (exp (* -1 im)) (exp im))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
Calls

6 calls:

TimeVariablePointExpression
22.0ms
re
@inf
((* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (* (sin re) (* 2 (sinh (neg im)))) (sin re) (* 2 (sinh (neg im))) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (- (exp (neg im)) (exp im)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* 1/2 re) (sinh (neg im)) (neg im) (* (* im im) -1/3) (* (- (* (* im im) -1/3) 2) im) (* -1/60 (* im im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im))
8.0ms
im
@inf
((* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (* (sin re) (* 2 (sinh (neg im)))) (sin re) (* 2 (sinh (neg im))) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (- (exp (neg im)) (exp im)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* 1/2 re) (sinh (neg im)) (neg im) (* (* im im) -1/3) (* (- (* (* im im) -1/3) 2) im) (* -1/60 (* im im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im))
4.0ms
im
@-inf
((* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (* (sin re) (* 2 (sinh (neg im)))) (sin re) (* 2 (sinh (neg im))) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (- (exp (neg im)) (exp im)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* 1/2 re) (sinh (neg im)) (neg im) (* (* im im) -1/3) (* (- (* (* im im) -1/3) 2) im) (* -1/60 (* im im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im))
3.0ms
re
@0
((* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (* (sin re) (* 2 (sinh (neg im)))) (sin re) (* 2 (sinh (neg im))) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (- (exp (neg im)) (exp im)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* 1/2 re) (sinh (neg im)) (neg im) (* (* im im) -1/3) (* (- (* (* im im) -1/3) 2) im) (* -1/60 (* im im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im))
3.0ms
im
@0
((* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (* (sin re) (* 2 (sinh (neg im)))) (sin re) (* 2 (sinh (neg im))) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (- (exp (neg im)) (exp im)) (- (exp (neg im)) (exp im)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* 1/2 re) (sinh (neg im)) (neg im) (* (* im im) -1/3) (* (- (* (* im im) -1/3) 2) im) (* -1/60 (* im im)) (* (- (* -1/60 (* im im)) 1/3) im) (* (* (- (* -1/60 (* im im)) 1/3) im) im) (exp im))

simplify135.0ms (1.4%)

Memory
-14.2MiB live, 141.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02761097
1940939
23596902
08042853
Stop Event
iter limit
node limit
Counts
75 → 74
Calls
Call 1
Inputs
(* 1/2 (* re (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/240 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))
(* re (- (exp (neg im)) (/ 1 (exp (neg im)))))
(* re (- (+ (exp (neg im)) (* -1/6 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im)))))
(* re (- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/6 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/120 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im)))))
(* re (- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/6 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/5040 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/120 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im)))))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(* -1 (* im re))
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(* -1 re)
(* re (- (* 1/6 (pow re 2)) 1))
(* re (- (* (pow re 2) (+ 1/6 (* -1/120 (pow re 2)))) 1))
(* re (- (* (pow re 2) (+ 1/6 (* (pow re 2) (- (* 1/5040 (pow re 2)) 1/120)))) 1))
(* 1/2 re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
(* 1/2 (* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(sin re)
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(* -1 (* im (sin re)))
(* -1 (sin re))
(* 1/2 (sin re))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(* -2 (* im (sin re)))
(* im (+ (* -2 (sin re)) (* -1/3 (* (pow im 2) (sin re)))))
(* im (+ (* -2 (sin re)) (* (pow im 2) (+ (* -1/3 (sin re)) (* -1/60 (* (pow im 2) (sin re)))))))
(* im (+ (* -2 (sin re)) (* (pow im 2) (+ (* -1/3 (sin re)) (* (pow im 2) (+ (* -1/60 (sin re)) (* -1/2520 (* (pow im 2) (sin 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)
(* 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/3 (pow im 2))
(* -1/60 (pow im 2))
(* -1/3 im)
(* im (- (* -1/60 (pow im 2)) 1/3))
(* (pow im 2) (- (* -1/60 (pow im 2)) 1/3))
1
(+ 1 im)
(+ 1 (* im (+ 1 (* 1/2 im))))
(+ 1 (* im (+ 1 (* im (+ 1/2 (* 1/6 im))))))
(- (exp (neg im)) (/ 1 (exp (neg im))))
(- (exp (neg im)) (exp im))
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(* -1/3 (pow im 3))
(* -1 (* (pow im 3) (+ 1/3 (* 2 (/ 1 (pow im 2))))))
(* -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/2 (* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(- (exp (* -1 im)) (/ 1 (exp (* -1 im))))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(- (exp (* -1 im)) (exp im))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
Outputs
(* 1/2 (* re (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* re (+ (* -1/12 (* (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)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/240 binary64) (*.f64 re re) #s(literal -1/12 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/240 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)))) re)
(* re (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) re)
(* re (- (+ (exp (neg im)) (* -1/6 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))) (/ 1 (exp (neg im)))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 re re) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) re)
(* re (- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/6 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/120 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))) (/ 1 (exp (neg im)))))
(*.f64 (fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) re)
(* re (- (+ (exp (neg im)) (* (pow re 2) (+ (* -1/6 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/5040 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/120 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))) (/ 1 (exp (neg im)))))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 re re) #s(literal 1/120 binary64))) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 re re) #s(literal 1 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))) re)
re
(* re (+ 1 (* -1/6 (pow re 2))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/6 binary64) re)
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/6 binary64)) re)
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/5040 binary64) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/6 binary64))) re)
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* re (+ (* -1/12 (* (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)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/240 binary64) (*.f64 re re) #s(literal -1/12 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)))) re)
(* -1 (* im re))
(*.f64 (neg.f64 re) im)
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im (fma.f64 #s(literal -1/120 binary64) (*.f64 re re) #s(literal 1/6 binary64))) (*.f64 (neg.f64 re) im))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 im (fma.f64 (*.f64 #s(literal 1/5040 binary64) re) re #s(literal -1/120 binary64))) (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))) re)
(* -1 re)
(neg.f64 re)
(* re (- (* 1/6 (pow re 2)) 1))
(*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)
(* re (- (* (pow re 2) (+ 1/6 (* -1/120 (pow re 2)))) 1))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/120 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
(* re (- (* (pow re 2) (+ 1/6 (* (pow re 2) (- (* 1/5040 (pow re 2)) 1/120)))) 1))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
(* 1/2 re)
(*.f64 #s(literal 1/2 binary64) re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/10080 binary64) (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64))) (*.f64 #s(literal 1/2 binary64) re))
(* 1/2 (* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))
(* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re))
(sin re)
(sin.f64 re)
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))
(* -1 (* im (sin re)))
(*.f64 (neg.f64 (sin.f64 re)) im)
(* -1 (sin re))
(neg.f64 (sin.f64 re))
(* 1/2 (sin re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64))) (*.f64 im im) (neg.f64 (sin.f64 re))) im)
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/5040 binary64) #s(literal -1/120 binary64))) (*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))) im)
(* -2 (* im (sin re)))
(*.f64 (*.f64 #s(literal -2 binary64) (sin.f64 re)) im)
(* im (+ (* -2 (sin re)) (* -1/3 (* (pow im 2) (sin re)))))
(*.f64 (*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/3 binary64) im) im #s(literal -2 binary64))) im)
(* im (+ (* -2 (sin re)) (* (pow im 2) (+ (* -1/3 (sin re)) (* -1/60 (* (pow im 2) (sin re)))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (sin.f64 re) (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal -1/3 binary64))) (*.f64 (*.f64 #s(literal -2 binary64) (sin.f64 re)) im))
(* im (+ (* -2 (sin re)) (* (pow im 2) (+ (* -1/3 (sin re)) (* (pow im 2) (+ (* -1/60 (sin re)) (* -1/2520 (* (pow im 2) (sin re)))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sin.f64 re) (fma.f64 #s(literal -1/2520 binary64) (*.f64 im im) #s(literal -1/60 binary64))) (*.f64 (sin.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)
(* -1 im)
(neg.f64 im)
(* 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 (*.f64 im im) #s(literal -1/120 binary64)) #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 (*.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)) im)
(* -1/3 (pow im 2))
(*.f64 #s(literal -1/3 binary64) (*.f64 im im))
(* -1/60 (pow im 2))
(*.f64 #s(literal -1/60 binary64) (*.f64 im 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)
(* (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
#s(literal 1 binary64)
(+ 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)) (/ 1 (exp (neg im))))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(- (exp (neg im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 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))
(* -1/3 (pow im 3))
(*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1/3 binary64))
(* -1 (* (pow im 3) (+ 1/3 (* 2 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -2 binary64) (*.f64 im im)) #s(literal -1/3 binary64)) (pow.f64 im #s(literal 3 binary64)))
(* -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/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/2 (* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.f64 re) #s(literal 1/2 binary64)))
(* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re))
(- (exp (* -1 im)) (/ 1 (exp (* -1 im))))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (*.f64 (sin.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)) (/ 1 (exp (* -1 im)))))
(*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) #s(literal 1/2 binary64))

rewrite77.0ms (0.8%)

Memory
27.5MiB live, 64.1MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
044218
072217
1183203
0973203
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
24 → 182
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))))
(sin.f64 re)
(*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
(*.f64 (neg.f64 (sin.f64 re)) im)
(neg.f64 (sin.f64 re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (neg 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 (exp.f64 (neg.f64 im)) (exp.f64 im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal 1/2 binary64) re)
(sinh.f64 (neg.f64 im))
(neg.f64 im)
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im)
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im) im)
(exp.f64 im)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sin.f64 re))) (sinh.f64 (neg.f64 im)))
(*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (sinh.f64 (neg.f64 im))) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (sinh.f64 (neg.f64 im))))
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(*.f64 (sin.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) (sin.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) (sin.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) (sin.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) (sin.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)) (sin.f64 re)) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (sinh.f64 (neg.f64 im)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (sin.f64 re))
(*.f64 (sinh.f64 (neg.f64 im)) (*.f64 #s(literal 2 binary64) (sin.f64 re)))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(/.f64 (*.f64 (sin.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 (sin.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) (sin.f64 re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))) #s(literal 2 binary64))
(neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (sinh.f64 im)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (sin.f64 re))) (sinh.f64 (neg.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (sinh.f64 (neg.f64 im))) #s(literal 1/2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) #s(literal 1/2 binary64)) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 re)) (sinh.f64 (neg.f64 im))) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(fma.f64 (sin.f64 re) (sinh.f64 (neg.f64 im)) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(+.f64 (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)) (*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re)))
(sin.f64 re)
(*.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 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64) (sinh.f64 (neg.f64 im)))
(fma.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (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 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (sin.f64 re) (neg.f64 im)))
(*.f64 (neg.f64 (sin.f64 re)) im)
(*.f64 im (neg.f64 (sin.f64 re)))
(*.f64 (sin.f64 re) (neg.f64 im))
(neg.f64 (*.f64 im (sin.f64 re)))
(neg.f64 (sin.f64 re))
(fma.f64 (sin.f64 re) (cos.f64 (PI.f64)) (*.f64 (cos.f64 re) (sin.f64 (PI.f64))))
(sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (neg.f64 re))
(sin.f64 (+.f64 (PI.f64) re))
(-.f64 (*.f64 (cos.f64 re) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 re) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re)))
(cos.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) re))
(+.f64 (*.f64 (sin.f64 re) (cos.f64 (PI.f64))) (*.f64 (cos.f64 re) (sin.f64 (PI.f64))))
(*.f64 (*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)) #s(literal 1/2 binary64)) (sin.f64 re))
(*.f64 (*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)) (sin.f64 re)) #s(literal 1/2 binary64))
(*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)) (*.f64 #s(literal 1/2 binary64) (sin.f64 re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))))
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))
(*.f64 (*.f64 #s(approx (- (exp (neg 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(literal 1/2 binary64)) (sin.f64 re))
(*.f64 (*.f64 #s(approx (- (exp (neg 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)) (sin.f64 re)) #s(literal 1/2 binary64))
(*.f64 #s(approx (- (exp (neg 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) (sin.f64 re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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) (*.f64 #s(approx (- (exp (neg 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)) (sin.f64 re)))
(*.f64 (sin.f64 re) (*.f64 #s(literal 1/2 binary64) #s(approx (- (exp (neg 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 (neg 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 (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 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64) (sinh.f64 (neg.f64 im)))
(fma.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) (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)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(/.f64 (*.f64 (-.f64 (exp.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64))) (pow.f64 (exp.f64 im) #s(literal 2 binary64))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) 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))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) 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 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) 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 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) 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)))))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal 1/2 binary64) re)
(*.f64 re #s(literal 1/2 binary64))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))))
(*.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 (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 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)))
(neg.f64 im)
(*.f64 (*.f64 #s(literal -1/3 binary64) (fabs.f64 im)) (fabs.f64 im))
(*.f64 (*.f64 #s(literal -1/3 binary64) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 #s(literal -1/3 binary64) im) im)
(*.f64 (fabs.f64 im) (*.f64 (fabs.f64 im) #s(literal -1/3 binary64)))
(*.f64 #s(literal -1/3 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/3 binary64)))
(*.f64 im (*.f64 #s(literal -1/3 binary64) im))
(*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)
(*.f64 im (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 4 binary64)) im) (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal 2 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 3 binary64)) #s(literal 8 binary64)) im) (+.f64 (fma.f64 (*.f64 im im) #s(literal -2/3 binary64) #s(literal 4 binary64)) (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64))))
(/.f64 (*.f64 im (-.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 4 binary64))) (fma.f64 #s(literal -1/3 binary64) (*.f64 im im) #s(literal 2 binary64)))
(/.f64 (*.f64 im (-.f64 (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 3 binary64)) #s(literal 8 binary64))) (+.f64 (fma.f64 (*.f64 im im) #s(literal -2/3 binary64) #s(literal 4 binary64)) (pow.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #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 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal -1/60 binary64))
(*.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 #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 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 2 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 (pow.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #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 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 2 binary64))))
(/.f64 (*.f64 im (-.f64 (pow.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 2 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 (pow.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #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 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 2 binary64))))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) (fabs.f64 im)) (fabs.f64 im))
(*.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) (neg.f64 im)) (neg.f64 im))
(*.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)) (*.f64 im im))
(*.f64 (*.f64 im im) (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)))
(*.f64 im (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) im))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/9 binary64)) (*.f64 im im)) (fma.f64 #s(literal -1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #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 #s(literal -1/60 binary64) (*.f64 im im)) #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))

eval64.0ms (0.6%)

Memory
-13.4MiB live, 78.6MiB allocated
Compiler

Compiled 5 752 to 974 computations (83.1% saved)

prune48.0ms (0.5%)

Memory
1.1MiB live, 39.8MiB allocated
Pruning

19 alts after pruning (18 fresh and 1 done)

PrunedKeptTotal
New22915244
Fresh437
Picked415
Done000
Total23719256
Accuracy
100.0%
Counts
256 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.5%
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
93.2%
(*.f64 (*.f64 (sin.f64 re) #s(approx (* 2 (sinh (neg 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(literal 1/2 binary64))
50.6%
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (/.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
57.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) #s(approx (* (- (* (* im im) -1/3) 2) im) (*.f64 (+.f64 (/.f64 #s(literal -2 binary64) (*.f64 im im)) #s(literal -1/3 binary64)) (pow.f64 im #s(literal 3 binary64))))))
99.9%
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
68.6%
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
63.5%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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)))
61.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
64.7%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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.7%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
62.6%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
83.0%
#s(approx (* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
90.2%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
52.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
42.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
41.7%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
37.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
41.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
Compiler

Compiled 989 to 760 computations (23.2% saved)

simplify169.0ms (1.7%)

Memory
6.5MiB live, 157.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
cost-diff0
#s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re))
cost-diff0
(*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im)
cost-diff0
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
cost-diff0
(fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
cost-diff0
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
cost-diff0
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re))
cost-diff0
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
cost-diff0
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
cost-diff0
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
cost-diff0
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
cost-diff0
(neg.f64 re)
cost-diff0
#s(approx (neg (sin re)) (neg.f64 re))
cost-diff0
(*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)
cost-diff0
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
cost-diff0
(sin.f64 re)
cost-diff0
(neg.f64 im)
cost-diff0
(sinh.f64 (neg.f64 im))
cost-diff0
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
064517
0101517
1172517
2383517
3948517
42624511
08367511
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
(sin.f64 re)
re
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
(*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)
#s(approx (neg (sin re)) (neg.f64 re))
(neg.f64 re)
re
im
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/12 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 im im)
im
#s(literal -1/3 binary64)
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64))
(*.f64 #s(literal 1/240 binary64) (*.f64 re re))
#s(literal 1/240 binary64)
(*.f64 re re)
re
#s(literal 1/12 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (neg 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 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
(*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im)
#s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)))
(pow.f64 re #s(literal 4 binary64))
re
#s(literal 4 binary64)
(-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64))
(*.f64 #s(literal 1/5040 binary64) (*.f64 re re))
#s(literal 1/5040 binary64)
(*.f64 re re)
#s(literal 1/120 binary64)
(-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))
(*.f64 #s(literal 1/6 binary64) (*.f64 re re))
#s(literal 1/6 binary64)
#s(literal 1 binary64)
im
Outputs
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(*.f64 (sin.f64 re) (sinh.f64 (neg.f64 im)))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
im
(sin.f64 re)
re
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
(*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)
#s(approx (neg (sin re)) (neg.f64 re))
(neg.f64 re)
re
im
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/12 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64))
(-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 #s(literal -1/3 binary64) (*.f64 im im))
(*.f64 im im)
im
#s(literal -1/3 binary64)
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64))
(*.f64 #s(literal 1/240 binary64) (*.f64 re re))
#s(literal 1/240 binary64)
(*.f64 re re)
re
#s(literal 1/12 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (neg 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 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (fma.f64 (pow.f64 re #s(literal 5 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re))) im))
(*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im)
(*.f64 #s(approx (neg (sin re)) (fma.f64 (pow.f64 re #s(literal 5 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re))) im)
#s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re))
#s(approx (neg (sin re)) (fma.f64 (pow.f64 re #s(literal 5 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
(fma.f64 (pow.f64 re #s(literal 5 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)))
(pow.f64 re #s(literal 4 binary64))
re
#s(literal 4 binary64)
(-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64))
(*.f64 #s(literal 1/5040 binary64) (*.f64 re re))
#s(literal 1/5040 binary64)
(*.f64 re re)
#s(literal 1/120 binary64)
(-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))
(*.f64 #s(literal 1/6 binary64) (*.f64 re re))
#s(literal 1/6 binary64)
#s(literal 1 binary64)
im

localize496.0ms (5%)

Memory
-25.3MiB live, 334.2MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.3500703910993931
(*.f64 #s(literal 1/5040 binary64) (*.f64 re re))
accuracy0.4155139817998863
(*.f64 #s(literal 1/6 binary64) (*.f64 re re))
accuracy26.96992312164972
#s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re))
accuracy30.691708832870546
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
accuracy0.3124076914922309
(*.f64 #s(literal 1/240 binary64) (*.f64 re re))
accuracy0.36328077638890455
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
accuracy6.1336360239382355
#s(approx (- (exp (neg 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))
accuracy27.039358592703405
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re))
accuracy0.1875
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
accuracy0.2923554437569487
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
accuracy8.394511592480944
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
accuracy27.007094696129123
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
accuracy0.0
(neg.f64 re)
accuracy0.1015625
(*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)
accuracy27.04707969600063
#s(approx (neg (sin re)) (neg.f64 re))
accuracy30.691708832870546
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
accuracy0.0
(sin.f64 re)
accuracy0.0
(neg.f64 im)
accuracy0.01171875
(sinh.f64 (neg.f64 im))
accuracy0.06640625
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
Samples
182.0ms76×1valid
138.0ms134×0valid
81.0ms46×2valid
Compiler

Compiled 341 to 56 computations (83.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 285.0ms
ival-mult: 72.0ms (25.2% of total)
const: 54.0ms (18.9% of total)
adjust: 41.0ms (14.4% of total)
ival-pow: 41.0ms (14.4% of total)
ival-sin: 34.0ms (11.9% of total)
ival-exp: 21.0ms (7.4% of total)
ival-sub: 12.0ms (4.2% of total)
ival-add: 5.0ms (1.8% of total)
ival-neg: 4.0ms (1.4% of total)
exact: 1.0ms (0.4% of total)
ival-sinh: 1.0ms (0.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series34.0ms (0.3%)

Memory
-13.5MiB live, 33.3MiB allocated
Counts
27 → 75
Calls
Call 1
Inputs
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
(sin.f64 re)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
(*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)
#s(approx (neg (sin re)) (neg.f64 re))
(neg.f64 re)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
(*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im)
#s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
#s(approx (- (exp (neg 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/60 binary64) (*.f64 im im))
(*.f64 #s(literal 1/240 binary64) (*.f64 re re))
(*.f64 #s(literal 1/6 binary64) (*.f64 re re))
(*.f64 #s(literal 1/5040 binary64) (*.f64 re re))
Outputs
(* 1/2 (* re (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/240 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(* -1 (* im re))
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(* -1 re)
(* re (- (* 1/6 (pow re 2)) 1))
(* re (- (* (pow re 2) (+ 1/6 (* -1/120 (pow re 2)))) 1))
(* re (- (* (pow re 2) (+ 1/6 (* (pow re 2) (- (* 1/5040 (pow re 2)) 1/120)))) 1))
(* 1/2 re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
1/2
(+ 1/2 (* -1/12 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12)))
(* 1/240 (pow re 2))
(* 1/6 (pow re 2))
(* 1/5040 (pow re 2))
(* 1/2 (* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(sin re)
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(* -1 (* im (sin re)))
(* -1 (sin re))
(* 1/2 (sin re))
(* -1/12 (pow re 3))
(* (pow re 3) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* -1/12 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* 1/240 (pow re 5))
(* (pow re 5) (- 1/240 (* 1/12 (/ 1 (pow re 2)))))
(* (pow re 5) (- (+ 1/240 (/ 1/2 (pow re 4))) (* 1/12 (/ 1 (pow re 2)))))
(* 1/240 (pow re 4))
(* (pow re 4) (- 1/240 (* 1/12 (/ 1 (pow re 2)))))
(* (pow re 4) (- (+ 1/240 (/ 1/2 (pow re 4))) (* 1/12 (/ 1 (pow re 2)))))
(* 1/5040 (pow re 7))
(* (pow re 7) (- 1/5040 (* 1/120 (/ 1 (pow re 2)))))
(* (pow re 7) (- (+ 1/5040 (/ 1/6 (pow re 4))) (* 1/120 (/ 1 (pow re 2)))))
(* (pow re 7) (- (+ 1/5040 (/ 1/6 (pow re 4))) (+ (* 1/120 (/ 1 (pow re 2))) (/ 1 (pow re 6)))))
(* -1 (* (pow re 3) (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(* -1 (* (pow re 5) (- (* 1/12 (/ 1 (pow re 2))) 1/240)))
(* -1 (* (pow re 5) (- (* 1/12 (/ 1 (pow re 2))) (+ 1/240 (/ 1/2 (pow re 4))))))
(* -1 (* (pow re 7) (- (* 1/120 (/ 1 (pow re 2))) 1/5040)))
(* -1 (* (pow re 7) (- (* 1/120 (/ 1 (pow re 2))) (+ 1/5040 (/ 1/6 (pow re 4))))))
(* -1 (* (pow re 7) (- (+ (* 1/120 (/ 1 (pow re 2))) (/ 1 (pow re 6))) (+ 1/5040 (/ 1/6 (pow re 4))))))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(* -1 im)
(* 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 (pow im 2))
(* -1/60 (pow im 2))
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(- (exp (neg im)) (exp im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(- (exp (* -1 im)) (exp im))
Calls

6 calls:

TimeVariablePointExpression
18.0ms
im
@-inf
((* (sinh (neg im)) (sin re)) (sinh (neg im)) (neg im) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (neg re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) re) (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (- (exp (neg im)) (exp im)) (* (* im im) -1/3) (- (exp (neg im)) (exp im)) (* -1/60 (* im im)) (* 1/240 (* re re)) (* 1/6 (* re re)) (* 1/5040 (* re re)))
4.0ms
re
@inf
((* (sinh (neg im)) (sin re)) (sinh (neg im)) (neg im) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (neg re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) re) (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (- (exp (neg im)) (exp im)) (* (* im im) -1/3) (- (exp (neg im)) (exp im)) (* -1/60 (* im im)) (* 1/240 (* re re)) (* 1/6 (* re re)) (* 1/5040 (* re re)))
4.0ms
re
@-inf
((* (sinh (neg im)) (sin re)) (sinh (neg im)) (neg im) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (neg re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) re) (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (- (exp (neg im)) (exp im)) (* (* im im) -1/3) (- (exp (neg im)) (exp im)) (* -1/60 (* im im)) (* 1/240 (* re re)) (* 1/6 (* re re)) (* 1/5040 (* re re)))
2.0ms
im
@inf
((* (sinh (neg im)) (sin re)) (sinh (neg im)) (neg im) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (neg re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) re) (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (- (exp (neg im)) (exp im)) (* (* im im) -1/3) (- (exp (neg im)) (exp im)) (* -1/60 (* im im)) (* 1/240 (* re re)) (* 1/6 (* re re)) (* 1/5040 (* re re)))
2.0ms
re
@0
((* (sinh (neg im)) (sin re)) (sinh (neg im)) (neg im) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (neg re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) re) (+ (* (- (* 1/240 (* re re)) 1/12) (* re re)) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (neg (sin re)) (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (- (exp (neg im)) (exp im)) (* (* im im) -1/3) (- (exp (neg im)) (exp im)) (* -1/60 (* im im)) (* 1/240 (* re re)) (* 1/6 (* re re)) (* 1/5040 (* re re)))

simplify134.0ms (1.3%)

Memory
13.3MiB live, 175.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02641039
1790922
22675907
36240907
08072873
Stop Event
iter limit
node limit
Counts
75 → 74
Calls
Call 1
Inputs
(* 1/2 (* re (- (exp (neg im)) (/ 1 (exp (neg im))))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/240 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(* -1 (* im re))
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(* -1 re)
(* re (- (* 1/6 (pow re 2)) 1))
(* re (- (* (pow re 2) (+ 1/6 (* -1/120 (pow re 2)))) 1))
(* re (- (* (pow re 2) (+ 1/6 (* (pow re 2) (- (* 1/5040 (pow re 2)) 1/120)))) 1))
(* 1/2 re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
1/2
(+ 1/2 (* -1/12 (pow re 2)))
(+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12)))
(* 1/240 (pow re 2))
(* 1/6 (pow re 2))
(* 1/5040 (pow re 2))
(* 1/2 (* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(sin re)
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(* -1 (* im (sin re)))
(* -1 (sin re))
(* 1/2 (sin re))
(* -1/12 (pow re 3))
(* (pow re 3) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* -1/12 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* 1/240 (pow re 5))
(* (pow re 5) (- 1/240 (* 1/12 (/ 1 (pow re 2)))))
(* (pow re 5) (- (+ 1/240 (/ 1/2 (pow re 4))) (* 1/12 (/ 1 (pow re 2)))))
(* 1/240 (pow re 4))
(* (pow re 4) (- 1/240 (* 1/12 (/ 1 (pow re 2)))))
(* (pow re 4) (- (+ 1/240 (/ 1/2 (pow re 4))) (* 1/12 (/ 1 (pow re 2)))))
(* 1/5040 (pow re 7))
(* (pow re 7) (- 1/5040 (* 1/120 (/ 1 (pow re 2)))))
(* (pow re 7) (- (+ 1/5040 (/ 1/6 (pow re 4))) (* 1/120 (/ 1 (pow re 2)))))
(* (pow re 7) (- (+ 1/5040 (/ 1/6 (pow re 4))) (+ (* 1/120 (/ 1 (pow re 2))) (/ 1 (pow re 6)))))
(* -1 (* (pow re 3) (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(* -1 (* (pow re 5) (- (* 1/12 (/ 1 (pow re 2))) 1/240)))
(* -1 (* (pow re 5) (- (* 1/12 (/ 1 (pow re 2))) (+ 1/240 (/ 1/2 (pow re 4))))))
(* -1 (* (pow re 7) (- (* 1/120 (/ 1 (pow re 2))) 1/5040)))
(* -1 (* (pow re 7) (- (* 1/120 (/ 1 (pow re 2))) (+ 1/5040 (/ 1/6 (pow re 4))))))
(* -1 (* (pow re 7) (- (+ (* 1/120 (/ 1 (pow re 2))) (/ 1 (pow re 6))) (+ 1/5040 (/ 1/6 (pow re 4))))))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(* -1 im)
(* 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 (pow im 2))
(* -1/60 (pow im 2))
(* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))
(- (exp (neg im)) (exp im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(* 1/2 (- (exp (* -1 im)) (/ 1 (exp (* -1 im)))))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(- (exp (* -1 im)) (exp im))
Outputs
(* 1/2 (* re (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im)))))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))) re)
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im))))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/240 binary64) (*.f64 re re) #s(literal -1/12 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(* re (+ (* 1/2 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (/ 1 (exp (neg im))))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (/ 1 (exp (neg im)))))) (* 1/240 (- (exp (neg im)) (/ 1 (exp (neg im)))))))))))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)))) re)
re
(* re (+ 1 (* -1/6 (pow re 2))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/6 binary64) re)
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/6 binary64)) re)
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/5040 binary64) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/6 binary64))) re)
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))) re)
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/240 binary64) (*.f64 re re) #s(literal -1/12 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)))) re)
(* -1 (* im re))
(*.f64 (neg.f64 re) im)
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im (fma.f64 #s(literal -1/120 binary64) (*.f64 re re) #s(literal 1/6 binary64))) (*.f64 (neg.f64 re) im))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 im (fma.f64 (*.f64 #s(literal 1/5040 binary64) re) re #s(literal -1/120 binary64))) (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))) re)
(* -1 re)
(neg.f64 re)
(* re (- (* 1/6 (pow re 2)) 1))
(*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)
(* re (- (* (pow re 2) (+ 1/6 (* -1/120 (pow re 2)))) 1))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/120 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
(* re (- (* (pow re 2) (+ 1/6 (* (pow re 2) (- (* 1/5040 (pow re 2)) 1/120)))) 1))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
(* 1/2 re)
(*.f64 #s(literal 1/2 binary64) re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/10080 binary64) (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64))) (*.f64 #s(literal 1/2 binary64) re))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/12 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(* 1/240 (pow re 2))
(*.f64 #s(literal 1/240 binary64) (*.f64 re re))
(* 1/6 (pow re 2))
(*.f64 #s(literal 1/6 binary64) (*.f64 re re))
(* 1/5040 (pow re 2))
(*.f64 #s(literal 1/5040 binary64) (*.f64 re re))
(* 1/2 (* (sin re) (- (exp (neg im)) (/ 1 (exp (neg im))))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re)) #s(literal 1/2 binary64))
(sin re)
(sin.f64 re)
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re)) #s(literal 1/2 binary64))
(* -1 (* im (sin re)))
(*.f64 (neg.f64 (sin.f64 re)) im)
(* -1 (sin re))
(neg.f64 (sin.f64 re))
(* 1/2 (sin re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
(* -1/12 (pow re 3))
(*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/12 binary64))
(* (pow re 3) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* -1/12 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/12 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)
(* 1/240 (pow re 5))
(*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/240 binary64))
(* (pow re 5) (- 1/240 (* 1/12 (/ 1 (pow re 2)))))
(*.f64 (-.f64 #s(literal 1/240 binary64) (/.f64 #s(literal 1/12 binary64) (*.f64 re re))) (pow.f64 re #s(literal 5 binary64)))
(* (pow re 5) (- (+ 1/240 (/ 1/2 (pow re 4))) (* 1/12 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 1/12 binary64) (*.f64 re re)) #s(literal 1/240 binary64))) (pow.f64 re #s(literal 5 binary64)))
(* 1/240 (pow re 4))
(*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/240 binary64))
(* (pow re 4) (- 1/240 (* 1/12 (/ 1 (pow re 2)))))
(*.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/240 binary64) (/.f64 #s(literal 1/12 binary64) (*.f64 re re))))
(* (pow re 4) (- (+ 1/240 (/ 1/2 (pow re 4))) (* 1/12 (/ 1 (pow re 2)))))
(*.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 1/12 binary64) (*.f64 re re)) #s(literal 1/240 binary64))))
(* 1/5040 (pow re 7))
(*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64))
(* (pow re 7) (- 1/5040 (* 1/120 (/ 1 (pow re 2)))))
(*.f64 (-.f64 #s(literal 1/5040 binary64) (/.f64 #s(literal 1/120 binary64) (*.f64 re re))) (pow.f64 re #s(literal 7 binary64)))
(* (pow re 7) (- (+ 1/5040 (/ 1/6 (pow re 4))) (* 1/120 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 re #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/5040 binary64))) (pow.f64 re #s(literal 7 binary64)))
(* (pow re 7) (- (+ 1/5040 (/ 1/6 (pow re 4))) (+ (* 1/120 (/ 1 (pow re 2))) (/ 1 (pow re 6)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 re #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/5040 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 6 binary64)))) (pow.f64 re #s(literal 7 binary64)))
(* -1 (* (pow re 3) (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) (*.f64 re re)) #s(literal -1 binary64) #s(literal -1/12 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* -1 (* (pow re 5) (- (* 1/12 (/ 1 (pow re 2))) 1/240)))
(*.f64 (neg.f64 (-.f64 (/.f64 #s(literal 1/12 binary64) (*.f64 re re)) #s(literal 1/240 binary64))) (pow.f64 re #s(literal 5 binary64)))
(* -1 (* (pow re 5) (- (* 1/12 (/ 1 (pow re 2))) (+ 1/240 (/ 1/2 (pow re 4))))))
(*.f64 (neg.f64 (pow.f64 re #s(literal 5 binary64))) (-.f64 (-.f64 (/.f64 #s(literal 1/12 binary64) (*.f64 re re)) #s(literal 1/240 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 4 binary64)))))
(* -1 (* (pow re 7) (- (* 1/120 (/ 1 (pow re 2))) 1/5040)))
(*.f64 (neg.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/5040 binary64))) (pow.f64 re #s(literal 7 binary64)))
(* -1 (* (pow re 7) (- (* 1/120 (/ 1 (pow re 2))) (+ 1/5040 (/ 1/6 (pow re 4))))))
(*.f64 (neg.f64 (pow.f64 re #s(literal 7 binary64))) (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 re #s(literal 4 binary64)))))
(* -1 (* (pow re 7) (- (+ (* 1/120 (/ 1 (pow re 2))) (/ 1 (pow re 6))) (+ 1/5040 (/ 1/6 (pow re 4))))))
(*.f64 (neg.f64 (pow.f64 re #s(literal 7 binary64))) (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 6 binary64))) (-.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 re #s(literal 4 binary64))) (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/5040 binary64)))))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 re) (fma.f64 (*.f64 im im) #s(literal -1/120 binary64) #s(literal -1/6 binary64))) (*.f64 im im) (neg.f64 (sin.f64 re))) im)
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/5040 binary64) im) im #s(literal -1/120 binary64))) (*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))) im)
(* -1 im)
(neg.f64 im)
(* 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 (*.f64 im im) #s(literal -1/120 binary64)) #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 (*.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)) 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 (pow im 2))
(*.f64 #s(literal -1/3 binary64) (*.f64 im 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/2 (* (sin re) (- (exp (* -1 im)) (/ 1 (exp (* -1 im))))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.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))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re)) #s(literal 1/2 binary64))
(- (exp (* -1 im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

rewrite164.0ms (1.6%)

Memory
-10.3MiB live, 184.0MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
064364
0101364
1307358
21959358
08186358
Stop Event
iter limit
node limit
iter limit
Counts
27 → 205
Calls
Call 1
Inputs
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(sinh.f64 (neg.f64 im))
(neg.f64 im)
(sin.f64 re)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
(*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)
#s(approx (neg (sin re)) (neg.f64 re))
(neg.f64 re)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
(*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im)
#s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re))
(*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
#s(approx (- (exp (neg 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/60 binary64) (*.f64 im im))
(*.f64 #s(literal 1/240 binary64) (*.f64 re re))
(*.f64 #s(literal 1/6 binary64) (*.f64 re re))
(*.f64 #s(literal 1/5040 binary64) (*.f64 re re))
Outputs
(*.f64 (sin.f64 re) (sinh.f64 (neg.f64 im)))
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re))) #s(literal -2 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (sin.f64 re)) #s(literal 2 binary64))
(neg.f64 (*.f64 (sin.f64 re) (sinh.f64 im)))
(neg.f64 (*.f64 (sinh.f64 im) (sin.f64 re)))
(/.f64 (neg.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 (neg.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))
(-.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 (cosh.f64 im) #s(literal 2 binary64)) (/.f64 (+.f64 (sinh.f64 im) (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 #s(literal -1 binary64) 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 #s(literal 0 binary64) im)
(log.f64 (exp.f64 (neg.f64 im)))
(sin.f64 re)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
(*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)
(*.f64 im #s(approx (neg (sin re)) (neg.f64 re)))
#s(approx (neg (sin re)) (neg.f64 re))
(neg.f64 re)
(*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)
(*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) re)) (neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) re)) (neg.f64 (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (*.f64 re (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) re) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) re) (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))
(/.f64 (*.f64 re (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64))) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 re (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))
(fma.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re (*.f64 #s(literal 1/2 binary64) re))
(fma.f64 #s(literal 1/2 binary64) re (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re))
(fma.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) (*.f64 re #s(literal 1/2 binary64)))
(fma.f64 re #s(literal 1/2 binary64) (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))))
(+.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re) (*.f64 #s(literal 1/2 binary64) re))
(+.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re))
(+.f64 (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))) (*.f64 re #s(literal 1/2 binary64)))
(+.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))) (*.f64 (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))) #s(literal 1/8 binary64))) (*.f64 (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))) (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))
(/.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))
(fma.f64 (*.f64 #s(literal -1/12 binary64) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 #s(literal -1/12 binary64) re) re #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal -1/12 binary64)) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))) (/.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))))
(-.f64 (/.f64 (*.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 re re)) #s(literal -1/12 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 re) (*.f64 #s(literal -1/12 binary64) re)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/12 binary64) (*.f64 re re)))
(+.f64 (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 #s(literal 1/144 binary64) (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(+.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))
(*.f64 #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(*.f64 re (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) re)) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) re)) (neg.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (*.f64 re (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) re) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) re) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))
(/.f64 (*.f64 re (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64)))
(/.f64 (*.f64 re (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))
(fma.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) re (*.f64 #s(literal 1/2 binary64) re))
(fma.f64 #s(literal 1/2 binary64) re (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) re))
(fma.f64 re (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) (*.f64 re #s(literal 1/2 binary64)))
(fma.f64 re #s(literal 1/2 binary64) (*.f64 re (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)))
(+.f64 (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) re) (*.f64 #s(literal 1/2 binary64) re))
(+.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) re))
(+.f64 (*.f64 re (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) (*.f64 re #s(literal 1/2 binary64)))
(+.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 re (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 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 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (*.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) #s(literal 1/8 binary64))) (*.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 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 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 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 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64)))))
(fma.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re #s(literal 1/2 binary64))
(fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64))) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))))
(-.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re)) re))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64))) (*.f64 re re)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 re re)) (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64))))
(+.f64 (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (-.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) (*.f64 re #s(literal 1/2 binary64))))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
(*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im)
(*.f64 im #s(approx (neg (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)))
#s(approx (neg (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)
(*.f64 re (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) #s(literal 2 binary64))) re)) (neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)) (pow.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) #s(literal 3 binary64))) re)) (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 8 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (-.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))))))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) #s(literal 2 binary64))))) (neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (*.f64 re (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)) (pow.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 8 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (-.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) #s(literal 2 binary64))) re) (-.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)) (pow.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) #s(literal 3 binary64))) re) (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 8 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (-.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (*.f64 re (-.f64 (*.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) #s(literal 2 binary64)))) (-.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))))
(/.f64 (*.f64 re (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)) (pow.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) #s(literal 3 binary64)))) (fma.f64 (pow.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) #s(literal 2 binary64)) (pow.f64 re #s(literal 8 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (-.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)))))))
(fma.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) re (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re))
(fma.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) re))
(fma.f64 re (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))))
(fma.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 re (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) re) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re))
(+.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re) (*.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64))) re))
(+.f64 (*.f64 re (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)))) (*.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))))
(+.f64 (*.f64 re (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) (*.f64 re (*.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (pow.f64 re #s(literal 4 binary64)))))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 im im)) #s(literal 2 binary64)) im))
(*.f64 (*.f64 #s(literal -1/3 binary64) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 #s(literal -1/3 binary64) im) im)
(*.f64 #s(literal -1/3 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/3 binary64)))
(*.f64 im (*.f64 #s(literal -1/3 binary64) im))
#s(approx (- (exp (neg 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/60 binary64) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 #s(literal -1/60 binary64) im) im)
(*.f64 #s(literal -1/60 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal -1/60 binary64))
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) #s(literal -1/60 binary64)))
(*.f64 im (*.f64 #s(literal -1/60 binary64) im))
(*.f64 (fabs.f64 (*.f64 #s(literal 1/240 binary64) (neg.f64 re))) re)
(*.f64 (fabs.f64 (*.f64 #s(literal 1/240 binary64) re)) re)
(*.f64 (*.f64 #s(literal 1/240 binary64) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 #s(literal 1/240 binary64) re) re)
(*.f64 #s(literal 1/240 binary64) (*.f64 re re))
(*.f64 (*.f64 re re) #s(literal 1/240 binary64))
(*.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal 1/240 binary64)))
(*.f64 re (fabs.f64 (*.f64 (neg.f64 re) #s(literal 1/240 binary64))))
(*.f64 re (fabs.f64 (*.f64 #s(literal 1/240 binary64) re)))
(*.f64 re (*.f64 #s(literal 1/240 binary64) re))
(sqrt.f64 (*.f64 #s(literal 1/57600 binary64) (pow.f64 re #s(literal 4 binary64))))
(fabs.f64 (neg.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re))))
(fabs.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)))
(*.f64 (fabs.f64 (*.f64 #s(literal 1/6 binary64) (neg.f64 re))) re)
(*.f64 (fabs.f64 (*.f64 #s(literal 1/6 binary64) re)) (fabs.f64 (*.f64 re #s(literal 1 binary64))))
(*.f64 (fabs.f64 (*.f64 #s(literal 1/6 binary64) re)) re)
(*.f64 (*.f64 #s(literal 1/6 binary64) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 #s(literal 1/6 binary64) re) (*.f64 re #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/6 binary64) re) re)
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 re re)))
(*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))
(*.f64 #s(literal 1/6 binary64) (fabs.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64))))
(*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)))
(*.f64 #s(literal 1/6 binary64) (*.f64 re re))
(*.f64 (*.f64 re re) #s(literal 1/6 binary64))
(*.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal 1/6 binary64)))
(*.f64 re (fabs.f64 (*.f64 (neg.f64 re) #s(literal 1/6 binary64))))
(*.f64 re (fabs.f64 (*.f64 #s(literal 1/6 binary64) re)))
(*.f64 re (*.f64 #s(literal 1/6 binary64) re))
(sqrt.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 re #s(literal 4 binary64))))
(fabs.f64 (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re))))
(fabs.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)))
(*.f64 (fabs.f64 (*.f64 #s(literal 1/5040 binary64) (neg.f64 re))) re)
(*.f64 (fabs.f64 (*.f64 #s(literal 1/5040 binary64) re)) re)
(*.f64 (*.f64 #s(literal 1/5040 binary64) (neg.f64 re)) (neg.f64 re))
(*.f64 (*.f64 #s(literal 1/5040 binary64) re) re)
(*.f64 #s(literal 1/5040 binary64) (*.f64 re re))
(*.f64 (*.f64 re re) #s(literal 1/5040 binary64))
(*.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal 1/5040 binary64)))
(*.f64 re (fabs.f64 (*.f64 (neg.f64 re) #s(literal 1/5040 binary64))))
(*.f64 re (fabs.f64 (*.f64 #s(literal 1/5040 binary64) re)))
(*.f64 re (*.f64 #s(literal 1/5040 binary64) re))
(sqrt.f64 (*.f64 #s(literal 1/25401600 binary64) (pow.f64 re #s(literal 4 binary64))))
(fabs.f64 (neg.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re))))
(fabs.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)))

eval56.0ms (0.6%)

Memory
29.7MiB live, 67.2MiB allocated
Compiler

Compiled 10 845 to 1 433 computations (86.8% saved)

prune58.0ms (0.6%)

Memory
-30.0MiB live, 53.6MiB allocated
Pruning

22 alts after pruning (18 fresh and 4 done)

PrunedKeptTotal
New2647271
Fresh21113
Picked235
Done011
Total26822290
Accuracy
100.0%
Counts
290 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.5%
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
50.6%
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (/.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
57.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) #s(approx (* (- (* (* im im) -1/3) 2) im) (*.f64 (+.f64 (/.f64 #s(literal -2 binary64) (*.f64 im im)) #s(literal -1/3 binary64)) (pow.f64 im #s(literal 3 binary64))))))
99.9%
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
68.6%
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
63.5%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
61.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
67.0%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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)))
64.7%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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.7%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
51.5%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
25.5%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
59.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
62.6%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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)))
83.0%
#s(approx (* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
90.2%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
52.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
42.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
41.7%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
37.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
25.5%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) #s(approx (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64)))) im))
41.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
Compiler

Compiled 1 211 to 916 computations (24.4% saved)

simplify107.0ms (1.1%)

Memory
36.8MiB live, 145.4MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sinh.f64 im)
cost-diff0
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
cost-diff0
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
cost-diff1
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
cost-diff0
#s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))
cost-diff0
(*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)
cost-diff0
#s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re))
cost-diff0
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
cost-diff0
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
cost-diff0
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
cost-diff0
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
cost-diff0
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
cost-diff0
(*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))
cost-diff0
(*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)
cost-diff0
#s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re))
cost-diff0
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
cost-diff0
(sin.f64 re)
cost-diff0
(*.f64 (sin.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)))
cost-diff0
(*.f64 (*.f64 (sin.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)
cost-diff0
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
064492
0101490
1204490
2548490
32065490
46354490
08173490
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
(*.f64 (*.f64 (sin.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)
(*.f64 (sin.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)))
(sin.f64 re)
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))
(*.f64 im im)
im
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
#s(literal -1/120 binary64)
#s(literal -1/6 binary64)
#s(literal -1 binary64)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re))
(*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)
(*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))
im
(fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))
(*.f64 #s(literal 1/6 binary64) re)
#s(literal 1/6 binary64)
re
#s(literal -1 binary64)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/12 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal -1/3 binary64) im) im)
(*.f64 #s(literal -1/3 binary64) im)
#s(literal -1/3 binary64)
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re))
(*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)
#s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re)
(-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64))
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
#s(literal 1/2 binary64)
(*.f64 re re)
re
#s(literal 1/12 binary64)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 im im)
im
#s(literal -1/3 binary64)
#s(literal 2 binary64)
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
#s(literal 2 binary64)
(sinh.f64 im)
im
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal 1/2 binary64) re)
#s(literal 1/2 binary64)
re
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) im) (sin.f64 re)))
(*.f64 (*.f64 (sin.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)
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) im) (sin.f64 re))
(*.f64 (sin.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)))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) (sin.f64 re))
(sin.f64 re)
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))
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64))
(*.f64 im im)
im
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
#s(literal -1/120 binary64)
#s(literal -1/6 binary64)
#s(literal -1 binary64)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im) re)))
#s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re))
#s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im) re))
(*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)
(*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im) re)
(*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))
(*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im)
im
(fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))
(*.f64 #s(literal 1/6 binary64) re)
#s(literal 1/6 binary64)
re
#s(literal -1 binary64)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(*.f64 re re)
re
#s(literal -1/12 binary64)
#s(literal 1/2 binary64)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal -1/3 binary64) im) im)
(*.f64 #s(literal -1/3 binary64) im)
#s(literal -1/3 binary64)
im
#s(literal 2 binary64)
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re))
(*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)
#s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re)
(-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64))
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
#s(literal 1/2 binary64)
(*.f64 re re)
re
#s(literal 1/12 binary64)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))
(*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)
(-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64))
(-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64))
(*.f64 (*.f64 im im) #s(literal -1/3 binary64))
(*.f64 (*.f64 #s(literal -1/3 binary64) im) im)
(*.f64 im im)
im
#s(literal -1/3 binary64)
#s(literal 2 binary64)
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64))) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
(*.f64 (sinh.f64 im) #s(literal 2 binary64))
#s(literal 2 binary64)
(sinh.f64 im)
im
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
#s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) re)
(*.f64 re #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
re

localize388.0ms (3.9%)

Memory
-35.6MiB live, 259.8MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
accuracy0.01171875
(sinh.f64 im)
accuracy0.06640625
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
accuracy27.046816598649805
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
accuracy0.4993978457913738
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
accuracy8.394511592480944
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
accuracy16.506784787771124
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re)
accuracy27.007094696129123
#s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re))
accuracy0.2923554437569487
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
accuracy0.39453125
(*.f64 #s(literal -1/3 binary64) im)
accuracy8.394511592480944
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))
accuracy27.007094696129123
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
accuracy0.296875
(*.f64 #s(literal 1/6 binary64) re)
accuracy3.053920445039056
(*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))
accuracy26.87613145170148
#s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re))
accuracy30.691708832870546
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
accuracy0.10546875
(*.f64 (*.f64 (sin.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)
accuracy0.29031965273496163
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
accuracy1.9056094856139
(*.f64 (sin.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)))
accuracy6.864918310041713
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
Samples
114.0ms134×0valid
93.0ms76×1valid
68.0ms46×2valid
Compiler

Compiled 331 to 54 computations (83.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 175.0ms
ival-mult: 75.0ms (42.9% of total)
ival-div: 21.0ms (12% of total)
ival-exp: 21.0ms (12% of total)
const: 21.0ms (12% of total)
adjust: 12.0ms (6.9% of total)
ival-sub: 6.0ms (3.4% of total)
ival-add: 6.0ms (3.4% of total)
ival-sin: 6.0ms (3.4% of total)
ival-neg: 3.0ms (1.7% 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)

series48.0ms (0.5%)

Memory
10.4MiB live, 45.9MiB allocated
Counts
28 → 95
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
(*.f64 (*.f64 (sin.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)
(*.f64 (sin.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)))
(sin.f64 re)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re))
(*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)
(*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re))
(*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)
#s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
(sinh.f64 im)
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
(*.f64 #s(literal 1/6 binary64) re)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))
(*.f64 #s(literal -1/3 binary64) im)
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
Outputs
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(* im (* re (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))
(* re (+ (* -1/6 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))) (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))
(* re (+ (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/6 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* 1/120 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))))))
(* re (+ (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/6 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* (pow re 2) (+ (* -1/5040 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))) (* 1/120 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))))))))
(* re (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* re (- (+ (* -1/6 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6))) 1))
(* re (- (+ (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/6 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* 1/120 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))))) 1))
(* re (- (+ (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/6 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/5040 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* 1/120 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))))) 1))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(* -1 (* im re))
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(* -1 im)
(+ (* -1 im) (* 1/6 (* im (pow re 2))))
(* 1/2 re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
1/2
(+ 1/2 (* -1/12 (pow re 2)))
(* -1/2 (* re (- (exp im) (/ 1 (exp im)))))
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/12 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/240 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/12 (- (exp im) (/ 1 (exp im))))))))
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/12 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/240 (- (exp im) (/ 1 (exp im)))) (* 1/10080 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))))))
(* 1/6 re)
(/ 1/2 re)
(/ (+ 1/2 (* -1/12 (pow re 2))) re)
(/ 1/2 (pow re 2))
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(* im (* (sin re) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))
(* (sin re) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(sin re)
(* -1 (* im (sin re)))
(* 1/6 (* im (pow re 3)))
(* (pow re 3) (+ (* -1 (/ im (pow re 2))) (* 1/6 im)))
(* 1/6 (* im (pow re 2)))
(* (pow re 2) (+ (* -1 (/ im (pow re 2))) (* 1/6 im)))
(* 1/2 (sin re))
(* -1/12 (pow re 3))
(* (pow re 3) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* -1/12 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* -1/2 (* (sin re) (- (exp im) (/ 1 (exp im)))))
(* -1/12 re)
(* re (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* -1 (* (pow re 3) (+ (* -1/6 im) (/ im (pow re 2)))))
(* -1 (* (pow re 3) (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(* -1 (* re (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(* -1 (sin re))
(+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re))))
(+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re))))))
(* im (* re (- (* 1/6 (pow re 2)) 1)))
(* im (- (* 1/6 (pow re 2)) 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))
(* 2 im)
(* im (+ 2 (* 1/3 (pow im 2))))
(* im (+ 2 (* (pow im 2) (+ 1/3 (* 1/60 (pow im 2))))))
(* im (+ 2 (* (pow im 2) (+ 1/3 (* (pow im 2) (+ 1/60 (* 1/2520 (pow im 2))))))))
im
(* im (+ 1 (* 1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))
(* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))
-1/6
(- (* -1/120 (pow im 2)) 1/6)
(* -1/3 im)
(* -1/120 (* (pow im 5) (sin re)))
(* (pow im 5) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re))))
(* (pow im 5) (+ (* -1 (/ (sin re) (pow im 4))) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re)))))
(* -1/120 (* (pow im 4) (sin re)))
(* (pow im 4) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re))))
(* (pow im 4) (+ (* -1 (/ (sin re) (pow im 4))) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re)))))
(- (/ 1 (exp im)) (exp im))
(- (exp im) (/ 1 (exp im)))
(* 1/2 (- (exp im) (/ 1 (exp im))))
(* -1/120 (pow im 2))
(* -1 (* (pow im 2) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(- (exp (neg im)) (exp im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(* -1 (* (pow im 5) (+ (* 1/120 (sin re)) (* 1/6 (/ (sin re) (pow im 2))))))
(* -1 (* (pow im 5) (+ (* 1/120 (sin re)) (+ (* 1/6 (/ (sin re) (pow im 2))) (/ (sin re) (pow im 4))))))
(- (exp (* -1 im)) (exp im))
Calls

6 calls:

TimeVariablePointExpression
19.0ms
im
@inf
((* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (* (* im (+ (* (* 1/6 re) re) -1)) re) (* im (+ (* (* 1/6 re) re) -1)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (neg (* 2 (sinh im))) (* (neg (* 2 (sinh im))) (* 1/2 (sin re))) (* 2 (sinh im)) (sinh im) (+ (* -1/120 (* im im)) -1/6) (* 1/6 re) (- (exp (neg im)) (exp im)) (* -1/3 im) (* (- (/ 1/2 (* re re)) 1/12) re) (- (exp (neg im)) (exp im)) (/ 1/2 (* re re)) (* 1/2 (sin re)))
10.0ms
re
@-inf
((* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (* (* im (+ (* (* 1/6 re) re) -1)) re) (* im (+ (* (* 1/6 re) re) -1)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (neg (* 2 (sinh im))) (* (neg (* 2 (sinh im))) (* 1/2 (sin re))) (* 2 (sinh im)) (sinh im) (+ (* -1/120 (* im im)) -1/6) (* 1/6 re) (- (exp (neg im)) (exp im)) (* -1/3 im) (* (- (/ 1/2 (* re re)) 1/12) re) (- (exp (neg im)) (exp im)) (/ 1/2 (* re re)) (* 1/2 (sin re)))
5.0ms
re
@inf
((* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (* (* im (+ (* (* 1/6 re) re) -1)) re) (* im (+ (* (* 1/6 re) re) -1)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (neg (* 2 (sinh im))) (* (neg (* 2 (sinh im))) (* 1/2 (sin re))) (* 2 (sinh im)) (sinh im) (+ (* -1/120 (* im im)) -1/6) (* 1/6 re) (- (exp (neg im)) (exp im)) (* -1/3 im) (* (- (/ 1/2 (* re re)) 1/12) re) (- (exp (neg im)) (exp im)) (/ 1/2 (* re re)) (* 1/2 (sin re)))
5.0ms
im
@-inf
((* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (* (* im (+ (* (* 1/6 re) re) -1)) re) (* im (+ (* (* 1/6 re) re) -1)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (neg (* 2 (sinh im))) (* (neg (* 2 (sinh im))) (* 1/2 (sin re))) (* 2 (sinh im)) (sinh im) (+ (* -1/120 (* im im)) -1/6) (* 1/6 re) (- (exp (neg im)) (exp im)) (* -1/3 im) (* (- (/ 1/2 (* re re)) 1/12) re) (- (exp (neg im)) (exp im)) (/ 1/2 (* re re)) (* 1/2 (sin re)))
4.0ms
re
@0
((* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (sin re) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* (neg (sin re)) im) (* (* im (+ (* (* 1/6 re) re) -1)) re) (* im (+ (* (* 1/6 re) re) -1)) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (* 1/2 (sin re)) (* (+ (* (* re re) -1/12) 1/2) re) (+ (* (* re re) -1/12) 1/2) (neg (* 2 (sinh im))) (* (neg (* 2 (sinh im))) (* 1/2 (sin re))) (* 2 (sinh im)) (sinh im) (+ (* -1/120 (* im im)) -1/6) (* 1/6 re) (- (exp (neg im)) (exp im)) (* -1/3 im) (* (- (/ 1/2 (* re re)) 1/12) re) (- (exp (neg im)) (exp im)) (/ 1/2 (* re re)) (* 1/2 (sin re)))

simplify190.0ms (1.9%)

Memory
22.3MiB live, 176.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03241483
111281372
243061354
084931285
Stop Event
iter limit
node limit
Counts
95 → 93
Calls
Call 1
Inputs
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(* im (* re (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))
(* re (+ (* -1/6 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))) (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))
(* re (+ (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/6 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* 1/120 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))))))
(* re (+ (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/6 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* (pow re 2) (+ (* -1/5040 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))) (* 1/120 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))))))))
(* re (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(* re (- (+ (* -1/6 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6))) 1))
(* re (- (+ (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/6 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* 1/120 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))))) 1))
(* re (- (+ (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/6 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/5040 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* 1/120 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))))) 1))
re
(* re (+ 1 (* -1/6 (pow re 2))))
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(* -1 (* im re))
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(* -1 im)
(+ (* -1 im) (* 1/6 (* im (pow re 2))))
(* 1/2 re)
(* re (+ 1/2 (* -1/12 (pow re 2))))
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
1/2
(+ 1/2 (* -1/12 (pow re 2)))
(* -1/2 (* re (- (exp im) (/ 1 (exp im)))))
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/12 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/240 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/12 (- (exp im) (/ 1 (exp im))))))))
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/12 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/240 (- (exp im) (/ 1 (exp im)))) (* 1/10080 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))))))
(* 1/6 re)
(/ 1/2 re)
(/ (+ 1/2 (* -1/12 (pow re 2))) re)
(/ 1/2 (pow re 2))
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(* im (* (sin re) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))
(* (sin re) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(sin re)
(* -1 (* im (sin re)))
(* 1/6 (* im (pow re 3)))
(* (pow re 3) (+ (* -1 (/ im (pow re 2))) (* 1/6 im)))
(* 1/6 (* im (pow re 2)))
(* (pow re 2) (+ (* -1 (/ im (pow re 2))) (* 1/6 im)))
(* 1/2 (sin re))
(* -1/12 (pow re 3))
(* (pow re 3) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* -1/12 (pow re 2))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* -1/2 (* (sin re) (- (exp im) (/ 1 (exp im)))))
(* -1/12 re)
(* re (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(* -1 (* (pow re 3) (+ (* -1/6 im) (/ im (pow re 2)))))
(* -1 (* (pow re 3) (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(* -1 (* re (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(* -1 (sin re))
(+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re))))
(+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re))))))
(* im (* re (- (* 1/6 (pow re 2)) 1)))
(* im (- (* 1/6 (pow re 2)) 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))
(* 2 im)
(* im (+ 2 (* 1/3 (pow im 2))))
(* im (+ 2 (* (pow im 2) (+ 1/3 (* 1/60 (pow im 2))))))
(* im (+ 2 (* (pow im 2) (+ 1/3 (* (pow im 2) (+ 1/60 (* 1/2520 (pow im 2))))))))
im
(* im (+ 1 (* 1/6 (pow im 2))))
(* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))
(* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))
-1/6
(- (* -1/120 (pow im 2)) 1/6)
(* -1/3 im)
(* -1/120 (* (pow im 5) (sin re)))
(* (pow im 5) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re))))
(* (pow im 5) (+ (* -1 (/ (sin re) (pow im 4))) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re)))))
(* -1/120 (* (pow im 4) (sin re)))
(* (pow im 4) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re))))
(* (pow im 4) (+ (* -1 (/ (sin re) (pow im 4))) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re)))))
(- (/ 1 (exp im)) (exp im))
(- (exp im) (/ 1 (exp im)))
(* 1/2 (- (exp im) (/ 1 (exp im))))
(* -1/120 (pow im 2))
(* -1 (* (pow im 2) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(- (exp (neg im)) (exp im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(* -1 (* (pow im 5) (+ (* 1/120 (sin re)) (* 1/6 (/ (sin re) (pow im 2))))))
(* -1 (* (pow im 5) (+ (* 1/120 (sin re)) (+ (* 1/6 (/ (sin re) (pow im 2))) (/ (sin re) (pow im 4))))))
(- (exp (* -1 im)) (exp im))
Outputs
(* 1/2 (* re (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 re #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(* re (+ (* -1/12 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/2 (- (exp (neg im)) (exp im)))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))) re)
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* 1/240 (* (pow re 2) (- (exp (neg im)) (exp im))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal 1/240 binary64) (*.f64 re re) #s(literal -1/12 binary64))) (*.f64 (*.f64 re #s(literal 1/2 binary64)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))))
(* re (+ (* 1/2 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/12 (- (exp (neg im)) (exp im))) (* (pow re 2) (+ (* -1/10080 (* (pow re 2) (- (exp (neg im)) (exp im)))) (* 1/240 (- (exp (neg im)) (exp im)))))))))
(*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64))))) re)
(* im (* re (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))
(*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))
(* re (+ (* -1/6 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))) (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im re) re) #s(literal -1/6 binary64)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #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/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) im)) re)
(* re (+ (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/6 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* 1/120 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 re re) (*.f64 #s(literal 1/120 binary64) im)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal -1/6 binary64) im) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))))
(* re (+ (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/6 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* (pow re 2) (+ (* -1/5040 (* im (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))) (* 1/120 (* im (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im re) re) #s(literal -1/5040 binary64)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/120 binary64) im) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))) (*.f64 re re))) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))))
(* re (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)
(* re (- (+ (* -1/6 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6))) 1))
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 re re) #s(literal 1 binary64)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)
(* re (- (+ (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/6 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* 1/120 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))))) 1))
(*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)
(* re (- (+ (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) (* (pow re 2) (+ (* -1/6 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)) (* (pow re 2) (+ (* -1/5040 (* (pow re 2) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))) (* 1/120 (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))))))) 1))
(*.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/5040 binary64)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #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/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64)))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)
re
(* re (+ 1 (* -1/6 (pow re 2))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/6 binary64) re)
(* re (+ 1 (* (pow re 2) (- (* 1/120 (pow re 2)) 1/6))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 re re)) #s(literal 1/6 binary64)) re)
(* re (+ 1 (* (pow re 2) (- (* (pow re 2) (+ 1/120 (* -1/5040 (pow re 2)))) 1/6))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 re re) #s(literal 1/120 binary64)) re) re) #s(literal 1/6 binary64)) re)
(* -1 (* im re))
(*.f64 (neg.f64 im) re)
(* re (+ (* -1 im) (* 1/6 (* im (pow re 2)))))
(*.f64 (fma.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64) (neg.f64 im)) re)
(* re (+ (* -1 im) (* (pow re 2) (+ (* -1/120 (* im (pow re 2))) (* 1/6 im)))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 im re) re) #s(literal -1/120 binary64) (*.f64 #s(literal 1/6 binary64) im)) (*.f64 (neg.f64 im) re))
(* re (+ (* -1 im) (* (pow re 2) (+ (* 1/6 im) (* (pow re 2) (+ (* -1/120 im) (* 1/5040 (* im (pow re 2)))))))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 (*.f64 im re) re) (*.f64 #s(literal -1/120 binary64) im)) re) re (*.f64 #s(literal 1/6 binary64) im)) (*.f64 (neg.f64 im) re))
(* -1 im)
(neg.f64 im)
(+ (* -1 im) (* 1/6 (* im (pow re 2))))
(fma.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64) (neg.f64 im))
(* 1/2 re)
(*.f64 re #s(literal 1/2 binary64))
(* re (+ 1/2 (* -1/12 (pow re 2))))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(* re (+ 1/2 (* (pow re 2) (- (* 1/240 (pow re 2)) 1/12))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)
(* re (+ 1/2 (* (pow re 2) (- (* (pow re 2) (+ 1/240 (* -1/10080 (pow re 2)))) 1/12))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64)) re) re) #s(literal 1/12 binary64)) (*.f64 re #s(literal 1/2 binary64)))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/12 (pow re 2)))
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(* -1/2 (* re (- (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 #s(literal -1/2 binary64) re) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* 1/12 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))
(*.f64 (*.f64 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 #s(literal 1/12 binary64) re) re #s(literal -1/2 binary64))) re)
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/240 (* (pow re 2) (- (exp im) (/ 1 (exp im))))) (* 1/12 (- (exp im) (/ 1 (exp im))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (*.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 #s(literal -1/240 binary64) (*.f64 re re) #s(literal 1/12 binary64)))))
(* re (+ (* -1/2 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* 1/12 (- (exp im) (/ 1 (exp im)))) (* (pow re 2) (+ (* -1/240 (- (exp im) (/ 1 (exp im)))) (* 1/10080 (* (pow re 2) (- (exp im) (/ 1 (exp im)))))))))))
(*.f64 (fma.f64 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 (*.f64 #s(literal 1/12 binary64) re) re #s(literal -1/2 binary64)) (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) (fma.f64 #s(literal 1/10080 binary64) (*.f64 re re) #s(literal -1/240 binary64))))) re)
(* 1/6 re)
(*.f64 #s(literal 1/6 binary64) re)
(/ 1/2 re)
(/.f64 #s(literal 1/2 binary64) re)
(/ (+ 1/2 (* -1/12 (pow re 2))) re)
(/.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(/ 1/2 (pow re 2))
(/.f64 (/.f64 #s(literal 1/2 binary64) re) re)
(* 1/2 (* (sin re) (- (exp (neg im)) (exp im))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re)) #s(literal 1/2 binary64))
(* im (* (sin re) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1)))
(*.f64 (*.f64 im (sin.f64 re)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))
(* (sin re) (- (* (pow im 2) (- (* -1/120 (pow im 2)) 1/6)) 1))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (sin.f64 re))
(sin re)
(sin.f64 re)
(* -1 (* im (sin re)))
(*.f64 (neg.f64 (sin.f64 re)) im)
(* 1/6 (* im (pow re 3)))
(*.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) im) #s(literal 1/6 binary64))
(* (pow re 3) (+ (* -1 (/ im (pow re 2))) (* 1/6 im)))
(*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) im (/.f64 im (*.f64 re re))))
(* 1/6 (* im (pow re 2)))
(*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))
(* (pow re 2) (+ (* -1 (/ im (pow re 2))) (* 1/6 im)))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) im (/.f64 im (*.f64 re re)))) (*.f64 re re))
(* 1/2 (sin re))
(*.f64 (sin.f64 re) #s(literal 1/2 binary64))
(* -1/12 (pow re 3))
(*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/12 binary64))
(* (pow re 3) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) re) re) #s(literal 1/12 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* -1/12 (pow re 2))
(*.f64 (*.f64 re re) #s(literal -1/12 binary64))
(* (pow re 2) (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(*.f64 (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) re) re) #s(literal 1/12 binary64)) re) re)
(* -1/2 (* (sin re) (- (exp im) (/ 1 (exp im)))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))))
(* -1/12 re)
(*.f64 #s(literal -1/12 binary64) re)
(* re (- (* 1/2 (/ 1 (pow re 2))) 1/12))
(*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) re) re) #s(literal 1/12 binary64)) re)
(* -1 (* (pow re 3) (+ (* -1/6 im) (/ im (pow re 2)))))
(*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) im (/.f64 im (*.f64 re re))))
(* -1 (* (pow re 3) (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) (*.f64 re re)) #s(literal -1 binary64) #s(literal -1/12 binary64)) (pow.f64 re #s(literal 3 binary64)))
(* -1 (* re (- 1/12 (* 1/2 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) (*.f64 re re)) #s(literal -1 binary64) #s(literal -1/12 binary64)) re)
(* im (+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re)))))
(*.f64 (*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))) im)
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/120 binary64) im) im #s(literal -1/6 binary64))) (*.f64 im im) (neg.f64 (sin.f64 re))) im)
(* im (+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* (pow im 2) (+ (* -1/120 (sin re)) (* -1/5040 (* (pow im 2) (sin re)))))))))
(*.f64 (fma.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/5040 binary64) im) im #s(literal -1/120 binary64))))) im)
(* -1 (sin re))
(neg.f64 (sin.f64 re))
(+ (* -1 (sin re)) (* -1/6 (* (pow im 2) (sin re))))
(*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))
(+ (* -1 (sin re)) (* (pow im 2) (+ (* -1/6 (sin re)) (* -1/120 (* (pow im 2) (sin re))))))
(fma.f64 (*.f64 (sin.f64 re) (fma.f64 (*.f64 #s(literal -1/120 binary64) im) im #s(literal -1/6 binary64))) (*.f64 im im) (neg.f64 (sin.f64 re)))
(* im (* re (- (* 1/6 (pow re 2)) 1)))
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/6 binary64) re) re) #s(literal 1 binary64)) (*.f64 im re))
(* im (- (* 1/6 (pow re 2)) 1))
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/6 binary64) re) re) #s(literal 1 binary64)) im)
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* im (- (* -1/3 (pow im 2)) 2))
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)
(* im (- (* (pow im 2) (- (* -1/60 (pow im 2)) 1/3)) 2))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/60 binary64) (*.f64 im im)) #s(literal 1/3 binary64)) (*.f64 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 #s(literal -1/2520 binary64) (*.f64 im im)) #s(literal 1/60 binary64)) (*.f64 im im)) #s(literal 1/3 binary64)) (*.f64 im im)) #s(literal 2 binary64)) im)
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(* im (+ 2 (* 1/3 (pow im 2))))
(*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im)
(* im (+ 2 (* (pow im 2) (+ 1/3 (* 1/60 (pow im 2))))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im)
(* im (+ 2 (* (pow im 2) (+ 1/3 (* (pow im 2) (+ 1/60 (* 1/2520 (pow im 2))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im)
im
(* im (+ 1 (* 1/6 (pow im 2))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 1/6 binary64) im)
(* im (+ 1 (* (pow im 2) (+ 1/6 (* 1/120 (pow im 2))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 im im) #s(literal 1/6 binary64)) im)
(* im (+ 1 (* (pow im 2) (+ 1/6 (* (pow im 2) (+ 1/120 (* 1/5040 (pow im 2))))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 im im) #s(literal 1/120 binary64)) (*.f64 im im) #s(literal 1/6 binary64)) im)
-1/6
#s(literal -1/6 binary64)
(- (* -1/120 (pow im 2)) 1/6)
(-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64))
(* -1/3 im)
(*.f64 #s(literal -1/3 binary64) im)
(* -1/120 (* (pow im 5) (sin re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) #s(literal -1/120 binary64)) (sin.f64 re))
(* (pow im 5) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/6 binary64) im) (/.f64 (sin.f64 re) im) (*.f64 #s(literal -1/120 binary64) (sin.f64 re))) (pow.f64 im #s(literal 5 binary64)))
(* (pow im 5) (+ (* -1 (/ (sin re) (pow im 4))) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re)))))
(*.f64 (neg.f64 (pow.f64 im #s(literal 5 binary64))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 re) (fma.f64 (/.f64 (sin.f64 re) im) (/.f64 #s(literal 1/6 binary64) im) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 4 binary64))))))
(* -1/120 (* (pow im 4) (sin re)))
(*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/120 binary64)) (sin.f64 re))
(* (pow im 4) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re))))
(*.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (/.f64 #s(literal -1/6 binary64) im) (/.f64 (sin.f64 re) im) (*.f64 #s(literal -1/120 binary64) (sin.f64 re))))
(* (pow im 4) (+ (* -1 (/ (sin re) (pow im 4))) (+ (* -1/6 (/ (sin re) (pow im 2))) (* -1/120 (sin re)))))
(*.f64 (neg.f64 (fma.f64 #s(literal 1/120 binary64) (sin.f64 re) (fma.f64 (/.f64 (sin.f64 re) im) (/.f64 #s(literal 1/6 binary64) im) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 4 binary64)))))) (pow.f64 im #s(literal 4 binary64)))
(- (/ 1 (exp im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(- (exp im) (/ 1 (exp im)))
(-.f64 (exp.f64 im) (exp.f64 (neg.f64 im)))
(* 1/2 (- (exp im) (/ 1 (exp im))))
(*.f64 (-.f64 (exp.f64 im) (exp.f64 (neg.f64 im))) #s(literal 1/2 binary64))
(* -1/120 (pow im 2))
(*.f64 (*.f64 #s(literal -1/120 binary64) im) im)
(* -1 (* (pow im 2) (+ 1/120 (* 1/6 (/ 1 (pow im 2))))))
(*.f64 (+.f64 (/.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal -1/120 binary64)) (*.f64 im im))
(- (exp (neg im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(* 1/2 (* (sin re) (- (exp (* -1 im)) (exp im))))
(*.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)) (sin.f64 re)) #s(literal 1/2 binary64))
(* -1 (* (pow im 5) (+ (* 1/120 (sin re)) (* 1/6 (/ (sin re) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/6 binary64) im) (/.f64 (sin.f64 re) im) (*.f64 #s(literal -1/120 binary64) (sin.f64 re))) (pow.f64 im #s(literal 5 binary64)))
(* -1 (* (pow im 5) (+ (* 1/120 (sin re)) (+ (* 1/6 (/ (sin re) (pow im 2))) (/ (sin re) (pow im 4))))))
(*.f64 (neg.f64 (pow.f64 im #s(literal 5 binary64))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 re) (fma.f64 (/.f64 (sin.f64 re) im) (/.f64 #s(literal 1/6 binary64) im) (/.f64 (sin.f64 re) (pow.f64 im #s(literal 4 binary64))))))
(- (exp (* -1 im)) (exp im))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))

rewrite256.0ms (2.6%)

Memory
-2.8MiB live, 116.0MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
064375
0101373
1314373
21844361
09165361
Stop Event
iter limit
node limit
iter limit
Counts
28 → 322
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
(*.f64 (*.f64 (sin.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)
(*.f64 (sin.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)))
(sin.f64 re)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re))
(*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)
(*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re))
(*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)
#s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))
(neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
(sinh.f64 im)
(fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))
(*.f64 #s(literal 1/6 binary64) re)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))
(*.f64 #s(literal -1/3 binary64) im)
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re)
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
#s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) im) (sin.f64 re)))
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) im) (sin.f64 re))
(*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) (sin.f64 re)) im)
(*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) (*.f64 (sin.f64 re) im))
(*.f64 (sin.f64 re) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) im))
(*.f64 im (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) (sin.f64 re)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) im) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 re)) im) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) im) (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) im) (-.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 re)) im) (*.f64 (neg.f64 (sin.f64 re)) im)) (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) im) (*.f64 (neg.f64 (sin.f64 re)) im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 im (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im))) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 re)) im) #s(literal 3 binary64))) (fma.f64 (*.f64 im (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im))) (*.f64 im (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im))) (-.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 re)) im) (*.f64 (neg.f64 (sin.f64 re)) im)) (*.f64 (*.f64 im (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im))) (*.f64 (neg.f64 (sin.f64 re)) im)))))
(fma.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) im (*.f64 (neg.f64 (sin.f64 re)) im))
(fma.f64 im (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (*.f64 (neg.f64 (sin.f64 re)) im))
(+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) im) (*.f64 (neg.f64 (sin.f64 re)) im))
(+.f64 (*.f64 im (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im))) (*.f64 (neg.f64 (sin.f64 re)) im))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)) (sin.f64 re))
(*.f64 (sin.f64 re) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 im im) #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (sin.f64 re) #s(literal 3 binary64)) #s(literal -1 binary64) (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 3 binary64))) (fma.f64 (sin.f64 re) (sin.f64 re) (-.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 re)) (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) (sin.f64 re))) (neg.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/120 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal -1 binary64)) (sin.f64 re))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 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 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/120 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal -1 binary64)))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 2 binary64)) (*.f64 (sin.f64 re) (sin.f64 re)))) (neg.f64 (-.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (neg.f64 (sin.f64 re)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 2 binary64)) (-.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re)))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) (sin.f64 re)) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/120 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal -1 binary64))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal -1 binary64)) (sin.f64 re)) (-.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1 binary64)))))
(/.f64 (*.f64 (sin.f64 re) (-.f64 (*.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/120 binary64) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 im im)) #s(literal -1 binary64))))
(/.f64 (*.f64 (sin.f64 re) (fma.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) #s(literal -1 binary64))) (-.f64 (fma.f64 (pow.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) #s(literal -1 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 2 binary64)) (*.f64 (sin.f64 re) (sin.f64 re))) (-.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (sin.f64 re) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (neg.f64 (sin.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 2 binary64)) (-.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re))))))
(fma.f64 (*.f64 (sin.f64 re) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64))) (*.f64 im im) (neg.f64 (sin.f64 re)))
(fma.f64 (*.f64 (sin.f64 re) (*.f64 im im)) (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (neg.f64 (sin.f64 re)))
(fma.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im) (neg.f64 (sin.f64 re)))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im) im) (sin.f64 re) (neg.f64 (sin.f64 re)))
(fma.f64 #s(literal -1 binary64) (sin.f64 re) (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (*.f64 (*.f64 im im) (sin.f64 re)) (neg.f64 (sin.f64 re)))
(fma.f64 (*.f64 im im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) (sin.f64 re)) (neg.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) (*.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im) im) (neg.f64 (sin.f64 re)))
(fma.f64 (sin.f64 re) #s(literal -1 binary64) (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(fma.f64 im (*.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im) (sin.f64 re)) (neg.f64 (sin.f64 re)))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re)))) (/.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (-.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re)))))
(-.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (*.f64 #s(literal 1 binary64) (sin.f64 re)))
(-.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (*.f64 (neg.f64 (sin.f64 re)) #s(literal -1 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 2 binary64)) (-.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re)))))) (/.f64 (pow.f64 (neg.f64 (sin.f64 re)) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) #s(literal 2 binary64)) (-.f64 (*.f64 (sin.f64 re) (sin.f64 re)) (*.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re)))))))
(+.f64 (neg.f64 (sin.f64 re)) (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)))
(+.f64 (*.f64 (*.f64 (sin.f64 re) im) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 im im) #s(literal -1/6 binary64)) im)) (neg.f64 (sin.f64 re)))
(sin.f64 re)
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im) re)))
#s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im) re))
(*.f64 (*.f64 re im) (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)
(*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im) re)
(*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) (*.f64 im re))
(*.f64 im (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re))
(*.f64 re (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) re) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 im) re) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) re) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) re) (-.f64 (*.f64 (*.f64 (neg.f64 im) re) (*.f64 (neg.f64 im) re)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) re) (*.f64 (neg.f64 im) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im)) #s(literal 3 binary64)) (pow.f64 (*.f64 re (neg.f64 im)) #s(literal 3 binary64))) (fma.f64 (*.f64 re (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im)) (*.f64 re (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im)) (-.f64 (*.f64 (*.f64 re (neg.f64 im)) (*.f64 re (neg.f64 im))) (*.f64 (*.f64 re (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im)) (*.f64 re (neg.f64 im))))))
(fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) re (*.f64 (neg.f64 im) re))
(fma.f64 re (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (*.f64 re (neg.f64 im)))
(+.f64 (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) re) (*.f64 (neg.f64 im) re))
(+.f64 (*.f64 re (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im)) (*.f64 re (neg.f64 im)))
(*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) im)
(*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1 binary64) (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) #s(literal 2 binary64)) (*.f64 (neg.f64 im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/36 binary64)) #s(literal 1 binary64)) im)) (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/216 binary64) #s(literal -1 binary64)) im)) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/36 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/36 binary64)) #s(literal 1 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/216 binary64) #s(literal -1 binary64)))) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/36 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) #s(literal -1 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 im #s(literal 1/6 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 re re) #s(literal 1/6 binary64)) im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/36 binary64)) #s(literal 1 binary64)) im) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/216 binary64) #s(literal -1 binary64)) im) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/36 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) #s(literal -1 binary64)))))
(/.f64 (*.f64 im (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/36 binary64)) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) #s(literal -1 binary64)))
(/.f64 (*.f64 im (fma.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/216 binary64) #s(literal -1 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/36 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) #s(literal -1 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) #s(literal 2 binary64)) (*.f64 im im)) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im)))
(/.f64 (fma.f64 (pow.f64 (*.f64 im #s(literal 1/6 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 re re) #s(literal 1/6 binary64)) im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im)))))
(fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im))
(fma.f64 (*.f64 im #s(literal 1/6 binary64)) (*.f64 re re) (neg.f64 im))
(fma.f64 (*.f64 im re) (*.f64 #s(literal 1/6 binary64) re) (neg.f64 im))
(fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im))
(fma.f64 (*.f64 #s(literal 1/6 binary64) re) (*.f64 re im) (neg.f64 im))
(fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im))
(fma.f64 #s(literal -1 binary64) im (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im))
(fma.f64 im (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) (neg.f64 im))
(fma.f64 im #s(literal -1 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im))
(fma.f64 re (*.f64 (*.f64 #s(literal 1/6 binary64) re) im) (neg.f64 im))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im))) (/.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im))))
(-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (*.f64 (neg.f64 im) #s(literal -1 binary64)))
(-.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) im)
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im))))) (/.f64 (pow.f64 (neg.f64 im) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) (*.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im))))))
(+.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im) (neg.f64 im))
(+.f64 (neg.f64 im) (*.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im))
(*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re))
(*.f64 (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)) re)
(*.f64 re (fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re) #s(literal 3 binary64)) (pow.f64 (*.f64 re #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re) (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re) (-.f64 (*.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 re #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))) #s(literal 3 binary64)) (pow.f64 (*.f64 re #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))) (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))) (-.f64 (*.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 re #s(literal 1/2 binary64))) (*.f64 (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))) (*.f64 re #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 re #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re) #s(literal 3 binary64))) (fma.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 re #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re) (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re)) (*.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))) #s(literal 3 binary64))) (fma.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 re #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))) (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))) (*.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) #s(literal 1/4 binary64)) re)) (neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) re)) (neg.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (*.f64 re (fma.f64 #s(literal -1/1728 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/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) #s(literal 1/4 binary64)) re) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) re) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))
(/.f64 (*.f64 re (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) #s(literal 1/4 binary64))) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 re (fma.f64 #s(literal -1/1728 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/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))
(fma.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re (*.f64 re #s(literal 1/2 binary64)))
(fma.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) (*.f64 re #s(literal 1/2 binary64)))
(fma.f64 re #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re))
(fma.f64 re #s(literal 1/2 binary64) (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))))
(fma.f64 #s(literal 1/2 binary64) re (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re))
(fma.f64 #s(literal 1/2 binary64) re (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))))
(+.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re) (*.f64 re #s(literal 1/2 binary64)))
(+.f64 (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))) (*.f64 re #s(literal 1/2 binary64)))
(+.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) re))
(+.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 re (*.f64 #s(literal -1/12 binary64) (*.f64 re re))))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 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/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (-.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))) (*.f64 (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)))) (neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/1728 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/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))) #s(literal 1/8 binary64))) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/1728 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)) #s(literal 1/144 binary64)) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/1728 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/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal -1/1728 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)) #s(literal 1/144 binary64)) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))
(/.f64 (fma.f64 #s(literal -1/1728 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/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64)))))
(fma.f64 (*.f64 #s(literal -1/12 binary64) (neg.f64 re)) (neg.f64 re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 #s(literal -1/12 binary64) re) re #s(literal 1/2 binary64))
(fma.f64 (neg.f64 re) (*.f64 (neg.f64 re) #s(literal -1/12 binary64)) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/12 binary64) (*.f64 re re) #s(literal 1/2 binary64))
(fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64))
(fma.f64 re (*.f64 #s(literal -1/12 binary64) re) #s(literal 1/2 binary64))
(-.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (neg.f64 re) re) #s(literal -1/12 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 re) (*.f64 #s(literal -1/12 binary64) re)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/12 binary64) (*.f64 re re)))
(+.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(+.f64 (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64)) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(+.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(+.f64 (/.f64 (*.f64 #s(literal -1/1728 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 1/144 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) #s(literal -1/24 binary64))))))
(+.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 re re)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/12 binary64) (*.f64 re re)))
(*.f64 #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)) #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
#s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re))
(*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)
(*.f64 re #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)))
#s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re))
(*.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64))
(*.f64 #s(literal -2 binary64) (sinh.f64 im))
(*.f64 (sinh.f64 im) #s(literal -2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (/.f64 (fma.f64 #s(literal -1 binary64) 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 (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 im) (sinh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (sinh.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 (fma.f64 #s(literal -2 binary64) (sinh.f64 im) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal -2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))))) (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 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.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 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (*.f64 (fma.f64 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))) (pow.f64 (exp.f64 im) #s(literal 3 binary64)))) (*.f64 (fma.f64 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -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 (*.f64 (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (exp.f64 (neg.f64 im))) (*.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (cosh.f64 im) (sinh.f64 im)))) #s(literal 1 binary64))) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))
(/.f64 (-.f64 (*.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 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im))))) (*.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 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (*.f64 (fma.f64 (cosh.f64 im) (cosh.f64 im) (fma.f64 (sinh.f64 im) (sinh.f64 im) (*.f64 (cosh.f64 im) (sinh.f64 im)))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im))))))
(/.f64 (-.f64 (*.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))) (exp.f64 (neg.f64 im))) (*.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))))) #s(literal 1 binary64))) (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))))
(/.f64 (-.f64 (*.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 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im))))) (*.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 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (*.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))))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im))))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 im))) (*.f64 (exp.f64 im) #s(literal 1 binary64))) #s(literal 1 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im))))) (*.f64 (exp.f64 im) (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (*.f64 (exp.f64 im) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im))))))
(/.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 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im))))) (*.f64 (neg.f64 (exp.f64 im)) (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (*.f64 (neg.f64 (exp.f64 im)) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im))))))
(/.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) (sinh.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 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal -4 binary64))
(/.f64 (fma.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))) #s(literal -4 binary64))
(/.f64 (fma.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -2 binary64) (*.f64 #s(literal -2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal -2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 (fma.f64 (sinh.f64 im) #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))) (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 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (*.f64 #s(literal -2 binary64) (sinh.f64 im))) (*.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 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64))))
(neg.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)))
(-.f64 (-.f64 (exp.f64 (neg.f64 im)) (cosh.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 (exp.f64 im) (*.f64 #s(literal 2 binary64) (cosh.f64 im)) (pow.f64 (exp.f64 im) #s(literal -2 binary64)))) (/.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)))))
(-.f64 (cosh.f64 im) (+.f64 (sinh.f64 im) (exp.f64 im)))
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
(+.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))) (/.f64 (*.f64 (neg.f64 (exp.f64 im)) (exp.f64 im)) (*.f64 #s(literal 2 binary64) (cosh.f64 im))))
(+.f64 (sinh.f64 (neg.f64 im)) (sinh.f64 (neg.f64 im)))
(+.f64 (cosh.f64 im) (-.f64 (sinh.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64))) #s(literal -2 binary64)) (sinh.f64 im))
(*.f64 (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64))) #s(literal 2 binary64)) (sinh.f64 (neg.f64 im)))
(*.f64 #s(literal -2 binary64) (*.f64 (sinh.f64 im) #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64)))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64))) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))
(*.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64))))
(*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) (neg.f64 #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (neg.f64 im)) #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64)))))
(neg.f64 (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64))) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))
(*.f64 (sinh.f64 im) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (/.f64 (+.f64 im im) #s(literal 2 binary64))) #s(literal 1 binary64)))
(*.f64 #s(literal 2 binary64) (sinh.f64 im))
(/.f64 (+.f64 (pow.f64 (-.f64 (exp.f64 im) (cosh.f64 im)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (-.f64 (exp.f64 im) (cosh.f64 im)) (-.f64 (exp.f64 im) (cosh.f64 im)) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (-.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 im)))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (-.f64 (sinh.f64 im) (exp.f64 (neg.f64 im))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (*.f64 (-.f64 (sinh.f64 im) (exp.f64 (neg.f64 im))) (-.f64 (sinh.f64 im) (exp.f64 (neg.f64 im)))) (*.f64 (cosh.f64 im) (-.f64 (sinh.f64 im) (exp.f64 (neg.f64 im)))))))
(/.f64 (fma.f64 #s(literal -2 binary64) (sinh.f64 im) (*.f64 #s(literal -2 binary64) (sinh.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 (exp.f64 im) (exp.f64 im) (+.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64)))) (neg.f64 (-.f64 (sinh.f64 im) (sinh.f64 im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (fma.f64 (sinh.f64 im) #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (fma.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))))) #s(literal -4 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))) #s(literal -2 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 1 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 (exp.f64 (neg.f64 im)) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (*.f64 (exp.f64 (neg.f64 im)) (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 (*.f64 #s(literal 1 binary64) (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 (exp.f64 (neg.f64 im)) (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))))) (*.f64 (exp.f64 (neg.f64 im)) (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 (-.f64 (*.f64 #s(literal 1 binary64) (exp.f64 im)) (*.f64 (exp.f64 (neg.f64 im)) #s(literal 1 binary64))) #s(literal 1 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (exp.f64 im))) (*.f64 (exp.f64 (neg.f64 im)) #s(literal -1 binary64))) (*.f64 (exp.f64 (neg.f64 im)) (neg.f64 (exp.f64 im))))
(/.f64 (-.f64 (*.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 (fma.f64 (cosh.f64 im) (cosh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 im)))) (-.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))) (*.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 im)))) (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 (*.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 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (*.f64 (cosh.f64 im) (sinh.f64 (neg.f64 im)))))) (*.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 im)))) (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (neg.f64 im)) #s(literal 3 binary64))))) (*.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 im)))) (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 (-.f64 (*.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (exp.f64 im)) (*.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 im)))) #s(literal 1 binary64))) (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))))
(/.f64 (-.f64 (*.f64 (+.f64 (pow.f64 (cosh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (neg.f64 (exp.f64 im))) (*.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 im)))) #s(literal -1 binary64))) (*.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 im)))) (neg.f64 (exp.f64 im))))
(/.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) (sinh.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 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal -4 binary64))
(/.f64 (fma.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (sinh.f64 im)))) #s(literal -4 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 (exp.f64 im) (exp.f64 im) (+.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))) (-.f64 (sinh.f64 im) (sinh.f64 im)))
(/.f64 (+.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (pow.f64 (sinh.f64 im) #s(literal 3 binary64))) (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (sinh.f64 im) #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 (fma.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64)))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))
(fma.f64 (sinh.f64 im) #s(literal 1 binary64) (sinh.f64 im))
(fma.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 im) #s(literal 2 binary64)) (sinh.f64 im))
(-.f64 (/.f64 (pow.f64 (exp.f64 im) #s(literal 3 binary64)) (fma.f64 (exp.f64 im) (exp.f64 im) (+.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) #s(literal 1 binary64)))) (/.f64 (pow.f64 (exp.f64 im) #s(literal -3 binary64)) (fma.f64 (exp.f64 im) (exp.f64 im) (+.f64 (pow.f64 (exp.f64 im) #s(literal -2 binary64)) #s(literal 1 binary64)))))
(-.f64 (/.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (-.f64 (sinh.f64 im) (sinh.f64 im))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (-.f64 (sinh.f64 im) (sinh.f64 im))))
(-.f64 (-.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 (neg.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 (exp.f64 im) (exp.f64 (neg.f64 im)))
(+.f64 (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))))) (/.f64 (pow.f64 (sinh.f64 im) #s(literal 3 binary64)) (fma.f64 (sinh.f64 im) (sinh.f64 im) (-.f64 (pow.f64 (sinh.f64 im) #s(literal 2 binary64)) (pow.f64 (sinh.f64 im) #s(literal 2 binary64))))))
(+.f64 (/.f64 (*.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal 4 binary64)))
(+.f64 (-.f64 (exp.f64 im) (cosh.f64 im)) (sinh.f64 im))
(+.f64 (cosh.f64 im) (-.f64 (sinh.f64 im) (exp.f64 (neg.f64 im))))
(+.f64 (sinh.f64 im) (sinh.f64 im))
(*.f64 (sinh.f64 im) #s(literal 1 binary64))
(*.f64 #s(literal 2 binary64) (/.f64 (sinh.f64 im) #s(literal 2 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (/.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (/.f64 (sinh.f64 im) #s(literal 2 binary64)) (/.f64 (sinh.f64 im) #s(literal 2 binary64)) (-.f64 (*.f64 (/.f64 (sinh.f64 im) #s(literal 2 binary64)) (/.f64 (sinh.f64 im) #s(literal 2 binary64))) (*.f64 (/.f64 (sinh.f64 im) #s(literal 2 binary64)) (/.f64 (sinh.f64 im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (exp.f64 im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (exp.f64 (neg.f64 im)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (sinh.f64 im) #s(literal 2 binary64) (*.f64 (sinh.f64 im) #s(literal 2 binary64))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal -2 binary64) (sinh.f64 im)) #s(literal -2 binary64))
(/.f64 (*.f64 (sinh.f64 im) #s(literal 2 binary64)) #s(literal 2 binary64))
(sinh.f64 im)
(-.f64 (/.f64 (-.f64 (exp.f64 im) (cosh.f64 im)) #s(literal 2 binary64)) (/.f64 (sinh.f64 (neg.f64 im)) #s(literal 2 binary64)))
(-.f64 (/.f64 (exp.f64 im) #s(literal 2 binary64)) (/.f64 (exp.f64 (neg.f64 im)) #s(literal 2 binary64)))
(+.f64 (/.f64 (-.f64 (exp.f64 im) (cosh.f64 im)) #s(literal 2 binary64)) (/.f64 (sinh.f64 im) #s(literal 2 binary64)))
(+.f64 (/.f64 (cosh.f64 im) #s(literal 2 binary64)) (/.f64 (-.f64 (sinh.f64 im) (exp.f64 (neg.f64 im))) #s(literal 2 binary64)))
(+.f64 (/.f64 (sinh.f64 im) #s(literal 2 binary64)) (/.f64 (sinh.f64 im) #s(literal 2 binary64)))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) (/.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) (-.f64 (*.f64 (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))) (*.f64 (/.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/36 binary64) (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal -1/120 binary64) (*.f64 im im)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/36 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64)) #s(literal -1/216 binary64)))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64)) #s(literal 1/36 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64)) (-.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 im im)) #s(literal -1/6 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))) (*.f64 (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))) #s(literal -1/216 binary64))) (*.f64 (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))))
(/.f64 (-.f64 #s(literal 1/36 binary64) (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)))) (-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal -1/120 binary64) (*.f64 im im))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 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 im #s(literal 6 binary64)) #s(literal -1/216 binary64))) (neg.f64 (+.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64)) #s(literal -1/216 binary64))) (neg.f64 (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 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 im #s(literal 6 binary64)) #s(literal -1/216 binary64)) (+.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/720 binary64)))))
(/.f64 (fma.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64)) #s(literal -1/216 binary64)) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 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 #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 #s(literal 1/36 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal -1/120 binary64) (*.f64 im im)))) (/.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) (-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal -1/120 binary64) (*.f64 im im)))))
(-.f64 (/.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 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 (neg.f64 (*.f64 im im)) #s(literal -1/120 binary64)))
(-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) (*.f64 im im)))
(+.f64 (/.f64 #s(literal -1/216 binary64) (+.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) (/.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))))
(+.f64 (/.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (+.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) (/.f64 #s(literal -1/216 binary64) (+.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))))
(+.f64 (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) (/.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))))
(+.f64 (/.f64 (*.f64 #s(literal -1/1728000 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 im im) #s(literal 1/720 binary64))))) (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal 1/14400 binary64) (pow.f64 im #s(literal 4 binary64)) (-.f64 #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)))
(*.f64 #s(literal 1/6 binary64) re)
(*.f64 re #s(literal 1/6 binary64))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))
(*.f64 #s(literal -1/3 binary64) im)
(*.f64 im #s(literal -1/3 binary64))
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re)
(*.f64 re (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/144 binary64)) re)) (neg.f64 (+.f64 #s(literal 1/12 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 re re)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/1728 binary64)) re)) (neg.f64 (+.f64 (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/144 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/144 binary64)))) (neg.f64 (+.f64 #s(literal 1/12 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 re re)))))
(/.f64 (neg.f64 (*.f64 re (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/1728 binary64)))) (neg.f64 (+.f64 (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/144 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/144 binary64)) re) (+.f64 #s(literal 1/12 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 re re))))
(/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/1728 binary64)) re) (+.f64 (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/144 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (*.f64 re (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/144 binary64))) (+.f64 #s(literal 1/12 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 re re))))
(/.f64 (*.f64 re (-.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/1728 binary64))) (+.f64 (+.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 re re)) #s(literal 1/144 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64)))))
#s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))
(/.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 re))) (neg.f64 (neg.f64 re)))
(/.f64 (neg.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) re))) (neg.f64 (neg.f64 re)))
(/.f64 (fabs.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 re))) re)
(/.f64 (fabs.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) re))) re)
(/.f64 (fabs.f64 (/.f64 #s(literal 1/2 binary64) re)) re)
(/.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 re)) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) re)) (neg.f64 re))
(/.f64 (/.f64 #s(literal 1/2 binary64) re) re)
(/.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 re) re))
(/.f64 #s(literal 1/2 binary64) (*.f64 re re))
(neg.f64 (/.f64 #s(literal -1/2 binary64) (*.f64 re re)))
(sqrt.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 4 binary64))))
(fabs.f64 (/.f64 #s(literal -1/2 binary64) (*.f64 re re)))
(fabs.f64 (neg.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re))))
(fabs.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)))
#s(approx (* 1/2 (sin re)) (*.f64 re #s(literal 1/2 binary64)))

eval528.0ms (5.3%)

Memory
-12.4MiB live, 74.3MiB allocated
Compiler

Compiled 15 641 to 2 143 computations (86.3% saved)

prune306.0ms (3.1%)

Memory
5.6MiB live, 45.1MiB allocated
Pruning

33 alts after pruning (27 fresh and 6 done)

PrunedKeptTotal
New39216408
Fresh21113
Picked235
Done134
Total39733430
Accuracy
100.0%
Counts
430 → 33
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.5%
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
68.6%
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
50.6%
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (/.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
57.3%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) #s(approx (* (- (* (* im im) -1/3) 2) im) (*.f64 (+.f64 (/.f64 #s(literal -2 binary64) (*.f64 im im)) #s(literal -1/3 binary64)) (pow.f64 im #s(literal 3 binary64))))))
64.5%
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
62.6%
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
59.1%
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
63.0%
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64)) re) re) #s(literal 1/12 binary64)) (*.f64 re #s(literal 1/2 binary64)))) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
63.5%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
61.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
67.0%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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)))
64.7%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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.7%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
51.5%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
25.5%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
59.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
59.1%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
62.6%
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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)))
83.0%
#s(approx (* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
52.0%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
41.6%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)) im))
62.6%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
42.4%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
41.7%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
37.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
25.5%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) #s(approx (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64)))) im))
62.6%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
41.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
41.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
41.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
41.7%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
41.8%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
24.7%
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
Compiler

Compiled 2 625 to 1 126 computations (57.1% saved)

regimes120.0ms (1.2%)

Memory
6.7MiB live, 45.1MiB allocated
Counts
51 → 1
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) #s(approx (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64)))) im))
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
#s(approx (* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (*.f64 (sin.f64 re) #s(approx (* 2 (sinh (neg 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(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64)) re) re) #s(literal 1/12 binary64)) (*.f64 re #s(literal 1/2 binary64)))) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 #s(approx (exp (neg im)) (-.f64 #s(literal 1 binary64) im)) (exp.f64 im)))
(*.f64 (*.f64 (sin.f64 re) (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im)))) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) #s(approx (* (- (* (* im im) -1/3) 2) im) (*.f64 (+.f64 (/.f64 #s(literal -2 binary64) (*.f64 im im)) #s(literal -1/3 binary64)) (pow.f64 im #s(literal 3 binary64))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
(*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (/.f64 (*.f64 (sin.f64 re) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64))))
(/.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (*.f64 #s(literal -3 binary64) im))) (sin.f64 re)) #s(literal 1/2 binary64)) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (*.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 (neg.f64 im))) (fma.f64 #s(literal 2 binary64) (cosh.f64 (*.f64 #s(literal -2 binary64) im)) #s(literal 1 binary64)))))
Outputs
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
Calls

6 calls:

57.0ms
(sin.f64 re)
13.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
13.0ms
re
13.0ms
im
10.0ms
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Results
AccuracySegmentsBranch
99.9%1re
99.9%1im
99.9%1(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
99.9%1(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
99.9%1(sin.f64 re)
99.9%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes198.0ms (2%)

Memory
-19.9MiB live, 67.6MiB allocated
Counts
42 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) #s(approx (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64)))) im))
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
#s(approx (* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (*.f64 (sin.f64 re) #s(approx (* 2 (sinh (neg 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(literal 1/2 binary64))
(*.f64 #s(approx (* 1/2 (sin re)) (fma.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/10080 binary64) (*.f64 re re) #s(literal 1/240 binary64)) re) re) #s(literal 1/12 binary64)) (*.f64 re #s(literal 1/2 binary64)))) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
Outputs
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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:

129.0ms
(sin.f64 re)
24.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
11.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
11.0ms
re
11.0ms
im
Results
AccuracySegmentsBranch
95.5%2re
98.3%3im
98.4%2(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
93.2%1(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
93.2%1(sin.f64 re)
93.2%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes10.0ms (0.1%)

Memory
15.3MiB live, 15.3MiB allocated
Counts
39 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) #s(approx (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64)))) im))
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
#s(approx (* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 re re)) #s(literal 1/120 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64))) re)) im))
Outputs
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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))
Calls

1 calls:

8.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
98.0%2(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 11 to 10 computations (9.1% saved)

regimes50.0ms (0.5%)

Memory
-22.6MiB live, 16.2MiB allocated
Counts
36 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) #s(approx (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64)))) im))
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
#s(approx (* (* (sin re) (* 2 (sinh (neg im)))) 1/2) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
Outputs
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64))))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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:

48.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
99.5%3(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 11 to 10 computations (9.1% saved)

regimes9.0ms (0.1%)

Memory
17.5MiB live, 17.5MiB allocated
Counts
33 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) #s(approx (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64)))) im))
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
Outputs
(*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
99.5%3(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 11 to 10 computations (9.1% saved)

regimes63.0ms (0.6%)

Memory
-5.9MiB live, 112.5MiB allocated
Counts
31 → 3
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) #s(approx (* (+ (* (pow re 4) (- (* 1/5040 (* re re)) 1/120)) (- (* 1/6 (* re re)) 1)) re) (*.f64 (pow.f64 re #s(literal 7 binary64)) #s(literal 1/5040 binary64)))) im))
Outputs
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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:

12.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
11.0ms
re
9.0ms
im
8.0ms
(sin.f64 re)
7.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
81.6%4(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
81.6%4(sin.f64 re)
86.3%2(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
76.0%2re
86.3%2im
95.4%3(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes42.0ms (0.4%)

Memory
-1.6MiB live, 113.6MiB allocated
Counts
29 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/60 binary64) im) im) #s(literal 1/3 binary64)) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (fma.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 re re) #s(literal -1/6 binary64))) (*.f64 re re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))) re)) im))
Outputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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

5 calls:

9.0ms
(sin.f64 re)
9.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
8.0ms
im
7.0ms
(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
6.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
77.3%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
77.3%2(sin.f64 re)
67.0%1im
67.0%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
76.3%2(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Compiler

Compiled 24 to 26 computations (-8.3% saved)

regimes19.0ms (0.2%)

Memory
1.7MiB live, 43.9MiB allocated
Counts
26 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
Calls

2 calls:

10.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
8.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
76.9%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
76.9%2(sin.f64 re)
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes33.0ms (0.3%)

Memory
18.5MiB live, 92.7MiB allocated
Counts
25 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) re) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
Outputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
Calls

4 calls:

9.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
9.0ms
re
7.0ms
(sin.f64 re)
5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
69.4%3re
75.9%2(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
75.9%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
75.9%2(sin.f64 re)
Compiler

Compiled 18 to 20 computations (-11.1% saved)

regimes15.0ms (0.1%)

Memory
-12.9MiB live, 26.3MiB allocated
Counts
21 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
Outputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
Calls

2 calls:

7.0ms
(sin.f64 re)
6.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
Results
AccuracySegmentsBranch
75.9%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
75.9%2(sin.f64 re)
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes23.0ms (0.2%)

Memory
-10.6MiB live, 34.2MiB allocated
Counts
20 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/60 binary64) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 #s(approx (* (- (/ 1/2 (* re re)) 1/12) re) (/.f64 #s(literal 1/2 binary64) re)) re)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
Outputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
Calls

3 calls:

10.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
6.0ms
(sin.f64 re)
6.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
Results
AccuracySegmentsBranch
74.0%2(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
74.0%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
74.0%2(sin.f64 re)
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes10.0ms (0.1%)

Memory
15.1MiB live, 15.1MiB allocated
Counts
15 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
Outputs
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
Calls

2 calls:

5.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
5.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
74.0%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
74.0%2(sin.f64 re)
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes38.0ms (0.4%)

Memory
-17.4MiB live, 20.7MiB allocated
Counts
14 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)))))
Calls

3 calls:

28.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
4.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
4.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
72.9%2(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
72.9%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
72.9%2(sin.f64 re)
Compiler

Compiled 17 to 18 computations (-5.9% saved)

regimes12.0ms (0.1%)

Memory
18.6MiB live, 18.6MiB allocated
Counts
12 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64)) re) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/6 binary64)) im (neg.f64 im)) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 re re)) #s(literal 1 binary64)) re)) im))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
(*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re)))
(*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im)))
Calls

3 calls:

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

Compiled 17 to 18 computations (-5.9% saved)

regimes20.0ms (0.2%)

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

6 calls:

5.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
3.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
3.0ms
(sin.f64 re)
3.0ms
re
3.0ms
im
Results
AccuracySegmentsBranch
41.8%1re
41.8%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
41.8%1im
48.1%2(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
48.2%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
48.2%2(sin.f64 re)
Compiler

Compiled 25 to 28 computations (-12% saved)

regimes5.0ms (0%)

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

2 calls:

2.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
2.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
48.2%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
48.2%2(sin.f64 re)
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes7.0ms (0.1%)

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

2 calls:

5.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
2.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
48.2%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
48.2%2(sin.f64 re)
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes3.0ms (0%)

Memory
6.0MiB live, 6.0MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
Outputs
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
Calls

2 calls:

1.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
1.0ms
(sin.f64 re)
Results
AccuracySegmentsBranch
48.1%2(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
48.1%2(sin.f64 re)
Compiler

Compiled 6 to 8 computations (-33.3% saved)

regimes7.0ms (0.1%)

Memory
14.3MiB live, 14.3MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

6 calls:

1.0ms
(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
1.0ms
(sin.f64 re)
1.0ms
re
1.0ms
im
1.0ms
(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
Results
AccuracySegmentsBranch
37.8%1re
37.8%1im
37.8%1(-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))
37.8%1(*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im)))
37.8%1(*.f64 #s(literal 1/2 binary64) (sin.f64 re))
37.8%1(sin.f64 re)
Compiler

Compiled 25 to 28 computations (-12% saved)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-8.48745182717086e-306
0.0
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-inf
-3.8582481508663803e-14
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.9097130785866e-8
+inf
0.0ms
-8.48745182717086e-306
0.0
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.9097130785866e-8
+inf
0.0ms
-8.48745182717086e-306
0.0
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.9097130785866e-8
+inf
0.0ms
-8.48745182717086e-306
0.0
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.0080301355777886e-15
1.7897064519838656e-14
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.0080301355777886e-15
1.7897064519838656e-14
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.0009664264840625211
4.3394713944638395e-305
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.0009664264840625211
4.3394713944638395e-305
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.713704771901457e-240
2.8903479209810164e-236
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.0009664264840625211
4.3394713944638395e-305
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.0009664264840625211
4.3394713944638395e-305
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.0009664264840625211
4.3394713944638395e-305
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.818930754352335e-7
0.0007038615089905647
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.818930754352335e-7
0.0007038615089905647
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.818930754352335e-7
0.0007038615089905647
Compiler

Compiled 14 to 15 computations (-7.1% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.0009664264840625211
4.3394713944638395e-305
Compiler

Compiled 14 to 15 computations (-7.1% saved)

simplify100.0ms (1%)

Memory
-11.4MiB live, 70.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01971316
13031316
26141316
319091316
454191316
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7906338019816821/1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -inf.0 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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)))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7906338019816821/1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 944473296573929/9444732965739290427392 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7906338019816821/1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 944473296573929/9444732965739290427392 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7906338019816821/1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928 binary64)) (*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 944473296573929/9444732965739290427392 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin.f64 re) #s(literal 6338253001141147/1267650600228229401496703205376 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin.f64 re) #s(literal 6338253001141147/1267650600228229401496703205376 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))) (*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))))
(if (<=.f64 (sin.f64 re) #s(literal 2346099009001469/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im)))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))))))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))))))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re))) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))))
(if (<=.f64 (sin.f64 re) #s(literal 4722366482869645/4722366482869645213696 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)))
(if (<=.f64 (sin.f64 re) #s(literal 4722366482869645/4722366482869645213696 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)))
(if (<=.f64 (sin.f64 re) #s(literal 4722366482869645/4722366482869645213696 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))
Outputs
(*.f64 (sinh.f64 (neg.f64 im)) (sin.f64 re))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7906338019816821/1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) #s(approx (- (exp (neg 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) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -inf.0 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.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)))
(if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7906338019816821/1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 944473296573929/9444732965739290427392 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (*.f64 (sin.f64 re) im) (fma.f64 (*.f64 #s(literal -1/6 binary64) im) im #s(literal -1 binary64)))) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7906338019816821/1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928 binary64)) (*.f64 (*.f64 (sinh.f64 im) #s(literal -2 binary64)) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 944473296573929/9444732965739290427392 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal -7906338019816821/1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928 binary64)) (*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))) (if (<=.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 re)) (-.f64 (exp.f64 (neg.f64 im)) (exp.f64 im))) #s(literal 944473296573929/9444732965739290427392 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 (neg.f64 (sin.f64 re)) im)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin.f64 re) #s(literal 6338253001141147/1267650600228229401496703205376 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin.f64 re) #s(literal 6338253001141147/1267650600228229401496703205376 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (sin re)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/240 binary64) (*.f64 re re)) #s(literal 1/12 binary64)) (*.f64 re re) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg 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 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))) (*.f64 (neg.f64 #s(approx (* 2 (sinh im)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/2520 binary64) (*.f64 im im) #s(literal 1/60 binary64)) (*.f64 im im) #s(literal 1/3 binary64)) (*.f64 im im) #s(literal 2 binary64)) im))) #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re))))
(if (<=.f64 (sin.f64 re) #s(literal 2346099009001469/234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 (fma.f64 (*.f64 re re) #s(literal -1/12 binary64) #s(literal 1/2 binary64)) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) im) im) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64)) re)) im)))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(approx (+ (* (* re re) -1/12) 1/2) (*.f64 (*.f64 re re) #s(literal -1/12 binary64))) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))))))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (* (sin re) (+ (* (* im im) (+ (* -1/120 (* im im)) -1/6)) -1)) im) (*.f64 (*.f64 im re) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/120 binary64) im) im) #s(literal 1/6 binary64)) (*.f64 im im)) #s(literal 1 binary64))))))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re))) (*.f64 #s(approx (* 1/2 (sin re)) (*.f64 #s(literal 1/2 binary64) re)) #s(approx (- (exp (neg im)) (exp im)) (*.f64 (-.f64 (*.f64 (*.f64 im im) #s(literal -1/3 binary64)) #s(literal 2 binary64)) im))))
(if (<=.f64 (sin.f64 re) #s(literal 4722366482869645/4722366482869645213696 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 (*.f64 im (*.f64 #s(literal 1/6 binary64) re)) re (neg.f64 im)) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)))
(if (<=.f64 (sin.f64 re) #s(literal 4722366482869645/4722366482869645213696 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 re re) im) (neg.f64 im)) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)))
(if (<=.f64 (sin.f64 re) #s(literal 4722366482869645/4722366482869645213696 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 (*.f64 im (fma.f64 (*.f64 #s(literal 1/6 binary64) re) re #s(literal -1 binary64))) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)))
(if (<=.f64 (sin.f64 re) #s(literal -1152921504606847/2305843009213693952 binary64)) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) #s(approx (* (neg (sin re)) im) (*.f64 #s(approx (* im (+ (* (* 1/6 re) re) -1)) (*.f64 (*.f64 (*.f64 im re) re) #s(literal 1/6 binary64))) re))) #s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im)))
#s(approx (* (* 1/2 (sin re)) (- (exp (neg im)) (exp im))) (*.f64 #s(approx (neg (sin re)) (neg.f64 re)) im))

soundness1.9s (18.8%)

Memory
7.7MiB live, 1 277.3MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
064364
0101364
1307358
21959358
08186358
0146434
1474401
21567388
34246378
08228351
02641039
1790922
22675907
36240907
08072873
064375
0101373
1314373
21844361
09165361
01028
01728
14328
226826
3324326
0918726
03241483
111281372
243061354
084931285
044218
072217
1183203
0973203
02761097
1940939
23596902
08042853
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 2 620 to 1 220 computations (53.4% saved)

preprocess411.0ms (4.1%)

Memory
22.9MiB live, 219.6MiB allocated
Remove

(negabs re)

(negabs im)

Compiler

Compiled 2 760 to 508 computations (81.6% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...