sintan (problem 3.4.5)

Time bar (total: 11.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze251.0ms (2.2%)

Memory
12.7MiB live, 286.8MiB allocated; 34ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%49.9%50.1%0%0%0%0
0%0%49.9%50.1%0%0%0%1
0%0%49.9%50.1%0%0%0%2
0%0%49.9%50.1%0%0%0%3
0%0%49.9%50.1%0%0%0%4
0%0%49.9%50.1%0%0%0%5
0%0%49.9%50.1%0%0%0%6
0%0%49.9%50.1%0%0%0%7
0%0%49.9%50.1%0%0%0%8
0%0%49.9%50.1%0%0%0%9
0%0%49.9%50.1%0%0%0%10
0%0%49.9%50.1%0%0%0%11
0%0%49.9%50.1%0%0%0%12
Compiler

Compiled 17 to 12 computations (29.4% saved)

sample9.3s (82%)

Memory
149.6MiB live, 8 864.0MiB allocated; 2.8s collecting garbage
Samples
6.4s4 544×2valid
1.6s1 291×3valid
767.0ms2 359×1valid
4.0ms62×0valid
Precisions
Click to see histograms. Total time spent on operations: 8.4s
ival-tan: 4.5s (53.7% of total)
ival-sin: 2.5s (30.3% of total)
adjust: 673.0ms (8% of total)
ival-sub: 520.0ms (6.2% of total)
ival-div: 144.0ms (1.7% of total)
ival-assert: 3.0ms (0% of total)
ival-and: 0.0ms (0% of total)
const: 0.0ms (0% of total)
ival-<=: 0.0ms (0% of total)
Bogosity

explain671.0ms (5.9%)

Memory
-24.3MiB live, 825.9MiB allocated; 137ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1750-1(-1.6288256098244054e-105)(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
821(2.2388774365918186e-108)0-(-.f64 eps (tan.f64 eps))
820-0-(-.f64 eps (sin.f64 eps))
00-0-(tan.f64 eps)
00-0-eps
00-0-(sin.f64 eps)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
/.f64(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))u/u1730
(-.f64 eps (sin.f64 eps))underflow174
(-.f64 eps (tan.f64 eps))underflow173
-.f64(-.f64 eps (tan.f64 eps))cancellation830
-.f64(-.f64 eps (sin.f64 eps))cancellation820
/.f64(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))u/n10
(-.f64 eps (sin.f64 eps))underflow174
Confusion
Predicted +Predicted -
+2550
-10
Precision
0.99609375
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+25500
-100
Precision?
0.99609375
Recall?
1.0
Freqs
test
numberfreq
1173
283
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
439.0ms284×2valid
107.0ms86×3valid
25.0ms142×1valid
Compiler

Compiled 57 to 22 computations (61.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 522.0ms
ival-tan: 294.0ms (56.3% of total)
ival-sin: 168.0ms (32.2% of total)
adjust: 34.0ms (6.5% of total)
ival-sub: 19.0ms (3.6% of total)
ival-div: 7.0ms (1.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess235.0ms (2.1%)

Memory
-20.1MiB live, 264.2MiB allocated; 31ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01336
13036
25036
37936
412936
525536
660536
7197136
8659236
069
0119
1179
2209
3259
4349
5569
61069
72269
86829
919099
1048429
081069
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
Outputs
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
Compiler

Compiled 9 to 6 computations (33.3% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
1.1%
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
Compiler

Compiled 9 to 6 computations (33.3% saved)

series6.0ms (0%)

Memory
12.6MiB live, 12.6MiB allocated; 0ms collecting garbage
Counts
6 → 36
Calls
Call 1
Inputs
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
(-.f64 eps (sin.f64 eps))
eps
(sin.f64 eps)
(-.f64 eps (tan.f64 eps))
(tan.f64 eps)
Outputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 -1/2))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* -27/2800 (pow eps 2)))) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* (pow eps 2) (- (* 27/112000 (pow eps 2)) 27/2800)))) 1/2)))
#s(approx (- eps (sin eps)) #s(hole binary64 (* 1/6 (pow eps 3))))
#s(approx (- eps (sin eps)) #s(hole binary64 (* (pow eps 3) (+ 1/6 (* -1/120 (pow eps 2))))))
#s(approx (- eps (sin eps)) #s(hole binary64 (* (pow eps 3) (+ 1/6 (* (pow eps 2) (- (* 1/5040 (pow eps 2)) 1/120))))))
#s(approx (- eps (sin eps)) #s(hole binary64 (* (pow eps 3) (+ 1/6 (* (pow eps 2) (- (* (pow eps 2) (+ 1/5040 (* -1/362880 (pow eps 2)))) 1/120))))))
#s(approx eps #s(hole binary64 eps))
#s(approx (sin eps) #s(hole binary64 eps))
#s(approx (sin eps) #s(hole binary64 (* eps (+ 1 (* -1/6 (pow eps 2))))))
#s(approx (sin eps) #s(hole binary64 (* eps (+ 1 (* (pow eps 2) (- (* 1/120 (pow eps 2)) 1/6))))))
#s(approx (sin eps) #s(hole binary64 (* eps (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/120 (* -1/5040 (pow eps 2)))) 1/6))))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* -1/3 (pow eps 3))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* (pow eps 3) (- (* -2/15 (pow eps 2)) 1/3))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* (pow eps 3) (- (* (pow eps 2) (- (* -17/315 (pow eps 2)) 2/15)) 1/3))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* (pow eps 3) (- (* (pow eps 2) (- (* (pow eps 2) (- (* -62/2835 (pow eps 2)) 17/315)) 2/15)) 1/3))))
#s(approx (tan eps) #s(hole binary64 eps))
#s(approx (tan eps) #s(hole binary64 (* eps (+ 1 (* 1/3 (pow eps 2))))))
#s(approx (tan eps) #s(hole binary64 (* eps (+ 1 (* (pow eps 2) (+ 1/3 (* 2/15 (pow eps 2))))))))
#s(approx (tan eps) #s(hole binary64 (* eps (+ 1 (* (pow eps 2) (+ 1/3 (* (pow eps 2) (+ 2/15 (* 17/315 (pow eps 2))))))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 1))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (* -1 (/ (sin eps) eps))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (pow (sin eps) 2) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 3) (pow (cos eps) 2))))) (+ (* -1 (/ (sin eps) (* eps (cos eps)))) (* -1 (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))))))
#s(approx (- eps (sin eps)) #s(hole binary64 eps))
#s(approx (- eps (sin eps)) #s(hole binary64 (* eps (+ 1 (* -1 (/ (sin eps) eps))))))
#s(approx (sin eps) #s(hole binary64 (sin eps)))
#s(approx (- eps (tan eps)) #s(hole binary64 eps))
#s(approx (- eps (tan eps)) #s(hole binary64 (* eps (+ 1 (* -1 (/ (sin eps) (* eps (cos eps))))))))
#s(approx (tan eps) #s(hole binary64 (/ (sin eps) (cos eps))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (sin eps) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (cos eps)))) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (* -1 (/ (- (* -1 (/ (* (pow (sin eps) 2) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (pow (cos eps) 2)))) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (cos eps))) eps))) (/ (sin eps) (cos eps))) eps)))))
#s(approx (- eps (sin eps)) #s(hole binary64 (* -1 (* eps (- (/ (sin eps) eps) 1)))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* -1 (* eps (- (/ (sin eps) (* eps (cos eps))) 1)))))
Calls

3 calls:

TimeVariablePointExpression
2.0ms
eps
@-inf
((/ (- eps (sin eps)) (- eps (tan eps))) (- eps (sin eps)) eps (sin eps) (- eps (tan eps)) (tan eps))
2.0ms
eps
@inf
((/ (- eps (sin eps)) (- eps (tan eps))) (- eps (sin eps)) eps (sin eps) (- eps (tan eps)) (tan eps))
1.0ms
eps
@0
((/ (- eps (sin eps)) (- eps (tan eps))) (- eps (sin eps)) eps (sin eps) (- eps (tan eps)) (tan eps))

rewrite166.0ms (1.5%)

Memory
15.9MiB live, 250.7MiB allocated; 20ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0208765
0216713
11202686
08326665
Stop Event
iter limit
node limit
iter limit
Counts
42 → 70
Calls
Call 1
Inputs
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
(-.f64 eps (sin.f64 eps))
eps
(sin.f64 eps)
(-.f64 eps (tan.f64 eps))
(tan.f64 eps)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 -1/2))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* -27/2800 (pow eps 2)))) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* (pow eps 2) (- (* 27/112000 (pow eps 2)) 27/2800)))) 1/2)))
#s(approx (- eps (sin eps)) #s(hole binary64 (* 1/6 (pow eps 3))))
#s(approx (- eps (sin eps)) #s(hole binary64 (* (pow eps 3) (+ 1/6 (* -1/120 (pow eps 2))))))
#s(approx (- eps (sin eps)) #s(hole binary64 (* (pow eps 3) (+ 1/6 (* (pow eps 2) (- (* 1/5040 (pow eps 2)) 1/120))))))
#s(approx (- eps (sin eps)) #s(hole binary64 (* (pow eps 3) (+ 1/6 (* (pow eps 2) (- (* (pow eps 2) (+ 1/5040 (* -1/362880 (pow eps 2)))) 1/120))))))
#s(approx eps #s(hole binary64 eps))
#s(approx (sin eps) #s(hole binary64 eps))
#s(approx (sin eps) #s(hole binary64 (* eps (+ 1 (* -1/6 (pow eps 2))))))
#s(approx (sin eps) #s(hole binary64 (* eps (+ 1 (* (pow eps 2) (- (* 1/120 (pow eps 2)) 1/6))))))
#s(approx (sin eps) #s(hole binary64 (* eps (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/120 (* -1/5040 (pow eps 2)))) 1/6))))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* -1/3 (pow eps 3))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* (pow eps 3) (- (* -2/15 (pow eps 2)) 1/3))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* (pow eps 3) (- (* (pow eps 2) (- (* -17/315 (pow eps 2)) 2/15)) 1/3))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* (pow eps 3) (- (* (pow eps 2) (- (* (pow eps 2) (- (* -62/2835 (pow eps 2)) 17/315)) 2/15)) 1/3))))
#s(approx (tan eps) #s(hole binary64 eps))
#s(approx (tan eps) #s(hole binary64 (* eps (+ 1 (* 1/3 (pow eps 2))))))
#s(approx (tan eps) #s(hole binary64 (* eps (+ 1 (* (pow eps 2) (+ 1/3 (* 2/15 (pow eps 2))))))))
#s(approx (tan eps) #s(hole binary64 (* eps (+ 1 (* (pow eps 2) (+ 1/3 (* (pow eps 2) (+ 2/15 (* 17/315 (pow eps 2))))))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 1))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (* -1 (/ (sin eps) eps))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (pow (sin eps) 2) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 3) (pow (cos eps) 2))))) (+ (* -1 (/ (sin eps) (* eps (cos eps)))) (* -1 (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))))))
#s(approx (- eps (sin eps)) #s(hole binary64 eps))
#s(approx (- eps (sin eps)) #s(hole binary64 (* eps (+ 1 (* -1 (/ (sin eps) eps))))))
#s(approx (sin eps) #s(hole binary64 (sin eps)))
#s(approx (- eps (tan eps)) #s(hole binary64 eps))
#s(approx (- eps (tan eps)) #s(hole binary64 (* eps (+ 1 (* -1 (/ (sin eps) (* eps (cos eps))))))))
#s(approx (tan eps) #s(hole binary64 (/ (sin eps) (cos eps))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (sin eps) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (cos eps)))) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (* -1 (/ (- (* -1 (/ (* (pow (sin eps) 2) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (pow (cos eps) 2)))) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (cos eps))) eps))) (/ (sin eps) (cos eps))) eps)))))
#s(approx (- eps (sin eps)) #s(hole binary64 (* -1 (* eps (- (/ (sin eps) eps) 1)))))
#s(approx (- eps (tan eps)) #s(hole binary64 (* -1 (* eps (- (/ (sin eps) (* eps (cos eps))) 1)))))
Outputs
(/.f64 (-.f64 (*.f64 (/.f64 eps (-.f64 eps (tan.f64 eps))) (/.f64 eps (-.f64 eps (tan.f64 eps)))) (*.f64 (/.f64 (sin.f64 eps) (-.f64 eps (tan.f64 eps))) (/.f64 (sin.f64 eps) (-.f64 eps (tan.f64 eps))))) (+.f64 (/.f64 eps (-.f64 eps (tan.f64 eps))) (/.f64 (sin.f64 eps) (-.f64 eps (tan.f64 eps)))))
(/.f64 (-.f64 (pow.f64 (/.f64 eps (-.f64 eps (tan.f64 eps))) #s(literal 3 binary64)) (pow.f64 (/.f64 (sin.f64 eps) (-.f64 eps (tan.f64 eps))) #s(literal 3 binary64))) (fma.f64 (/.f64 eps (-.f64 eps (tan.f64 eps))) (/.f64 eps (-.f64 eps (tan.f64 eps))) (fma.f64 (/.f64 (sin.f64 eps) (-.f64 eps (tan.f64 eps))) (/.f64 (sin.f64 eps) (-.f64 eps (tan.f64 eps))) (*.f64 (/.f64 eps (-.f64 eps (tan.f64 eps))) (/.f64 (sin.f64 eps) (-.f64 eps (tan.f64 eps)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 eps (sin.f64 eps)))) (neg.f64 (neg.f64 (-.f64 eps (tan.f64 eps)))))
(/.f64 (-.f64 (*.f64 eps (-.f64 eps (tan.f64 eps))) (*.f64 (-.f64 eps (tan.f64 eps)) (sin.f64 eps))) (*.f64 (-.f64 eps (tan.f64 eps)) (-.f64 eps (tan.f64 eps))))
(/.f64 (neg.f64 (-.f64 eps (sin.f64 eps))) (neg.f64 (-.f64 eps (tan.f64 eps))))
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
(-.f64 (/.f64 eps (-.f64 eps (tan.f64 eps))) (/.f64 (sin.f64 eps) (-.f64 eps (tan.f64 eps))))
(/.f64 (neg.f64 (-.f64 (*.f64 eps eps) (pow.f64 (sin.f64 eps) #s(literal 2 binary64)))) (neg.f64 (+.f64 eps (sin.f64 eps))))
(/.f64 (neg.f64 (-.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (sin.f64 eps) #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps eps (fma.f64 (sin.f64 eps) (sin.f64 eps) (*.f64 eps (sin.f64 eps))))))
(/.f64 (-.f64 (*.f64 eps eps) (pow.f64 (sin.f64 eps) #s(literal 2 binary64))) (+.f64 eps (sin.f64 eps)))
(/.f64 (-.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (sin.f64 eps) #s(literal 3 binary64))) (fma.f64 eps eps (fma.f64 (sin.f64 eps) (sin.f64 eps) (*.f64 eps (sin.f64 eps)))))
(-.f64 (/.f64 (*.f64 eps eps) (+.f64 eps (sin.f64 eps))) (/.f64 (pow.f64 (sin.f64 eps) #s(literal 2 binary64)) (+.f64 eps (sin.f64 eps))))
(-.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps eps (fma.f64 (sin.f64 eps) (sin.f64 eps) (*.f64 eps (sin.f64 eps))))) (/.f64 (pow.f64 (sin.f64 eps) #s(literal 3 binary64)) (fma.f64 eps eps (fma.f64 (sin.f64 eps) (sin.f64 eps) (*.f64 eps (sin.f64 eps))))))
(-.f64 eps (sin.f64 eps))
eps
(*.f64 (pow.f64 (sin.f64 eps) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 eps) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 eps) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 eps) #s(literal -1 binary64)))
(sin.f64 eps)
(exp.f64 (*.f64 (log.f64 (sin.f64 eps)) #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 (*.f64 eps eps) (pow.f64 (tan.f64 eps) #s(literal 2 binary64)))) (neg.f64 (+.f64 eps (tan.f64 eps))))
(/.f64 (neg.f64 (-.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (tan.f64 eps) #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps eps (fma.f64 (tan.f64 eps) (tan.f64 eps) (*.f64 eps (tan.f64 eps))))))
(/.f64 (-.f64 (*.f64 eps eps) (pow.f64 (tan.f64 eps) #s(literal 2 binary64))) (+.f64 eps (tan.f64 eps)))
(/.f64 (-.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (tan.f64 eps) #s(literal 3 binary64))) (fma.f64 eps eps (fma.f64 (tan.f64 eps) (tan.f64 eps) (*.f64 eps (tan.f64 eps)))))
(-.f64 (/.f64 (*.f64 eps eps) (+.f64 eps (tan.f64 eps))) (/.f64 (pow.f64 (tan.f64 eps) #s(literal 2 binary64)) (+.f64 eps (tan.f64 eps))))
(-.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps eps (fma.f64 (tan.f64 eps) (tan.f64 eps) (*.f64 eps (tan.f64 eps))))) (/.f64 (pow.f64 (tan.f64 eps) #s(literal 3 binary64)) (fma.f64 eps eps (fma.f64 (tan.f64 eps) (tan.f64 eps) (*.f64 eps (tan.f64 eps))))))
(-.f64 eps (tan.f64 eps))
(/.f64 (neg.f64 (neg.f64 (sin.f64 eps))) (neg.f64 (neg.f64 (cos.f64 eps))))
(/.f64 (+.f64 (tan.f64 eps) (tan.f64 (PI.f64))) (-.f64 #s(literal 1 binary64) (*.f64 (tan.f64 eps) (tan.f64 (PI.f64)))))
(/.f64 (neg.f64 (sin.f64 eps)) (neg.f64 (cos.f64 eps)))
(/.f64 (sin.f64 eps) (cos.f64 eps))
(tan.f64 (+.f64 (+.f64 eps (PI.f64)) (PI.f64)))
(tan.f64 (+.f64 eps (PI.f64)))
(tan.f64 eps)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (*.f64 (fma.f64 #s(literal -27/2800 binary64) (*.f64 eps eps) #s(literal 9/40 binary64)) (*.f64 eps eps)) #s(literal 1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 27/112000 binary64) (*.f64 eps eps)) #s(literal 27/2800 binary64)) (*.f64 eps eps) #s(literal 9/40 binary64)) (*.f64 eps eps)) #s(literal 1/2 binary64)))
#s(approx (- eps (sin eps)) (*.f64 (pow.f64 eps #s(literal 3 binary64)) #s(literal 1/6 binary64)))
#s(approx (- eps (sin eps)) (*.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (- eps (sin eps)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/5040 binary64) (*.f64 eps eps)) #s(literal 1/120 binary64)) (*.f64 eps eps) #s(literal 1/6 binary64)) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (- eps (sin eps)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/362880 binary64) (*.f64 eps eps) #s(literal 1/5040 binary64)) (*.f64 eps eps)) #s(literal 1/120 binary64)) (*.f64 eps eps) #s(literal 1/6 binary64)) (pow.f64 eps #s(literal 3 binary64))))
#s(approx eps eps)
#s(approx (sin eps) eps)
#s(approx (sin eps) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 eps eps) #s(literal 1 binary64)) eps))
#s(approx (sin eps) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 eps eps)) #s(literal 1/6 binary64)) (*.f64 eps eps) #s(literal 1 binary64)) eps))
#s(approx (sin eps) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 eps eps) #s(literal 1/120 binary64)) (*.f64 eps eps)) #s(literal 1/6 binary64)) (*.f64 eps eps) #s(literal 1 binary64)) eps))
#s(approx (- eps (tan eps)) (*.f64 #s(literal -1/3 binary64) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (- eps (tan eps)) (*.f64 (-.f64 (*.f64 #s(literal -2/15 binary64) (*.f64 eps eps)) #s(literal 1/3 binary64)) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (- eps (tan eps)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal -17/315 binary64) (*.f64 eps eps)) #s(literal 2/15 binary64)) (*.f64 eps eps)) #s(literal 1/3 binary64)) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (- eps (tan eps)) (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (-.f64 (*.f64 #s(literal -62/2835 binary64) (*.f64 eps eps)) #s(literal 17/315 binary64)) (*.f64 eps eps)) #s(literal 2/15 binary64)) (*.f64 eps eps)) #s(literal 1/3 binary64)) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (tan eps) eps)
#s(approx (tan eps) (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 eps eps) #s(literal 1 binary64)) eps))
#s(approx (tan eps) (*.f64 (fma.f64 (fma.f64 #s(literal 2/15 binary64) (*.f64 eps eps) #s(literal 1/3 binary64)) (*.f64 eps eps) #s(literal 1 binary64)) eps))
#s(approx (tan eps) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 17/315 binary64) (*.f64 eps eps) #s(literal 2/15 binary64)) (*.f64 eps eps) #s(literal 1/3 binary64)) (*.f64 eps eps) #s(literal 1 binary64)) eps))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal 1 binary64))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (fma.f64 (/.f64 (sin.f64 eps) eps) #s(literal -1 binary64) #s(literal 1 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) eps) (tan.f64 eps))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (-.f64 (fma.f64 (/.f64 (-.f64 (neg.f64 (sin.f64 eps)) (neg.f64 (tan.f64 eps))) (*.f64 eps eps)) (tan.f64 eps) (neg.f64 (/.f64 (sin.f64 eps) eps))) #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) eps) (tan.f64 eps))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (-.f64 (fma.f64 (/.f64 (-.f64 (neg.f64 (sin.f64 eps)) (neg.f64 (tan.f64 eps))) (pow.f64 eps #s(literal 3 binary64))) (pow.f64 (tan.f64 eps) #s(literal 2 binary64)) (neg.f64 (/.f64 (sin.f64 eps) eps))) #s(literal -1 binary64)) (fma.f64 (/.f64 #s(literal -1 binary64) eps) (tan.f64 eps) (neg.f64 (*.f64 (/.f64 (-.f64 (neg.f64 (sin.f64 eps)) (neg.f64 (tan.f64 eps))) (*.f64 eps eps)) (tan.f64 eps))))))
#s(approx (- eps (sin eps)) eps)
#s(approx (- eps (sin eps)) (*.f64 (fma.f64 (/.f64 (sin.f64 eps) eps) #s(literal -1 binary64) #s(literal 1 binary64)) eps))
#s(approx (sin eps) (sin.f64 eps))
#s(approx (- eps (tan eps)) eps)
#s(approx (- eps (tan eps)) (*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) eps) (tan.f64 eps) #s(literal 1 binary64)) eps))
#s(approx (tan eps) (tan.f64 eps))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps) #s(literal -1 binary64) #s(literal 1 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (/.f64 (-.f64 (fma.f64 (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps) (tan.f64 eps) (sin.f64 eps)) (tan.f64 eps)) eps) #s(literal -1 binary64) #s(literal 1 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (/.f64 (-.f64 (fma.f64 (/.f64 (-.f64 (neg.f64 (*.f64 (pow.f64 (tan.f64 eps) #s(literal 2 binary64)) (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps))) (/.f64 (*.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) (sin.f64 eps)) (cos.f64 eps))) eps) #s(literal -1 binary64) (sin.f64 eps)) (tan.f64 eps)) eps) #s(literal -1 binary64) #s(literal 1 binary64)))
#s(approx (- eps (sin eps)) (neg.f64 (*.f64 (-.f64 (/.f64 (sin.f64 eps) eps) #s(literal 1 binary64)) eps)))
#s(approx (- eps (tan eps)) (neg.f64 (*.f64 (-.f64 (/.f64 (/.f64 (sin.f64 eps) eps) (cos.f64 eps)) #s(literal 1 binary64)) eps)))

eval42.0ms (0.4%)

Memory
-36.4MiB live, 10.2MiB allocated; 4ms collecting garbage
Compiler

Compiled 1 519 to 349 computations (77% saved)

prune2.0ms (0%)

Memory
6.0MiB live, 6.0MiB allocated; 0ms collecting garbage
Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New74276
Fresh000
Picked101
Done000
Total75277
Accuracy
100.0%
Counts
77 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64)))
99.6%
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
Compiler

Compiled 28 to 20 computations (28.6% saved)

series3.0ms (0%)

Memory
7.1MiB live, 7.1MiB allocated; 0ms collecting garbage
Counts
9 → 18
Calls
Call 1
Inputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 eps eps) #s(literal 9/40 binary64))
(*.f64 eps eps)
eps
#s(literal 9/40 binary64)
#s(literal 1/2 binary64)
Outputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 -1/2))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* -27/2800 (pow eps 2)))) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* (pow eps 2) (- (* 27/112000 (pow eps 2)) 27/2800)))) 1/2)))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (* (* eps eps) 9/40) #s(hole binary64 (* 9/40 (pow eps 2))))
#s(approx (* eps eps) #s(hole binary64 (pow eps 2)))
#s(approx eps #s(hole binary64 eps))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 1))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (* -1 (/ (sin eps) eps))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (pow (sin eps) 2) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 3) (pow (cos eps) 2))))) (+ (* -1 (/ (sin eps) (* eps (cos eps)))) (* -1 (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))))))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(hole binary64 (* 9/40 (pow eps 2))))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(hole binary64 (* (pow eps 2) (- 9/40 (* 1/2 (/ 1 (pow eps 2)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (sin eps) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (cos eps)))) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (* -1 (/ (- (* -1 (/ (* (pow (sin eps) 2) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (pow (cos eps) 2)))) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (cos eps))) eps))) (/ (sin eps) (cos eps))) eps)))))
Calls

3 calls:

TimeVariablePointExpression
1.0ms
eps
@inf
((/ (- eps (sin eps)) (- eps (tan eps))) -1/2 (/ (- eps (sin eps)) (- eps (tan eps))) (- (* (* eps eps) 9/40) 1/2) (* (* eps eps) 9/40) (* eps eps) eps 9/40 1/2)
1.0ms
eps
@-inf
((/ (- eps (sin eps)) (- eps (tan eps))) -1/2 (/ (- eps (sin eps)) (- eps (tan eps))) (- (* (* eps eps) 9/40) 1/2) (* (* eps eps) 9/40) (* eps eps) eps 9/40 1/2)
1.0ms
eps
@0
((/ (- eps (sin eps)) (- eps (tan eps))) -1/2 (/ (- eps (sin eps)) (- eps (tan eps))) (- (* (* eps eps) 9/40) 1/2) (* (* eps eps) 9/40) (* eps eps) eps 9/40 1/2)

rewrite225.0ms (2%)

Memory
-5.3MiB live, 186.4MiB allocated; 24ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0111507
0115466
1673412
06893396
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
27 → 64
Calls
Call 1
Inputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 eps eps) #s(literal 9/40 binary64))
(*.f64 eps eps)
eps
#s(literal 9/40 binary64)
#s(literal 1/2 binary64)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 -1/2))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* -27/2800 (pow eps 2)))) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* (pow eps 2) (- (* 27/112000 (pow eps 2)) 27/2800)))) 1/2)))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (* (* eps eps) 9/40) #s(hole binary64 (* 9/40 (pow eps 2))))
#s(approx (* eps eps) #s(hole binary64 (pow eps 2)))
#s(approx eps #s(hole binary64 eps))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 1))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (* -1 (/ (sin eps) eps))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (pow (sin eps) 2) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 3) (pow (cos eps) 2))))) (+ (* -1 (/ (sin eps) (* eps (cos eps)))) (* -1 (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))))))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(hole binary64 (* 9/40 (pow eps 2))))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(hole binary64 (* (pow eps 2) (- 9/40 (* 1/2 (/ 1 (pow eps 2)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (sin eps) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (cos eps)))) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (* -1 (/ (- (* -1 (/ (* (pow (sin eps) 2) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (pow (cos eps) 2)))) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (cos eps))) eps))) (/ (sin eps) (cos eps))) eps)))))
Outputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/80 binary64) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/80 binary64) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal 9/40 binary64) (fabs.f64 eps)) (fabs.f64 eps) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 9/40 binary64) (neg.f64 eps)) (neg.f64 eps) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 9/40 binary64) eps) eps #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 eps) (*.f64 (fabs.f64 eps) #s(literal 9/40 binary64)) #s(literal -1/2 binary64))
(fma.f64 (neg.f64 eps) (*.f64 (neg.f64 eps) #s(literal 9/40 binary64)) #s(literal -1/2 binary64))
(fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 9/40 binary64) (*.f64 eps eps) #s(literal -1/2 binary64))
(fma.f64 eps (*.f64 #s(literal 9/40 binary64) eps) #s(literal -1/2 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal 1/2 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 3 binary64)) (+.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/80 binary64) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1/8 binary64) (+.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/80 binary64) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64))
(+.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal -1/2 binary64))
(*.f64 (*.f64 #s(literal 9/40 binary64) (fabs.f64 eps)) (fabs.f64 eps))
(*.f64 (*.f64 #s(literal 9/40 binary64) (neg.f64 eps)) (neg.f64 eps))
(*.f64 (*.f64 #s(literal 9/40 binary64) eps) eps)
(*.f64 (fabs.f64 eps) (*.f64 (fabs.f64 eps) #s(literal 9/40 binary64)))
(*.f64 (neg.f64 eps) (*.f64 (neg.f64 eps) #s(literal 9/40 binary64)))
(*.f64 (*.f64 eps eps) #s(literal 9/40 binary64))
(*.f64 #s(literal 9/40 binary64) (*.f64 eps eps))
(*.f64 eps (*.f64 #s(literal 9/40 binary64) eps))
(*.f64 (neg.f64 (fabs.f64 eps)) (neg.f64 (fabs.f64 eps)))
(*.f64 (fabs.f64 (fabs.f64 eps)) (fabs.f64 (fabs.f64 eps)))
(*.f64 (exp.f64 (log.f64 eps)) (exp.f64 (log.f64 eps)))
(*.f64 (neg.f64 (neg.f64 eps)) (neg.f64 (neg.f64 eps)))
(*.f64 (fabs.f64 eps) (fabs.f64 eps))
(*.f64 (neg.f64 eps) (neg.f64 eps))
(*.f64 eps eps)
(pow.f64 (exp.f64 (log.f64 eps)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 eps) #s(literal 2 binary64))
(pow.f64 (neg.f64 eps) #s(literal 2 binary64))
(pow.f64 (*.f64 eps eps) #s(literal 1 binary64))
(pow.f64 eps #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 eps) eps))
(fabs.f64 (*.f64 eps eps))
(+.f64 (cosh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64)))
eps
#s(literal 9/40 binary64)
#s(literal 1/2 binary64)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (fma.f64 #s(literal -27/2800 binary64) (*.f64 eps eps) #s(literal 9/40 binary64)) (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (fma.f64 (-.f64 (*.f64 #s(literal 27/112000 binary64) (*.f64 eps eps)) #s(literal 27/2800 binary64)) (*.f64 eps eps) #s(literal 9/40 binary64)) (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (- (* (* eps eps) 9/40) 1/2) #s(literal -1/2 binary64))
#s(approx (- (* (* eps eps) 9/40) 1/2) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
#s(approx (* (* eps eps) 9/40) (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)))
#s(approx (* eps eps) (*.f64 eps eps))
#s(approx eps eps)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal 1 binary64))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (+.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 eps) (tan.f64 eps)) (*.f64 eps eps)) (tan.f64 eps) (/.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 eps) (tan.f64 eps)) eps)) #s(literal 1 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 eps) (tan.f64 eps)) (pow.f64 eps #s(literal 3 binary64))) (pow.f64 (tan.f64 eps) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (/.f64 (sin.f64 eps) eps))) (neg.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 eps) (tan.f64 eps)) (*.f64 eps eps)) (tan.f64 eps) (/.f64 (tan.f64 eps) eps)))))
#s(approx (- (* (* eps eps) 9/40) 1/2) (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)))
#s(approx (- (* (* eps eps) 9/40) 1/2) (*.f64 (*.f64 (fma.f64 (pow.f64 eps #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 9/40 binary64)) eps) eps))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) (/.f64 (tan.f64 eps) eps) (sin.f64 eps)) (tan.f64 eps)) eps)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (-.f64 (sin.f64 eps) (/.f64 (-.f64 (neg.f64 (*.f64 (pow.f64 (tan.f64 eps) #s(literal 2 binary64)) (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps))) (*.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) (tan.f64 eps))) eps)) (tan.f64 eps)) eps)))

eval7.0ms (0.1%)

Memory
21.3MiB live, 21.3MiB allocated; 0ms collecting garbage
Compiler

Compiled 1 347 to 247 computations (81.7% saved)

prune3.0ms (0%)

Memory
6.5MiB live, 6.5MiB allocated; 0ms collecting garbage
Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New62163
Fresh000
Picked112
Done000
Total63265
Accuracy
100.0%
Counts
65 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
99.6%
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
Compiler

Compiled 27 to 19 computations (29.6% saved)

series2.0ms (0%)

Memory
4.9MiB live, 4.9MiB allocated; 0ms collecting garbage
Counts
6 → 17
Calls
Call 1
Inputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64))
(*.f64 eps eps)
eps
#s(literal 9/40 binary64)
#s(literal -1/2 binary64)
Outputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 -1/2))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* -27/2800 (pow eps 2)))) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* (pow eps 2) (- (* 27/112000 (pow eps 2)) 27/2800)))) 1/2)))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (* eps eps) #s(hole binary64 (pow eps 2)))
#s(approx eps #s(hole binary64 eps))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 1))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (* -1 (/ (sin eps) eps))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (pow (sin eps) 2) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 3) (pow (cos eps) 2))))) (+ (* -1 (/ (sin eps) (* eps (cos eps)))) (* -1 (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))))))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(hole binary64 (* 9/40 (pow eps 2))))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(hole binary64 (* (pow eps 2) (- 9/40 (* 1/2 (/ 1 (pow eps 2)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (sin eps) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (cos eps)))) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (* -1 (/ (- (* -1 (/ (* (pow (sin eps) 2) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (pow (cos eps) 2)))) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (cos eps))) eps))) (/ (sin eps) (cos eps))) eps)))))
Calls

3 calls:

TimeVariablePointExpression
1.0ms
eps
@inf
((/ (- eps (sin eps)) (- eps (tan eps))) (+ (* (* eps eps) 9/40) -1/2) (* eps eps) eps 9/40 -1/2)
1.0ms
eps
@-inf
((/ (- eps (sin eps)) (- eps (tan eps))) (+ (* (* eps eps) 9/40) -1/2) (* eps eps) eps 9/40 -1/2)
1.0ms
eps
@0
((/ (- eps (sin eps)) (- eps (tan eps))) (+ (* (* eps eps) 9/40) -1/2) (* eps eps) eps 9/40 -1/2)

rewrite231.0ms (2%)

Memory
-42.6MiB live, 195.3MiB allocated; 51ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0109473
0111431
1674376
06987368
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
23 → 62
Calls
Call 1
Inputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64))
(*.f64 eps eps)
eps
#s(literal 9/40 binary64)
#s(literal -1/2 binary64)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 -1/2))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* -27/2800 (pow eps 2)))) 1/2)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (* (pow eps 2) (+ 9/40 (* (pow eps 2) (- (* 27/112000 (pow eps 2)) 27/2800)))) 1/2)))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(hole binary64 (- (* 9/40 (pow eps 2)) 1/2)))
#s(approx (* eps eps) #s(hole binary64 (pow eps 2)))
#s(approx eps #s(hole binary64 eps))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 1))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (* -1 (/ (sin eps) eps))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))) (* -1 (/ (sin eps) (* eps (cos eps)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (- (+ 1 (+ (* -1 (/ (sin eps) eps)) (/ (* (pow (sin eps) 2) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 3) (pow (cos eps) 2))))) (+ (* -1 (/ (sin eps) (* eps (cos eps)))) (* -1 (/ (* (sin eps) (- (* -1 (sin eps)) (* -1 (/ (sin eps) (cos eps))))) (* (pow eps 2) (cos eps))))))))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(hole binary64 (* 9/40 (pow eps 2))))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(hole binary64 (* (pow eps 2) (- 9/40 (* 1/2 (/ 1 (pow eps 2)))))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (sin eps) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (cos eps)))) (/ (sin eps) (cos eps))) eps)))))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(hole binary64 (+ 1 (* -1 (/ (- (+ (sin eps) (* -1 (/ (- (* -1 (/ (* (pow (sin eps) 2) (- (sin eps) (/ (sin eps) (cos eps)))) (* eps (pow (cos eps) 2)))) (/ (* (sin eps) (- (sin eps) (/ (sin eps) (cos eps)))) (cos eps))) eps))) (/ (sin eps) (cos eps))) eps)))))
Outputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 eps eps) #s(literal 3 binary64)) #s(literal 729/64000 binary64) #s(literal -1/8 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 eps eps) #s(literal -9/80 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/80 binary64) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/80 binary64) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps eps) #s(literal 3 binary64)) #s(literal 729/64000 binary64) #s(literal -1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 eps eps) #s(literal -9/80 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps eps) #s(literal 3 binary64)) #s(literal 729/64000 binary64) #s(literal -1/8 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 eps eps) #s(literal -9/80 binary64))))
(fma.f64 (*.f64 #s(literal 9/40 binary64) (fabs.f64 eps)) (fabs.f64 eps) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 9/40 binary64) (neg.f64 eps)) (neg.f64 eps) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 9/40 binary64) eps) eps #s(literal -1/2 binary64))
(fma.f64 (fabs.f64 eps) (*.f64 (fabs.f64 eps) #s(literal 9/40 binary64)) #s(literal -1/2 binary64))
(fma.f64 (neg.f64 eps) (*.f64 (neg.f64 eps) #s(literal 9/40 binary64)) #s(literal -1/2 binary64))
(fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 9/40 binary64) (*.f64 eps eps) #s(literal -1/2 binary64))
(fma.f64 eps (*.f64 #s(literal 9/40 binary64) eps) #s(literal -1/2 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal 1/2 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 3 binary64)) (+.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/80 binary64) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1/8 binary64) (+.f64 (fma.f64 (*.f64 eps eps) #s(literal 9/80 binary64) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)))))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64))
(-.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (neg.f64 eps) eps) #s(literal 9/40 binary64)))
(-.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -9/40 binary64) (*.f64 eps eps)))
(-.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 eps) (*.f64 #s(literal 9/40 binary64) eps)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 eps eps) #s(literal -9/80 binary64)))) (/.f64 #s(literal -1/8 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 eps eps) #s(literal -9/80 binary64)))))
(+.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal -1/2 binary64))
(+.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)))
(*.f64 (neg.f64 (fabs.f64 eps)) (neg.f64 (fabs.f64 eps)))
(*.f64 (fabs.f64 (fabs.f64 eps)) (fabs.f64 (fabs.f64 eps)))
(*.f64 (exp.f64 (log.f64 eps)) (exp.f64 (log.f64 eps)))
(*.f64 (neg.f64 (neg.f64 eps)) (neg.f64 (neg.f64 eps)))
(*.f64 (fabs.f64 eps) (fabs.f64 eps))
(*.f64 (neg.f64 eps) (neg.f64 eps))
(*.f64 eps eps)
(pow.f64 (exp.f64 (log.f64 eps)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 eps) #s(literal 2 binary64))
(pow.f64 (neg.f64 eps) #s(literal 2 binary64))
(pow.f64 (*.f64 eps eps) #s(literal 1 binary64))
(pow.f64 eps #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 eps) eps))
(fabs.f64 (*.f64 eps eps))
(+.f64 (cosh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64)))
eps
#s(literal 9/40 binary64)
#s(literal -1/2 binary64)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (fma.f64 #s(literal -27/2800 binary64) (*.f64 eps eps) #s(literal 9/40 binary64)) (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (fma.f64 (-.f64 (*.f64 #s(literal 27/112000 binary64) (*.f64 eps eps)) #s(literal 27/2800 binary64)) (*.f64 eps eps) #s(literal 9/40 binary64)) (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (+ (* (* eps eps) 9/40) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* (* eps eps) 9/40) -1/2) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
#s(approx (* eps eps) (*.f64 eps eps))
#s(approx eps eps)
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal 1 binary64))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (+.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 eps) (tan.f64 eps)) (*.f64 eps eps)) (tan.f64 eps) (/.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 eps) (tan.f64 eps)) eps)) #s(literal 1 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 eps) (tan.f64 eps)) (pow.f64 eps #s(literal 3 binary64))) (pow.f64 (tan.f64 eps) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (/.f64 (sin.f64 eps) eps))) (neg.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1 binary64) (sin.f64 eps) (tan.f64 eps)) (*.f64 eps eps)) (tan.f64 eps) (/.f64 (tan.f64 eps) eps)))))
#s(approx (+ (* (* eps eps) 9/40) -1/2) (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)))
#s(approx (+ (* (* eps eps) 9/40) -1/2) (*.f64 (*.f64 (fma.f64 (pow.f64 eps #s(literal -2 binary64)) #s(literal -1/2 binary64) #s(literal 9/40 binary64)) eps) eps))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) (/.f64 (tan.f64 eps) eps) (sin.f64 eps)) (tan.f64 eps)) eps)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (-.f64 (sin.f64 eps) (/.f64 (-.f64 (neg.f64 (*.f64 (pow.f64 (tan.f64 eps) #s(literal 2 binary64)) (/.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) eps))) (*.f64 (-.f64 (sin.f64 eps) (tan.f64 eps)) (tan.f64 eps))) eps)) (tan.f64 eps)) eps)))

eval11.0ms (0.1%)

Memory
18.4MiB live, 18.4MiB allocated; 0ms collecting garbage
Compiler

Compiled 1 398 to 243 computations (82.6% saved)

prune3.0ms (0%)

Memory
6.7MiB live, 6.7MiB allocated; 0ms collecting garbage
Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New62062
Fresh000
Picked011
Done011
Total62264
Accuracy
100.0%
Counts
64 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
99.6%
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
Compiler

Compiled 80 to 40 computations (50% saved)

regimes3.0ms (0%)

Memory
7.7MiB live, 7.7MiB allocated; 0ms collecting garbage
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (-.f64 (*.f64 (*.f64 eps eps) #s(literal 9/40 binary64)) #s(literal 1/2 binary64)))
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
Outputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
Calls

2 calls:

2.0ms
eps
1.0ms
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
Results
AccuracySegmentsBranch
100.0%1(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
100.0%1eps
Compiler

Compiled 10 to 7 computations (30% saved)

regimes2.0ms (0%)

Memory
4.5MiB live, 4.5MiB allocated; 0ms collecting garbage
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
Outputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
Calls

2 calls:

1.0ms
eps
1.0ms
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
Results
AccuracySegmentsBranch
99.6%1(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
99.6%1eps
Compiler

Compiled 10 to 7 computations (30% saved)

simplify70.0ms (0.6%)

Memory
2.6MiB live, 91.3MiB allocated; 16ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01227
11827
22127
32627
43527
55527
610527
724727
886227
9406927
Stop Event
node limit
Calls
Call 1
Inputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))
Outputs
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) (fma.f64 (*.f64 eps eps) #s(literal 9/40 binary64) #s(literal -1/2 binary64)))
#s(approx (/ (- eps (sin eps)) (- eps (tan eps))) #s(literal -1/2 binary64))

derivations89.0ms (0.8%)

Memory
-10.1MiB live, 34.1MiB allocated; 10ms collecting garbage
Stop Event
done
Compiler

Compiled 27 to 12 computations (55.6% saved)

preprocess15.0ms (0.1%)

Memory
17.8MiB live, 17.8MiB allocated; 0ms collecting garbage
Compiler

Compiled 86 to 48 computations (44.2% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...