sintan (problem 3.4.5)

Time bar (total: 11.2s)

start0.0ms (0%)

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

analyze283.0ms (2.5%)

Memory
3.0MiB live, 322.1MiB allocated; 75ms 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.9%)

Memory
105.4MiB live, 8 700.1MiB allocated; 2.9s collecting garbage
Samples
6.5s4 495×2valid
1.8s1 317×3valid
567.0ms2 386×1valid
4.0ms58×0valid
Precisions
Click to see histograms. Total time spent on operations: 8.1s
ival-tan: 4.7s (58.4% of total)
ival-sin: 2.2s (27.5% of total)
adjust: 688.0ms (8.5% of total)
ival-sub: 338.0ms (4.2% of total)
ival-div: 110.0ms (1.4% 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

explain565.0ms (5%)

Memory
22.8MiB live, 482.6MiB allocated; 125ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1740-3(1.4336221104755089e-103)(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
841(4.7465096116218286e-108)0-(-.f64 eps (tan.f64 eps))
841(4.7465096116218286e-108)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/u1710
(-.f64 eps (sin.f64 eps))underflow171
(-.f64 eps (tan.f64 eps))underflow171
-.f64(-.f64 eps (sin.f64 eps))cancellation850
-.f64(-.f64 eps (tan.f64 eps))cancellation850
Confusion
Predicted +Predicted -
+2560
-00
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+25600
-000
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
1171
285
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
366.0ms258×2valid
102.0ms114×3valid
35.0ms140×1valid
Compiler

Compiled 57 to 22 computations (61.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 473.0ms
ival-tan: 247.0ms (52.2% of total)
ival-sin: 161.0ms (34% of total)
adjust: 35.0ms (7.4% of total)
ival-sub: 23.0ms (4.9% of total)
ival-div: 7.0ms (1.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess226.0ms (2%)

Memory
-5.2MiB live, 129.7MiB allocated; 38ms 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.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
0.3%
(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
Compiler

Compiled 9 to 6 computations (33.3% saved)

series5.0ms (0%)

Memory
6.5MiB live, 6.5MiB 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))

rewrite158.0ms (1.4%)

Memory
14.6MiB live, 148.2MiB allocated; 19ms 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)))

eval6.0ms (0.1%)

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

Compiled 1 519 to 349 computations (77% saved)

prune2.0ms (0%)

Memory
4.8MiB live, 4.8MiB 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.9%
#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
4.1MiB live, 4.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)

rewrite292.0ms (2.6%)

Memory
-52.8MiB live, 115.1MiB allocated; 69ms 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
7.6MiB live, 7.6MiB allocated; 0ms collecting garbage
Compiler

Compiled 1 347 to 247 computations (81.7% saved)

prune2.0ms (0%)

Memory
3.5MiB live, 3.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.9%
#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
3.3MiB live, 3.3MiB 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)
0.0ms
eps
@0
((/ (- eps (sin eps)) (- eps (tan eps))) (+ (* (* eps eps) 9/40) -1/2) (* eps eps) eps 9/40 -1/2)

rewrite183.0ms (1.6%)

Memory
13.8MiB live, 108.2MiB allocated; 11ms 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)))

eval10.0ms (0.1%)

Memory
-36.6MiB live, 8.5MiB allocated; 3ms collecting garbage
Compiler

Compiled 1 398 to 243 computations (82.6% saved)

prune3.0ms (0%)

Memory
4.0MiB live, 4.0MiB 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.9%
#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
4.0MiB live, 4.0MiB 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
2.8MiB live, 2.8MiB 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.9%1(/.f64 (-.f64 eps (sin.f64 eps)) (-.f64 eps (tan.f64 eps)))
99.9%1eps
Compiler

Compiled 10 to 7 computations (30% saved)

simplify47.0ms (0.4%)

Memory
1.9MiB live, 46.1MiB allocated; 6ms 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))

derivations81.0ms (0.7%)

Memory
20.8MiB live, 63.0MiB allocated; 6ms collecting garbage
Stop Event
done
Compiler

Compiled 27 to 12 computations (55.6% saved)

preprocess28.0ms (0.2%)

Memory
-18.6MiB live, 37.3MiB allocated; 10ms 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...