2cos (problem 3.3.5)

Time bar (total: 7.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze44.0ms (0.6%)

Memory
-10.2MiB live, 66.9MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50.6%49.4%0%0%0%0
0%0%50.6%49.4%0%0%0%1
0%0%50.6%49.4%0%0%0%2
0%0%25.3%49.4%0%25.3%0%3
0%0%25.3%49.4%0%25.3%0%4
0%0%19%49.4%0%31.6%0%5
0%0%15.8%49.4%0%34.8%0%6
0%0%11.1%49.4%0%39.5%0%7
0%0%8.7%49.4%0%41.9%0%8
0%0%5.9%49.4%0%44.6%0%9
0%0%4.5%49.4%0%46%0%10
0%0%3.1%49.4%0%47.5%0%11
0%0%2.7%49.4%0%47.9%0%12
Compiler

Compiled 27 to 19 computations (29.6% saved)

sample6.8s (93.9%)

Memory
142.4MiB live, 4 983.3MiB allocated
Samples
2.6s26 066×0invalid
2.4s5 654×2valid
438.0ms2 476×1valid
16.0ms126×0valid
Precisions
Click to see histograms. Total time spent on operations: 4.4s
ival-cos: 2.0s (45.1% of total)
const: 558.0ms (12.7% of total)
adjust: 388.0ms (8.8% of total)
ival-mult: 237.0ms (5.4% of total)
ival-sub: 231.0ms (5.3% of total)
ival-fabs: 221.0ms (5% of total)
ival-add: 220.0ms (5% of total)
ival-<=: 207.0ms (4.7% of total)
ival-<: 178.0ms (4.1% of total)
ival-and: 110.0ms (2.5% of total)
exact: 49.0ms (1.1% of total)
ival-assert: 13.0ms (0.3% of total)
Bogosity

explain189.0ms (2.6%)

Memory
-89.7MiB live, 47.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1460-0-(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
20-1(7.7402304935050505 3.3265925618893066e-9)(cos.f64 (+.f64 x eps))
00-0-eps
00-0-(+.f64 x eps)
00-0-(cos.f64 x)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))cancellation1460
cos.f64(cos.f64 (+.f64 x eps))sensitivity11
Confusion
Predicted +Predicted -
+1460
-0110
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+14600
-00110
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0110
1145
21
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
113.0ms322×2valid
33.0ms180×1valid
1.0ms10×0valid
Compiler

Compiled 65 to 28 computations (56.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 113.0ms
ival-cos: 86.0ms (75.8% of total)
adjust: 17.0ms (15% of total)
ival-sub: 6.0ms (5.3% of total)
ival-add: 3.0ms (2.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess2.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 7 to 6 computations (14.3% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.5%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(cos.f64 x)
cost-diff0
(+.f64 x eps)
cost-diff0
(cos.f64 (+.f64 x eps))
cost-diff0
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
(cos.f64 x)
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
(cos.f64 x)

localize75.0ms (1%)

Memory
13.9MiB live, 13.9MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 x eps)
accuracy0.0
(cos.f64 x)
accuracy0.0641035843812187
(cos.f64 (+.f64 x eps))
accuracy32.22503393011589
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Samples
57.0ms161×2valid
11.0ms90×1valid
0.0ms0valid
Compiler

Compiled 38 to 14 computations (63.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 57.0ms
ival-cos: 43.0ms (76.1% of total)
adjust: 9.0ms (15.9% of total)
ival-sub: 3.0ms (5.3% of total)
ival-add: 2.0ms (3.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series3.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated
Counts
4 → 33
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
(cos.f64 x)
Outputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(cos eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
eps
(+ eps x)
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(- (cos (+ eps x)) (cos x))
(cos (+ eps x))
x
(* x (+ 1 (/ eps x)))
(cos x)
(- (cos (- eps (* -1 x))) (cos x))
(cos (- eps (* -1 x)))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(* -1 (* eps (sin x)))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(+ (cos x) (* -1 (* eps (sin x))))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(* eps (+ 1 (/ x eps)))
(- (cos (- x (* -1 eps))) (cos x))
(cos (- x (* -1 eps)))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x))
1.0ms
eps
@inf
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x))
1.0ms
eps
@0
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x))
1.0ms
eps
@-inf
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x))
0.0ms
x
@inf
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x))

simplify0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Algorithm
egg-herbie
Counts
33 → 4
Calls
Call 1
Inputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(cos eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
eps
(+ eps x)
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(- (cos (+ eps x)) (cos x))
(cos (+ eps x))
x
(* x (+ 1 (/ eps x)))
(cos x)
(- (cos (- eps (* -1 x))) (cos x))
(cos (- eps (* -1 x)))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(* -1 (* eps (sin x)))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(+ (cos x) (* -1 (* eps (sin x))))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(* eps (+ 1 (/ x eps)))
(- (cos (- x (* -1 eps))) (cos x))
(cos (- x (* -1 eps)))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
Outputs
(- (cos eps) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(cos.f64 (+.f64 x eps))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(+.f64 x eps)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(cos.f64 x)

rewrite0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
(cos.f64 x)
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
(cos.f64 x)

eval1.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Compiler

Compiled 76 to 14 computations (81.6% saved)

prune3.0ms (0%)

Memory
-38.1MiB live, 1.3MiB allocated
Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New538
Fresh000
Picked011
Done000
Total549
Accuracy
49.8%
Counts
9 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.5%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
4.6%
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
3.6%
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
3.6%
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
Compiler

Compiled 40 to 31 computations (22.5% saved)

simplify0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 x eps)
cost-diff0
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
cost-diff0
(+.f64 x eps)
cost-diff0
(cos.f64 (+.f64 x eps))
cost-diff0
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
cost-diff0
(cos.f64 x)
cost-diff0
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
(cos.f64 x)
x
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
(+.f64 x eps)
x
eps
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
(cos.f64 x)
x
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
(+.f64 x eps)
x
eps

localize80.0ms (1.1%)

Memory
16.0MiB live, 16.0MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 x eps)
accuracy61.08512161326299
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
accuracy0.0
(+.f64 x eps)
accuracy0.0641035843812187
(cos.f64 (+.f64 x eps))
accuracy61.7232437380617
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
accuracy0.0
(cos.f64 x)
accuracy61.72324373798339
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
Samples
59.0ms161×2valid
12.0ms90×1valid
0.0ms0valid
Compiler

Compiled 90 to 20 computations (77.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 57.0ms
ival-cos: 43.0ms (75.7% of total)
adjust: 9.0ms (15.8% of total)
ival-sub: 3.0ms (5.3% of total)
ival-add: 2.0ms (3.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series2.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Counts
6 → 33
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
(cos.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
Outputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(cos eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
eps
(+ eps x)
(- (cos (+ eps x)) (cos x))
(cos x)
(cos (+ eps x))
x
(* x (+ 1 (/ eps x)))
(- (cos (- eps (* -1 x))) (cos x))
(cos (- eps (* -1 x)))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(* -1 (* eps (sin x)))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(+ (cos x) (* -1 (* eps (sin x))))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(* eps (+ 1 (/ x eps)))
(- (cos (- x (* -1 eps))) (cos x))
(cos (- x (* -1 eps)))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
Calls

6 calls:

TimeVariablePointExpression
0.0ms
eps
@-inf
((- (cos (+ x eps)) (cos x)) (cos x) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (- (cos (+ x eps)) (cos x)))
0.0ms
eps
@inf
((- (cos (+ x eps)) (cos x)) (cos x) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (- (cos (+ x eps)) (cos x)))
0.0ms
x
@0
((- (cos (+ x eps)) (cos x)) (cos x) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (- (cos (+ x eps)) (cos x)))
0.0ms
x
@-inf
((- (cos (+ x eps)) (cos x)) (cos x) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (- (cos (+ x eps)) (cos x)))
0.0ms
x
@inf
((- (cos (+ x eps)) (cos x)) (cos x) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (- (cos (+ x eps)) (cos x)))

simplify0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Algorithm
egg-herbie
Counts
33 → 6
Calls
Call 1
Inputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(cos eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
eps
(+ eps x)
(- (cos (+ eps x)) (cos x))
(cos x)
(cos (+ eps x))
x
(* x (+ 1 (/ eps x)))
(- (cos (- eps (* -1 x))) (cos x))
(cos (- eps (* -1 x)))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(* -1 (* eps (sin x)))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(+ (cos x) (* -1 (* eps (sin x))))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(* eps (+ 1 (/ x eps)))
(- (cos (- x (* -1 eps))) (cos x))
(cos (- x (* -1 eps)))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
Outputs
(- (cos eps) 1)
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(cos.f64 x)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(cos.f64 (+.f64 x eps))
1
(+.f64 x eps)
(+ 1 (* -1/2 (pow x 2)))
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))

rewrite0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
(cos.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
(cos.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))

eval1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Compiler

Compiled 152 to 18 computations (88.2% saved)

prune3.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated
Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New11011
Fresh000
Picked033
Done011
Total11415
Accuracy
49.8%
Counts
15 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.5%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
4.6%
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
3.6%
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
3.6%
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
Compiler

Compiled 80 to 44 computations (45% saved)

regimes6.0ms (0.1%)

Memory
5.0MiB live, 5.0MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Calls

3 calls:

2.0ms
eps
2.0ms
x
2.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
49.5%1x
49.5%1eps
49.5%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes5.0ms (0.1%)

Memory
4.7MiB live, 4.7MiB allocated
Accuracy

Total -1.2b remaining (-1.9%)

Threshold costs -1.2b (-1.9%)

Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (cos.f64 (+.f64 x eps)))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
Calls

3 calls:

2.0ms
eps
2.0ms
x
1.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
4.6%1x
4.6%1eps
4.6%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 9 to 10 computations (-11.1% saved)

simplify4.0ms (0.1%)

Memory
4.3MiB live, 4.3MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (+.f64 x eps))

soundness0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Stop Event
done
Compiler

Compiled 18 to 11 computations (38.9% saved)

preprocess25.0ms (0.3%)

Memory
-23.5MiB live, 16.0MiB allocated
Compiler

Compiled 84 to 64 computations (23.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...