Details

Time bar (total: 5.2s)

analyze317.0ms (6.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
37.5%37.5%62.4%0.1%0%0%0%7
37.5%37.5%62.4%0.1%0%0%0%8
50%43.7%43.7%0.1%12.5%0%0%9
50%43.7%43.7%0.1%12.5%0%0%10
57.7%46.8%34.3%0.1%18.7%0%0%11
57.7%46.8%34.3%0.1%18.7%0%0%12
Compiler

Compiled 10 to 7 computations (30% saved)

sample3.6s (69%)

Results
888.0ms5293×body256valid
858.0ms1963×body1024infinite
801.0ms1942×body1024valid
529.0ms2077×body256infinite
250.0ms1048×body512infinite
242.0ms1018×body512valid
5.0msbody2048valid
Bogosity

preprocess188.0ms (3.6%)

Algorithm
egg-herbie
Rules
1578×rational.json-simplify-64
1462×trig.json-simplify-41
772×rational.json-simplify-45
678×rational.json-simplify-1
646×rational.json-simplify-42
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01342
12742
24742
37742
412242
524142
658942
7224342
8472542
022
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (cos.f64 y) (/.f64 (sinh.f64 x) x))
Outputs
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(*.f64 (cos.f64 y) (/.f64 (sinh.f64 x) x))
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify220.0ms (4.2%)

Algorithm
egg-herbie
Rules
1220×rational.json-simplify-1
1206×rational.json-simplify-64
904×rational.json-simplify-46
738×trig.json-simplify-41
660×trig.json-simplify-49
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
11821
22921
34521
46921
513521
633021
7122721
8316321
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
Outputs
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))

eval0.0ms (0%)

Compiler

Compiled 9 to 6 computations (33.3% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
Compiler

Compiled 9 to 6 computations (33.3% saved)

localize9.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
Compiler

Compiled 19 to 6 computations (68.4% saved)

series12.0ms (0.2%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
4.0ms
y
@0
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
3.0ms
y
@-inf
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
2.0ms
y
@inf
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
1.0ms
x
@inf
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
1.0ms
x
@0
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))

rewrite173.0ms (3.3%)

Algorithm
batch-egg-rewrite
Rules
758×rational.json-5
756×exponential.json-3
756×rational.json-1
756×rational.json-2
756×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
18321
231421
3128621
4607321
Stop Event
node limit
Counts
1 → 8
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) (/.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))))))

simplify195.0ms (3.7%)

Algorithm
egg-herbie
Rules
1794×rational.json-simplify-47
914×rational.json-simplify-111
824×rational.json-simplify-2
618×rational.json-simplify-41
554×rational.json-simplify-49
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0701424
11361424
22521404
34891394
417311394
544361382
Stop Event
node limit
Counts
32 → 41
Calls
Call 1
Inputs
(*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) y))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 2)) y)) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) y)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 2)) y)) (+.f64 (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 4)) y)) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) y))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 2)) y)) (+.f64 (*.f64 -1/1440 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 6)) y)) (+.f64 (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 4)) y)) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) y)))))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(cos.f64 x)
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (cos.f64 x))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 y 4))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (cos.f64 x)))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 y 4))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (+.f64 (cos.f64 x) (*.f64 1/5040 (*.f64 (cos.f64 x) (pow.f64 y 6))))))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(+.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(+.f64 0 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)))
(-.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(-.f64 0 (neg.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))
(/.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 1)
(/.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) (/.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))
(pow.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 1)
(neg.f64 (neg.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))
Outputs
(*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) y))
(*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 2)) y)) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) y)))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y)) (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 2)) y)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 2)) y)) (+.f64 (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 4)) y)) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) y))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 2)) y)) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y)) (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 4)) y))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 2)) y)) (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 4)) y))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 2)) y)) (+.f64 (*.f64 -1/1440 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 6)) y)) (+.f64 (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) (pow.f64 x 4)) y)) (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y))) y)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 2)) y)) (+.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y)) (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 4)) y))) (*.f64 -1/1440 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 6)) y))))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y)) (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 4)) y))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 2)) y)) (*.f64 -1/1440 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 6)) y))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 2)) y)) (+.f64 (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 4)) y)) (*.f64 -1/1440 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 6)) y)))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) y)) (+.f64 (*.f64 1/48 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 4)) y)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 2)) y)) (*.f64 -1/1440 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (pow.f64 x 6)) y)))))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(cos.f64 x)
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/6)))
(+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (*.f64 1/6 (pow.f64 y 2))))
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/6 (pow.f64 y 2)) 1))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 y 4))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (cos.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/6)) (+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 4) 1/120))))
(+.f64 (cos.f64 x) (+.f64 (*.f64 (cos.f64 x) (*.f64 1/120 (pow.f64 y 4))) (*.f64 (cos.f64 x) (*.f64 1/6 (pow.f64 y 2)))))
(+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 y 4)) (*.f64 1/6 (pow.f64 y 2)))))
(+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 1/120 (pow.f64 y 4)))))
(*.f64 (cos.f64 x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 1/120 (pow.f64 y 4))) 1))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 y 4))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (+.f64 (cos.f64 x) (*.f64 1/5040 (*.f64 (cos.f64 x) (pow.f64 y 6))))))
(+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 4) 1/120)) (+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/6)) (+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 6) 1/5040)))))
(+.f64 (*.f64 (cos.f64 x) (*.f64 1/120 (pow.f64 y 4))) (+.f64 (*.f64 (cos.f64 x) (*.f64 1/5040 (pow.f64 y 6))) (+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (*.f64 1/6 (pow.f64 y 2))))))
(+.f64 (cos.f64 x) (+.f64 (*.f64 (cos.f64 x) (*.f64 1/120 (pow.f64 y 4))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/5040 (pow.f64 y 6)) (*.f64 1/6 (pow.f64 y 2))))))
(+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 y 4)) (+.f64 (*.f64 1/5040 (pow.f64 y 6)) (*.f64 1/6 (pow.f64 y 2))))))
(+.f64 (cos.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/5040 (pow.f64 y 6)) (+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 1/120 (pow.f64 y 4))))))
(*.f64 (cos.f64 x) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 y 2)) (+.f64 (*.f64 1/5040 (pow.f64 y 6)) (*.f64 1/120 (pow.f64 y 4)))) 1))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(*.f64 1/2 (/.f64 (*.f64 (cos.f64 x) (-.f64 (exp.f64 y) (/.f64 1 (exp.f64 y)))) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 (exp.f64 y) (exp.f64 (neg.f64 y))) (cos.f64 x)) y))
(+.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(+.f64 0 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)))
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(-.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 0)
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(-.f64 0 (neg.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(/.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 1)
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(/.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) (/.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(pow.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y)) 1)
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(neg.f64 (neg.f64 (*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))))
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))

eval16.0ms (0.3%)

Compiler

Compiled 934 to 472 computations (49.5% saved)

prune7.0ms (0.1%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New39241
Fresh000
Picked011
Done000
Total39342
Error
0b
Counts
42 → 3
Alt Table
Click to see full alt table
StatusErrorProgram
0.5b
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (cos.f64 x))
0.0b
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
0.6b
(cos.f64 x)
Compiler

Compiled 26 to 18 computations (30.8% saved)

localize3.0ms (0.1%)

Compiler

Compiled 5 to 3 computations (40% saved)

localize16.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 x) (pow.f64 y 2))
0.2b
(*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))
Compiler

Compiled 36 to 21 computations (41.7% saved)

series6.0ms (0.1%)

Counts
2 → 8
Calls

12 calls:

TimeVariablePointExpression
2.0ms
x
@0
(*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))
1.0ms
x
@inf
(*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))
1.0ms
y
@0
(*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))
1.0ms
y
@inf
(*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))
1.0ms
x
@-inf
(*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))

rewrite130.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
804×rational.json-5
802×exponential.json-3
802×rational.json-1
802×rational.json-2
802×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01140
19940
234640
3140540
4661240
Stop Event
node limit
Counts
2 → 16
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))
(*.f64 (cos.f64 x) (pow.f64 y 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (/.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3)) (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 x) (pow.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (cos.f64 x) (pow.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) (/.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) (*.f64 (cos.f64 x) (pow.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (cos.f64 x) (pow.f64 y 2))))))))

simplify142.0ms (2.7%)

Algorithm
egg-herbie
Rules
1382×rational.json-simplify-49
1062×rational.json-simplify-54
980×rational.json-simplify-41
944×rational.json-simplify-43
720×rational.json-simplify-47
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
066780
1149762
2324720
3740702
42736702
56831702
Stop Event
node limit
Counts
24 → 53
Calls
Call 1
Inputs
(*.f64 1/6 (pow.f64 y 2))
(+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 -1/12 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 1/144 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 -1/12 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))
(+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 y 2) (pow.f64 x 6))) (+.f64 (*.f64 1/144 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 -1/12 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))))
(pow.f64 y 2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 x 2))) (pow.f64 y 2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (pow.f64 y 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (pow.f64 y 2) (*.f64 -1/720 (*.f64 (pow.f64 y 2) (pow.f64 x 6))))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 0)
(+.f64 0 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))))
(-.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 0)
(-.f64 0 (neg.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))))
(/.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 1)
(/.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (/.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3)) (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3))))
(pow.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 1)
(neg.f64 (neg.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))))
(+.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 0)
(+.f64 0 (*.f64 (cos.f64 x) (pow.f64 y 2)))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 0)
(-.f64 0 (neg.f64 (*.f64 (cos.f64 x) (pow.f64 y 2))))
(/.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 1)
(/.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) (/.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) (*.f64 (cos.f64 x) (pow.f64 y 2))))
(pow.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 1)
(neg.f64 (neg.f64 (*.f64 (cos.f64 x) (pow.f64 y 2))))
Outputs
(*.f64 1/6 (pow.f64 y 2))
(+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 -1/12 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))
(+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 -1/12 (pow.f64 (*.f64 y x) 2)))
(*.f64 (pow.f64 y 2) (+.f64 1/6 (*.f64 -1/12 (pow.f64 x 2))))
(+.f64 (*.f64 1/144 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 -1/12 (*.f64 (pow.f64 y 2) (pow.f64 x 2)))))
(+.f64 (*.f64 1/6 (pow.f64 y 2)) (+.f64 (*.f64 -1/12 (pow.f64 (*.f64 y x) 2)) (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 4) 1/144))))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 1/6 (*.f64 -1/12 (pow.f64 x 2)))) (*.f64 (pow.f64 y 2) (*.f64 1/144 (pow.f64 x 4))))
(*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/144 (pow.f64 x 4)) (+.f64 1/6 (*.f64 -1/12 (pow.f64 x 2)))))
(*.f64 (pow.f64 y 2) (+.f64 1/6 (+.f64 (*.f64 1/144 (pow.f64 x 4)) (*.f64 -1/12 (pow.f64 x 2)))))
(+.f64 (*.f64 -1/4320 (*.f64 (pow.f64 y 2) (pow.f64 x 6))) (+.f64 (*.f64 1/144 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 -1/12 (*.f64 (pow.f64 y 2) (pow.f64 x 2))))))
(+.f64 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 4) 1/144)) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 y 2)) (*.f64 -1/12 (pow.f64 (*.f64 y x) 2))) (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 6) -1/4320))))
(+.f64 (*.f64 (pow.f64 y 2) (+.f64 1/6 (*.f64 -1/12 (pow.f64 x 2)))) (+.f64 (*.f64 (pow.f64 y 2) (*.f64 -1/4320 (pow.f64 x 6))) (*.f64 (pow.f64 y 2) (*.f64 1/144 (pow.f64 x 4)))))
(+.f64 (*.f64 (pow.f64 y 2) (*.f64 1/144 (pow.f64 x 4))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/4320 (pow.f64 x 6)) (+.f64 1/6 (*.f64 -1/12 (pow.f64 x 2))))))
(*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/144 (pow.f64 x 4)) (+.f64 1/6 (+.f64 (*.f64 -1/12 (pow.f64 x 2)) (*.f64 -1/4320 (pow.f64 x 6))))))
(*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/144 (pow.f64 x 4)) (+.f64 (*.f64 -1/4320 (pow.f64 x 6)) (+.f64 1/6 (*.f64 -1/12 (pow.f64 x 2))))))
(pow.f64 y 2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 x 2))) (pow.f64 y 2))
(+.f64 (pow.f64 y 2) (*.f64 (pow.f64 (*.f64 y x) 2) -1/2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (pow.f64 y 2)))
(+.f64 (*.f64 (pow.f64 (*.f64 y x) 2) -1/2) (+.f64 (pow.f64 y 2) (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 4) 1/24))))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 4) 1/24)) (*.f64 (pow.f64 (*.f64 y x) 2) -1/2)))
(+.f64 (pow.f64 y 2) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 x 4) 1/24) (*.f64 (pow.f64 x 2) -1/2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 y 2) (pow.f64 x 4))) (+.f64 (pow.f64 y 2) (*.f64 -1/720 (*.f64 (pow.f64 y 2) (pow.f64 x 6))))))
(+.f64 (*.f64 (pow.f64 (*.f64 y x) 2) -1/2) (+.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 6) -1/720)) (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 4) 1/24)))))
(+.f64 (pow.f64 y 2) (+.f64 (+.f64 (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 4) 1/24)) (*.f64 (pow.f64 y 2) (*.f64 (pow.f64 x 6) -1/720))) (*.f64 (pow.f64 (*.f64 y x) 2) -1/2)))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 (*.f64 y x) 2) -1/2) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 x 6) -1/720) (*.f64 (pow.f64 x 4) 1/24)))))
(+.f64 (pow.f64 y 2) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 x 2) -1/2) (+.f64 (*.f64 (pow.f64 x 4) 1/24) (*.f64 (pow.f64 x 6) -1/720)))))
(+.f64 (pow.f64 y 2) (*.f64 (pow.f64 y 2) (+.f64 (+.f64 (*.f64 (pow.f64 x 4) 1/24) (*.f64 (pow.f64 x 2) -1/2)) (*.f64 (pow.f64 x 6) -1/720))))
(+.f64 (pow.f64 y 2) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 (pow.f64 x 6) -1/720) (+.f64 (*.f64 (pow.f64 x 4) 1/24) (*.f64 (pow.f64 x 2) -1/2)))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 0)
(*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x)))
(*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/6))
(*.f64 (pow.f64 y 2) (*.f64 1/6 (cos.f64 x)))
(+.f64 0 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x)))
(*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/6))
(*.f64 (pow.f64 y 2) (*.f64 1/6 (cos.f64 x)))
(-.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 0)
(*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x)))
(*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/6))
(*.f64 (pow.f64 y 2) (*.f64 1/6 (cos.f64 x)))
(-.f64 0 (neg.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x)))
(*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/6))
(*.f64 (pow.f64 y 2) (*.f64 1/6 (cos.f64 x)))
(/.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 1)
(*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x)))
(*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/6))
(*.f64 (pow.f64 y 2) (*.f64 1/6 (cos.f64 x)))
(/.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (/.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3)) (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3))))
(/.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x))) (/.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3)) (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3))))
(/.f64 (*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/6)) (/.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3)) (*.f64 (cos.f64 x) (*.f64 (pow.f64 y 2) 1/3))))
(/.f64 (*.f64 (pow.f64 y 2) (*.f64 1/6 (cos.f64 x))) (/.f64 (*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/3)) (*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/3))))
(/.f64 (*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x))) (/.f64 (*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/3)) (*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/3))))
(pow.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) 1)
(*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x)))
(*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/6))
(*.f64 (pow.f64 y 2) (*.f64 1/6 (cos.f64 x)))
(neg.f64 (neg.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2)))))
(*.f64 1/6 (*.f64 (pow.f64 y 2) (cos.f64 x)))
(*.f64 (pow.f64 y 2) (*.f64 (cos.f64 x) 1/6))
(*.f64 (pow.f64 y 2) (*.f64 1/6 (cos.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 0)
(*.f64 (pow.f64 y 2) (cos.f64 x))
(+.f64 0 (*.f64 (cos.f64 x) (pow.f64 y 2)))
(*.f64 (pow.f64 y 2) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 0)
(*.f64 (pow.f64 y 2) (cos.f64 x))
(-.f64 0 (neg.f64 (*.f64 (cos.f64 x) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (cos.f64 x))
(/.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 1)
(*.f64 (pow.f64 y 2) (cos.f64 x))
(/.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) (/.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) (*.f64 (cos.f64 x) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (cos.f64 x))
(pow.f64 (*.f64 (cos.f64 x) (pow.f64 y 2)) 1)
(*.f64 (pow.f64 y 2) (cos.f64 x))
(neg.f64 (neg.f64 (*.f64 (cos.f64 x) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (cos.f64 x))

eval26.0ms (0.5%)

Compiler

Compiled 1142 to 791 computations (30.7% saved)

prune10.0ms (0.2%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New53053
Fresh000
Picked011
Done022
Total53356
Error
0b
Counts
56 → 3
Alt Table
Click to see full alt table
StatusErrorProgram
0.5b
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (cos.f64 x))
0.0b
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
0.6b
(cos.f64 x)
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes121.0ms (2.3%)

Accuracy

Total -0.6b remaining (-15000.5%)

Threshold costs -0.6b (-15000.5%)

Counts
3 → 1
Calls
Call 1
Inputs
(cos.f64 x)
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 x) (pow.f64 y 2))) (cos.f64 x))
Outputs
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
Calls

5 calls:

106.0ms
y
4.0ms
x
4.0ms
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
3.0ms
(cos.f64 x)
2.0ms
(/.f64 (sinh.f64 y) y)
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
0.0b1(cos.f64 x)
0.0b1(/.f64 (sinh.f64 y) y)
Compiler

Compiled 47 to 29 computations (38.3% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0926
Stop Event
done
saturated
Calls
Call 1
Inputs
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(cos.f64 x)
Outputs
(*.f64 (cos.f64 x) (/.f64 (sinh.f64 y) y))
(cos.f64 x)
Compiler

Compiled 13 to 9 computations (30.8% saved)

soundness0.0ms (0%)

end20.0ms (0.4%)

Compiler

Compiled 11 to 6 computations (45.5% saved)

Profiling

Loading profile data...