Details

Time bar (total: 23.7s)

analyze907.0ms (3.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%100%0%0%0%0%2
0%0%100%0%0%0%0%3
0%0%100%0%0%0%0%4
0%0%100%0%0%0%0%5
0%0%100%0%0%0%0%6
0%0%100%0%0%0%0%7
0%0%100%0%0%0%0%8
0%0%100%0%0%0%0%9
0%0%100%0%0%0%0%10
0%0%100%0%0%0%0%11
0%0%100%0%0%0%0%12
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample17.9s (75.7%)

Results
10.6s2032×body2048valid
4.5s3183×body1024valid
2.0s1522×body512valid
492.0ms1407×body256valid
293.0ms112×body4096valid
Bogosity

preprocess80.0ms (0.3%)

Algorithm
egg-herbie
Rules
1256×rational.json-simplify-1
1036×trig.json-simplify-41
526×rational.json-simplify-64
442×rational.json-simplify-2
424×rational.json-simplify-46
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0927
11527
22027
32927
44327
56427
615627
772627
8159627
9291927
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Outputs
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Compiler

Compiled 11 to 7 computations (36.4% saved)

simplify72.0ms (0.3%)

Algorithm
egg-herbie
Rules
1256×rational.json-simplify-1
1036×trig.json-simplify-41
526×rational.json-simplify-64
442×rational.json-simplify-2
424×rational.json-simplify-46
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0927
11527
22027
32927
44327
56427
615627
772627
8159627
9291927
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Outputs
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))

eval0.0ms (0%)

Compiler

Compiled 10 to 6 computations (40% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
32.0b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
32.0b
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Compiler

Compiled 10 to 6 computations (40% saved)

localize11.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
1.7b
(-.f64 x (tan.f64 x))
1.7b
(-.f64 x (sin.f64 x))
Compiler

Compiled 23 to 6 computations (73.9% saved)

series4.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
1.0ms
x
@-inf
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
0.0ms
x
@inf
(-.f64 x (tan.f64 x))
0.0ms
x
@0
(-.f64 x (tan.f64 x))
0.0ms
x
@-inf
(-.f64 x (tan.f64 x))

rewrite119.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
968×rational.json-simplify-2
584×rational.json-simplify-47
566×rational.json-5
564×exponential.json-3
564×rational.json-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0949
18049
230449
3116149
4460249
Stop Event
node limit
Counts
3 → 65
Calls
Call 1
Inputs
(-.f64 x (sin.f64 x))
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (sin.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 x (-.f64 (sin.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (-.f64 (sin.f64 x) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (sin.f64 x)) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (-.f64 x (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 x) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 1 (-.f64 x (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (-.f64 x (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 -1 (-.f64 (sin.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (-.f64 -1 (-.f64 x (-.f64 (sin.f64 x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))) (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (sin.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (sin.f64 x)) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sin.f64 x) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (sin.f64 x) x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (tan.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 -1 (-.f64 (tan.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 (tan.f64 x) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (tan.f64 x) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 1 (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 -1 (-.f64 (tan.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (-.f64 -1 (-.f64 -1 (-.f64 (tan.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (tan.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (tan.f64 x) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (tan.f64 x) x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))))

simplify182.0ms (0.8%)

Algorithm
egg-herbie
Rules
944×rational.json-simplify-54
930×rational.json-simplify-2
848×rational.json-simplify-49
830×rational.json-simplify-1
772×rational.json-simplify-44
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02132433
14102363
28552357
321772333
457742309
Stop Event
node limit
Counts
101 → 136
Calls
Call 1
Inputs
(*.f64 1/6 (pow.f64 x 3))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (*.f64 -1/120 (pow.f64 x 5)))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/5040 (pow.f64 x 7)) (*.f64 -1/120 (pow.f64 x 5))))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1/362880 (pow.f64 x 9)) (+.f64 (*.f64 1/5040 (pow.f64 x 7)) (*.f64 -1/120 (pow.f64 x 5)))))
x
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 (*.f64 -1 (sin.f64 x)) x)
x
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(*.f64 -1/3 (pow.f64 x 3))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5))))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
-1/2
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 (sin.f64 x) x))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
1
(+.f64 1 (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 3)))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))))
(+.f64 (-.f64 x (sin.f64 x)) 0)
(+.f64 0 (-.f64 x (sin.f64 x)))
(+.f64 1 (-.f64 x (-.f64 (sin.f64 x) -1)))
(+.f64 (-.f64 x (-.f64 (sin.f64 x) -1)) 1)
(+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (sin.f64 x)))
(*.f64 (-.f64 x (sin.f64 x)) 1)
(*.f64 (-.f64 x (sin.f64 x)) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))
(*.f64 1 (-.f64 x (sin.f64 x)))
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (-.f64 x (sin.f64 x)))
(*.f64 (-.f64 (sin.f64 x) x) -1)
(*.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 1 (-.f64 x (sin.f64 x))))
(*.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (-.f64 x (sin.f64 x))))
(*.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 -1 (-.f64 (sin.f64 x) x)))
(*.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (-.f64 -1 (-.f64 x (-.f64 (sin.f64 x) -1))))
(*.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))
(*.f64 (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))) (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))
(*.f64 -1 (-.f64 (sin.f64 x) x))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))))
(*.f64 (*.f64 (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))))
(/.f64 (-.f64 x (sin.f64 x)) 1)
(/.f64 (-.f64 x (sin.f64 x)) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))
(/.f64 (-.f64 (sin.f64 x) x) -1)
(pow.f64 (-.f64 x (sin.f64 x)) 1)
(neg.f64 (-.f64 (sin.f64 x) x))
(+.f64 (-.f64 x (tan.f64 x)) 0)
(+.f64 0 (-.f64 x (tan.f64 x)))
(+.f64 1 (-.f64 -1 (-.f64 (tan.f64 x) x)))
(+.f64 (-.f64 -1 (-.f64 (tan.f64 x) x)) 1)
(+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))
(*.f64 (-.f64 x (tan.f64 x)) 1)
(*.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))
(*.f64 1 (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (-.f64 x (tan.f64 x)))
(*.f64 (-.f64 (tan.f64 x) x) -1)
(*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 1 (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 -1 (-.f64 (tan.f64 x) x)))
(*.f64 (neg.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (-.f64 -1 (-.f64 -1 (-.f64 (tan.f64 x) x))))
(*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))
(*.f64 (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))))
(*.f64 -1 (-.f64 (tan.f64 x) x))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))))
(*.f64 (*.f64 (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))))
(/.f64 (-.f64 x (tan.f64 x)) 1)
(/.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))
(/.f64 (-.f64 (tan.f64 x) x) -1)
(pow.f64 (-.f64 x (tan.f64 x)) 1)
(neg.f64 (-.f64 (tan.f64 x) x))
(+.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)
(+.f64 0 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(-.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)
(-.f64 0 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) 1)
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(*.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(*.f64 (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))
(pow.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)
(neg.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
Outputs
(*.f64 1/6 (pow.f64 x 3))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (*.f64 -1/120 (pow.f64 x 5)))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/5040 (pow.f64 x 7)) (*.f64 -1/120 (pow.f64 x 5))))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (*.f64 1/5040 (pow.f64 x 7))))
(+.f64 (*.f64 -1/120 (pow.f64 x 5)) (+.f64 (*.f64 1/5040 (pow.f64 x 7)) (*.f64 1/6 (pow.f64 x 3))))
(+.f64 (*.f64 -1/120 (pow.f64 x 5)) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (*.f64 1/5040 (pow.f64 x 7))))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1/362880 (pow.f64 x 9)) (+.f64 (*.f64 1/5040 (pow.f64 x 7)) (*.f64 -1/120 (pow.f64 x 5)))))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (*.f64 1/5040 (pow.f64 x 7))) (*.f64 -1/362880 (pow.f64 x 9))))
(+.f64 (*.f64 1/5040 (pow.f64 x 7)) (+.f64 (+.f64 (*.f64 1/6 (pow.f64 x 3)) (*.f64 -1/120 (pow.f64 x 5))) (*.f64 -1/362880 (pow.f64 x 9))))
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (+.f64 (*.f64 1/5040 (pow.f64 x 7)) (*.f64 -1/362880 (pow.f64 x 9)))))
(+.f64 (*.f64 -1/120 (pow.f64 x 5)) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 1/5040 (pow.f64 x 7)) (*.f64 -1/362880 (pow.f64 x 9)))))
x
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 x (*.f64 -1 (sin.f64 x)))
(+.f64 x (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 x (*.f64 -1 (sin.f64 x)))
(+.f64 x (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 x (*.f64 -1 (sin.f64 x)))
(+.f64 x (neg.f64 (sin.f64 x)))
x
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 x (*.f64 -1 (sin.f64 x)))
(+.f64 x (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 x (*.f64 -1 (sin.f64 x)))
(+.f64 x (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1 (sin.f64 x)) x)
(+.f64 x (*.f64 -1 (sin.f64 x)))
(+.f64 x (neg.f64 (sin.f64 x)))
(*.f64 -1/3 (pow.f64 x 3))
(*.f64 (pow.f64 x 3) -1/3)
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))
(+.f64 (*.f64 (pow.f64 x 3) -1/3) (*.f64 (pow.f64 x 5) -2/15))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5))))
(+.f64 (*.f64 (pow.f64 x 3) -1/3) (+.f64 (*.f64 (pow.f64 x 5) -2/15) (*.f64 (pow.f64 x 7) -17/315)))
(+.f64 (*.f64 (pow.f64 x 5) -2/15) (+.f64 (*.f64 (pow.f64 x 7) -17/315) (*.f64 (pow.f64 x 3) -1/3)))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))))
(+.f64 (*.f64 (pow.f64 x 7) -17/315) (+.f64 (+.f64 (*.f64 (pow.f64 x 3) -1/3) (*.f64 (pow.f64 x 5) -2/15)) (*.f64 (pow.f64 x 9) -62/2835)))
(+.f64 (+.f64 (*.f64 (pow.f64 x 3) -1/3) (*.f64 (pow.f64 x 5) -2/15)) (+.f64 (*.f64 (pow.f64 x 9) -62/2835) (*.f64 (pow.f64 x 7) -17/315)))
(+.f64 (+.f64 (*.f64 (pow.f64 x 5) -2/15) (*.f64 (pow.f64 x 9) -62/2835)) (+.f64 (*.f64 (pow.f64 x 3) -1/3) (*.f64 (pow.f64 x 7) -17/315)))
(+.f64 (*.f64 (pow.f64 x 5) -2/15) (+.f64 (*.f64 (pow.f64 x 7) -17/315) (+.f64 (*.f64 (pow.f64 x 3) -1/3) (*.f64 (pow.f64 x 9) -62/2835))))
(+.f64 (*.f64 (pow.f64 x 3) -1/3) (+.f64 (*.f64 (pow.f64 x 5) -2/15) (+.f64 (*.f64 (pow.f64 x 7) -17/315) (*.f64 (pow.f64 x 9) -62/2835))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
-1/2
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
(-.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 (sin.f64 x) x))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 (sin.f64 x) x))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 1 (neg.f64 (/.f64 (sin.f64 x) x))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(+.f64 1 (*.f64 -1 (-.f64 (/.f64 (sin.f64 x) x) (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))))
(-.f64 (-.f64 1 (/.f64 (sin.f64 x) x)) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 -1 (/.f64 (sin.f64 x) x)))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (*.f64 -1 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (+.f64 -1 (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))))
(-.f64 (+.f64 (-.f64 1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (neg.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (-.f64 (+.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (/.f64 (sin.f64 x) (cos.f64 x)) (sin.f64 x))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))
(-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 1 (+.f64 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (/.f64 (*.f64 (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x)))) (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 1 (+.f64 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (*.f64 -1 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (/.f64 (*.f64 (*.f64 -1 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (+.f64 1 (/.f64 (*.f64 (sin.f64 x) (*.f64 -1 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (/.f64 (*.f64 (*.f64 -1 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2)))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 (+.f64 (-.f64 1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (neg.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (/.f64 (*.f64 (neg.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2)))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (-.f64 (-.f64 (+.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (/.f64 (sin.f64 x) (cos.f64 x)) (sin.f64 x))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (/.f64 (*.f64 (-.f64 (/.f64 (sin.f64 x) (cos.f64 x)) (sin.f64 x)) (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2)))))
1
(+.f64 1 (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))
(+.f64 1 (neg.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))
(-.f64 1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))))
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))))))
(+.f64 1 (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))) (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))))
(+.f64 1 (*.f64 -1 (+.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x) (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))))))
(+.f64 (neg.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)) (-.f64 1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 3)))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))))
(+.f64 1 (+.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))))))
(+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))) (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2)))) 1))
(+.f64 1 (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))) (+.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x) (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))))
(+.f64 (neg.f64 (+.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x) (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (-.f64 1 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2)))))
(+.f64 1 (neg.f64 (+.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x) (+.f64 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))) (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2)))))))
(+.f64 (-.f64 x (sin.f64 x)) 0)
(-.f64 x (sin.f64 x))
(+.f64 0 (-.f64 x (sin.f64 x)))
(-.f64 x (sin.f64 x))
(+.f64 1 (-.f64 x (-.f64 (sin.f64 x) -1)))
(-.f64 x (sin.f64 x))
(+.f64 (-.f64 x (-.f64 (sin.f64 x) -1)) 1)
(-.f64 x (sin.f64 x))
(+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (sin.f64 x)))
(-.f64 x (sin.f64 x))
(*.f64 (-.f64 x (sin.f64 x)) 1)
(-.f64 x (sin.f64 x))
(*.f64 (-.f64 x (sin.f64 x)) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))
(-.f64 x (sin.f64 x))
(*.f64 1 (-.f64 x (sin.f64 x)))
(-.f64 x (sin.f64 x))
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (-.f64 x (sin.f64 x)))
(-.f64 x (sin.f64 x))
(*.f64 (-.f64 (sin.f64 x) x) -1)
(-.f64 x (sin.f64 x))
(*.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 1 (-.f64 x (sin.f64 x))))
(-.f64 x (sin.f64 x))
(*.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (-.f64 x (sin.f64 x))))
(-.f64 x (sin.f64 x))
(*.f64 (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))) (/.f64 -1 (-.f64 (sin.f64 x) x)))
(-.f64 x (sin.f64 x))
(*.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (-.f64 -1 (-.f64 x (-.f64 (sin.f64 x) -1))))
(-.f64 x (sin.f64 x))
(*.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))
(-.f64 x (sin.f64 x))
(*.f64 (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))) (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))
(-.f64 x (sin.f64 x))
(*.f64 -1 (-.f64 (sin.f64 x) x))
(-.f64 x (sin.f64 x))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))))
(-.f64 x (sin.f64 x))
(*.f64 (*.f64 (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (sin.f64 x))) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (*.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x)))))))
(-.f64 x (sin.f64 x))
(/.f64 (-.f64 x (sin.f64 x)) 1)
(-.f64 x (sin.f64 x))
(/.f64 (-.f64 x (sin.f64 x)) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (sin.f64 x))))
(-.f64 x (sin.f64 x))
(/.f64 (-.f64 (sin.f64 x) x) -1)
(-.f64 x (sin.f64 x))
(pow.f64 (-.f64 x (sin.f64 x)) 1)
(-.f64 x (sin.f64 x))
(neg.f64 (-.f64 (sin.f64 x) x))
(-.f64 x (sin.f64 x))
(+.f64 (-.f64 x (tan.f64 x)) 0)
(-.f64 x (tan.f64 x))
(+.f64 0 (-.f64 x (tan.f64 x)))
(-.f64 x (tan.f64 x))
(+.f64 1 (-.f64 -1 (-.f64 (tan.f64 x) x)))
(-.f64 x (tan.f64 x))
(+.f64 (-.f64 -1 (-.f64 (tan.f64 x) x)) 1)
(-.f64 x (tan.f64 x))
(+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))
(-.f64 x (tan.f64 x))
(*.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(*.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))
(-.f64 x (tan.f64 x))
(*.f64 1 (-.f64 x (tan.f64 x)))
(-.f64 x (tan.f64 x))
(*.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (-.f64 x (tan.f64 x)))
(-.f64 x (tan.f64 x))
(*.f64 (-.f64 (tan.f64 x) x) -1)
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 1 (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (/.f64 -1 (-.f64 (tan.f64 x) x)))
(-.f64 x (tan.f64 x))
(*.f64 (neg.f64 (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (-.f64 -1 (-.f64 -1 (-.f64 (tan.f64 x) x))))
(-.f64 x (tan.f64 x))
(*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))))
(-.f64 x (tan.f64 x))
(*.f64 -1 (-.f64 (tan.f64 x) x))
(-.f64 x (tan.f64 x))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x))) (*.f64 (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)) (*.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))))
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 (tan.f64 x) x) (-.f64 (tan.f64 x) x)))
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 (tan.f64 x) x) -1)
(-.f64 x (tan.f64 x))
(pow.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(neg.f64 (-.f64 (tan.f64 x) x))
(-.f64 x (tan.f64 x))
(+.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(+.f64 0 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 0 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(pow.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(neg.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))

eval37.0ms (0.2%)

Compiler

Compiled 3452 to 1124 computations (67.4% saved)

prune25.0ms (0.1%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1297136
Fresh000
Picked011
Done000
Total1298137
Error
0b
Counts
137 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
32.0b
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
32.8b
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
33.1b
(/.f64 x (-.f64 x (tan.f64 x)))
30.7b
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
30.9b
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
30.3b
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
32.8b
1
30.8b
-1/2
Compiler

Compiled 142 to 112 computations (21.1% saved)

localize8.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.3b
(*.f64 9/40 (pow.f64 x 2))
Compiler

Compiled 20 to 16 computations (20% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 9/40 (pow.f64 x 2))
0.0ms
x
@inf
(*.f64 9/40 (pow.f64 x 2))
0.0ms
x
@-inf
(*.f64 9/40 (pow.f64 x 2))

rewrite76.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
15713
217413
360413
4229713
Stop Event
node limit
Counts
1 → 9
Calls
Call 1
Inputs
(*.f64 9/40 (pow.f64 x 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 9/40 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 9/40 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 9/40 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 9/40 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 9/40 (pow.f64 x 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 9/40 (pow.f64 x 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 9/40 (pow.f64 x 2)) (/.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 9/40 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 9/40 (pow.f64 x 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 9/40 (pow.f64 x 2))))))))

simplify152.0ms (0.6%)

Algorithm
egg-herbie
Rules
1690×rational.json-simplify-47
928×rational.json-simplify-54
712×rational.json-simplify-1
702×rational.json-simplify-111
702×rational.json-simplify-104
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
024117
147117
2117117
3344117
41339117
53315117
66305117
Stop Event
node limit
Counts
9 → 10
Calls
Call 1
Inputs
(+.f64 (*.f64 9/40 (pow.f64 x 2)) 0)
(+.f64 0 (*.f64 9/40 (pow.f64 x 2)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 0)
(-.f64 0 (neg.f64 (*.f64 9/40 (pow.f64 x 2))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 9/40 (pow.f64 x 2)))) 1)
(/.f64 (*.f64 9/40 (pow.f64 x 2)) 1)
(/.f64 (*.f64 9/40 (pow.f64 x 2)) (/.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 9/40 (pow.f64 x 2))))
(pow.f64 (*.f64 9/40 (pow.f64 x 2)) 1)
(neg.f64 (neg.f64 (*.f64 9/40 (pow.f64 x 2))))
Outputs
(+.f64 (*.f64 9/40 (pow.f64 x 2)) 0)
(*.f64 9/40 (pow.f64 x 2))
(+.f64 0 (*.f64 9/40 (pow.f64 x 2)))
(*.f64 9/40 (pow.f64 x 2))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 0)
(*.f64 9/40 (pow.f64 x 2))
(-.f64 0 (neg.f64 (*.f64 9/40 (pow.f64 x 2))))
(*.f64 9/40 (pow.f64 x 2))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 9/40 (pow.f64 x 2)))) 1)
(*.f64 9/40 (pow.f64 x 2))
(/.f64 (*.f64 9/40 (pow.f64 x 2)) 1)
(*.f64 9/40 (pow.f64 x 2))
(/.f64 (*.f64 9/40 (pow.f64 x 2)) (/.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 9/40 (pow.f64 x 2))))
(*.f64 9/40 (pow.f64 x 2))
(pow.f64 (*.f64 9/40 (pow.f64 x 2)) 1)
(*.f64 9/40 (pow.f64 x 2))
(neg.f64 (neg.f64 (*.f64 9/40 (pow.f64 x 2))))
(*.f64 9/40 (pow.f64 x 2))

localize6.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 x (-.f64 x (tan.f64 x)))
1.7b
(-.f64 x (tan.f64 x))
Compiler

Compiled 14 to 4 computations (71.4% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(/.f64 x (-.f64 x (tan.f64 x)))
0.0ms
x
@inf
(/.f64 x (-.f64 x (tan.f64 x)))
0.0ms
x
@0
(/.f64 x (-.f64 x (tan.f64 x)))

rewrite79.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
16217
223317
383417
4316817
Stop Event
node limit
Counts
1 → 15
Calls
Call 1
Inputs
(/.f64 x (-.f64 x (tan.f64 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))))

simplify184.0ms (0.8%)

Algorithm
egg-herbie
Rules
1312×rational.json-simplify-111
830×rational.json-simplify-1
690×rational.json-simplify-55
664×rational.json-simplify-47
554×rational.json-simplify-104
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071789
1138789
2244789
3765789
43389789
57122789
Stop Event
node limit
Counts
27 → 34
Calls
Call 1
Inputs
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(+.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))
(-.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(-.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
Outputs
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (*.f64 (pow.f64 x 2) 1/175)) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))

localize19.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 -27/2800 (pow.f64 x 4))
0.3b
(*.f64 9/40 (pow.f64 x 2))
15.3b
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
Compiler

Compiled 47 to 38 computations (19.1% saved)

series2.0ms (0%)

Counts
2 → 6
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
0.0ms
x
@inf
(*.f64 -27/2800 (pow.f64 x 4))
0.0ms
x
@0
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
0.0ms
x
@0
(*.f64 -27/2800 (pow.f64 x 4))
0.0ms
x
@-inf
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))

rewrite87.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01244
19744
227244
395244
4370644
Stop Event
node limit
Counts
2 → 17
Calls
Call 1
Inputs
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 -27/2800 (pow.f64 x 4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))) (/.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -27/2800 (pow.f64 x 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -27/2800 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -27/2800 (pow.f64 x 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -27/2800 (pow.f64 x 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -27/2800 (pow.f64 x 4)) (/.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 -27/2800 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -27/2800 (pow.f64 x 4)) 1)))))

simplify142.0ms (0.6%)

Algorithm
egg-herbie
Rules
1330×rational.json-simplify-47
1100×rational.json-simplify-49
948×rational.json-simplify-2
800×rational.json-simplify-111
780×rational.json-simplify-50
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039551
170551
2247551
31341551
45380551
Stop Event
node limit
Counts
23 → 21
Calls
Call 1
Inputs
(*.f64 9/40 (pow.f64 x 2))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 9/40 (pow.f64 x 2)))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 9/40 (pow.f64 x 2)))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 9/40 (pow.f64 x 2)))
(*.f64 -27/2800 (pow.f64 x 4))
(*.f64 -27/2800 (pow.f64 x 4))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 0)
(*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)
(*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))
(*.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))
(*.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))
(*.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) 1))
(*.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))) (/.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))))
(/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)
(/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))
(pow.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) 0)
(+.f64 0 (*.f64 -27/2800 (pow.f64 x 4)))
(-.f64 (*.f64 -27/2800 (pow.f64 x 4)) 0)
(/.f64 (*.f64 -27/2800 (pow.f64 x 4)) 1)
(/.f64 (*.f64 -27/2800 (pow.f64 x 4)) (/.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 -27/2800 (pow.f64 x 4))))
(pow.f64 (*.f64 -27/2800 (pow.f64 x 4)) 1)
Outputs
(*.f64 9/40 (pow.f64 x 2))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 9/40 (pow.f64 x 2)))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 9/40 (pow.f64 x 2)))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 9/40 (pow.f64 x 2)))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 -27/2800 (pow.f64 x 4))
(*.f64 -27/2800 (pow.f64 x 4))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 0)
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) 1))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))) (/.f64 (/.f64 1 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))) (*.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))))))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (/.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))))
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(pow.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1)
(+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4)))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) 0)
(*.f64 -27/2800 (pow.f64 x 4))
(+.f64 0 (*.f64 -27/2800 (pow.f64 x 4)))
(*.f64 -27/2800 (pow.f64 x 4))
(-.f64 (*.f64 -27/2800 (pow.f64 x 4)) 0)
(*.f64 -27/2800 (pow.f64 x 4))
(/.f64 (*.f64 -27/2800 (pow.f64 x 4)) 1)
(*.f64 -27/2800 (pow.f64 x 4))
(/.f64 (*.f64 -27/2800 (pow.f64 x 4)) (/.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 -27/2800 (pow.f64 x 4))))
(*.f64 -27/2800 (pow.f64 x 4))
(pow.f64 (*.f64 -27/2800 (pow.f64 x 4)) 1)
(*.f64 -27/2800 (pow.f64 x 4))

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
0.2b
(-.f64 1 (tan.f64 x))
1.7b
(-.f64 x (sin.f64 x))
2.0b
(+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))
Compiler

Compiled 45 to 22 computations (51.1% saved)

series2.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(-.f64 1 (tan.f64 x))
0.0ms
x
@inf
(-.f64 1 (tan.f64 x))
0.0ms
x
@inf
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
0.0ms
x
@-inf
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
0.0ms
x
@0
(+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))

rewrite126.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
834×rational.json-simplify-47
732×rational.json-simplify-1
700×rational.json-5
698×exponential.json-3
698×rational.json-1
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01481
112273
239973
3147573
4584149
Stop Event
node limit
Counts
3 → 69
Calls
Call 1
Inputs
(+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (-.f64 -1 (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (+.f64 (neg.f64 x) (+.f64 -1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 x (tan.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 x (+.f64 1 (+.f64 -1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -1 x) (+.f64 -1 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 (tan.f64 x) (+.f64 -1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 (tan.f64 x) (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x (tan.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (tan.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (-.f64 1 x) (+.f64 -1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (+.f64 -1 (tan.f64 x)) (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (tan.f64 x)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (tan.f64 x)) (+.f64 -1 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x 1) (+.f64 2 (+.f64 -1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -2 (+.f64 (-.f64 -1 x) (+.f64 -1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -1 (-.f64 1 (tan.f64 x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (-.f64 x (tan.f64 x)) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (-.f64 1 (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 x 1) (+.f64 -1 (tan.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 -2 (+.f64 -1 (tan.f64 x))) (-.f64 -1 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (neg.f64 (tan.f64 x)) (-.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 -1 x) (tan.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 (tan.f64 x) 2)) (-.f64 2 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 -1 x) (-.f64 (tan.f64 x) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 -1 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (-.f64 1 (tan.f64 x)) 2) (-.f64 -1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 1 (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (tan.f64 x) x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (neg.f64 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (tan.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (tan.f64 x)) (/.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (tan.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))) (/.f64 1 (-.f64 1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))) (*.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (tan.f64 x)) (*.f64 (-.f64 1 (tan.f64 x)) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))))) (/.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (tan.f64 x)) (/.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (tan.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1 (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 -1 (tan.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))))))

simplify115.0ms (0.5%)

Algorithm
egg-herbie
Rules
1802×rational.json-simplify-49
1168×rational.json-simplify-50
1036×rational.json-simplify-54
938×rational.json-simplify-43
742×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02222489
14912351
210332345
337572337
Stop Event
node limit
Counts
105 → 125
Calls
Call 1
Inputs
(*.f64 -1/3 (pow.f64 x 3))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5))))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
1
(+.f64 1 (*.f64 -1 x))
(+.f64 1 (+.f64 (*.f64 -1 x) (*.f64 -1/3 (pow.f64 x 3))))
(+.f64 1 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
-1/2
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 (sin.f64 x) x))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
1
(+.f64 1 (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 3)))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))))
(-.f64 -1 (-.f64 -1 (-.f64 x (tan.f64 x))))
(-.f64 -1 (+.f64 (neg.f64 x) (+.f64 -1 (tan.f64 x))))
(-.f64 x (tan.f64 x))
(-.f64 x (+.f64 1 (+.f64 -1 (tan.f64 x))))
(-.f64 (+.f64 -1 x) (+.f64 -1 (tan.f64 x)))
(-.f64 1 (-.f64 (tan.f64 x) (+.f64 -1 x)))
(-.f64 1 (+.f64 (tan.f64 x) (-.f64 1 x)))
(-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))
(-.f64 (-.f64 x (tan.f64 x)) 0)
(-.f64 0 (-.f64 (tan.f64 x) x))
(-.f64 0 (+.f64 (-.f64 1 x) (+.f64 -1 (tan.f64 x))))
(-.f64 0 (+.f64 (+.f64 -1 (tan.f64 x)) (-.f64 1 x)))
(-.f64 (neg.f64 (tan.f64 x)) (neg.f64 x))
(-.f64 (neg.f64 (tan.f64 x)) (+.f64 -1 (-.f64 1 x)))
(-.f64 (+.f64 x 1) (+.f64 2 (+.f64 -1 (tan.f64 x))))
(-.f64 -2 (+.f64 (-.f64 -1 x) (+.f64 -1 (tan.f64 x))))
(-.f64 (+.f64 -1 (-.f64 1 (tan.f64 x))) (neg.f64 x))
(-.f64 (-.f64 (-.f64 x (tan.f64 x)) -1) 1)
(-.f64 (+.f64 x (-.f64 1 (tan.f64 x))) 1)
(-.f64 (-.f64 (+.f64 x 1) (+.f64 -1 (tan.f64 x))) 2)
(-.f64 (-.f64 -2 (+.f64 -1 (tan.f64 x))) (-.f64 -1 x))
(-.f64 (-.f64 (neg.f64 (tan.f64 x)) (-.f64 1 x)) -1)
(-.f64 (-.f64 (+.f64 -1 x) (tan.f64 x)) -1)
(-.f64 (-.f64 0 (-.f64 (tan.f64 x) 2)) (-.f64 2 x))
(-.f64 (-.f64 (+.f64 -1 x) (-.f64 (tan.f64 x) 2)) 1)
(-.f64 (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 -1 x)) 2)
(-.f64 (-.f64 (-.f64 1 (tan.f64 x)) 2) (-.f64 -1 x))
(*.f64 1 (-.f64 x (tan.f64 x)))
(*.f64 (-.f64 x (tan.f64 x)) 1)
(*.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 1 (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) 1))
(*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (tan.f64 x)) 1)
(/.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(pow.f64 (-.f64 x (tan.f64 x)) 1)
(neg.f64 (-.f64 (tan.f64 x) x))
(+.f64 1 (neg.f64 (tan.f64 x)))
(+.f64 (-.f64 1 (tan.f64 x)) 0)
(+.f64 0 (-.f64 1 (tan.f64 x)))
(+.f64 (neg.f64 (tan.f64 x)) 1)
(*.f64 1 (-.f64 1 (tan.f64 x)))
(*.f64 (-.f64 1 (tan.f64 x)) 1)
(*.f64 (-.f64 1 (tan.f64 x)) (/.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 (tan.f64 x))))
(*.f64 (+.f64 -1 (tan.f64 x)) -1)
(*.f64 (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))) (/.f64 1 (-.f64 1 (tan.f64 x))))
(*.f64 (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))) (*.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) 1))
(*.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))))
(*.f64 (*.f64 (-.f64 1 (tan.f64 x)) (*.f64 (-.f64 1 (tan.f64 x)) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))))) (/.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x)))))
(/.f64 (-.f64 1 (tan.f64 x)) 1)
(/.f64 (-.f64 1 (tan.f64 x)) (/.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 (tan.f64 x))))
(/.f64 (+.f64 -1 (tan.f64 x)) -1)
(pow.f64 (-.f64 1 (tan.f64 x)) 1)
(neg.f64 (+.f64 -1 (tan.f64 x)))
(+.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)
(+.f64 0 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(-.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)
(-.f64 0 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) 1)
(*.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) 1))
(*.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))
(pow.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)
(neg.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
Outputs
(*.f64 -1/3 (pow.f64 x 3))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5))))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (+.f64 (*.f64 -2/15 (pow.f64 x 5)) (*.f64 -17/315 (pow.f64 x 7))))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (+.f64 (*.f64 -2/15 (pow.f64 x 5)) (*.f64 -62/2835 (pow.f64 x 9)))))
(+.f64 (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5))) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (*.f64 -17/315 (pow.f64 x 7))))
(+.f64 (*.f64 -2/15 (pow.f64 x 5)) (+.f64 (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -17/315 (pow.f64 x 7))) (*.f64 -62/2835 (pow.f64 x 9))))
(+.f64 (*.f64 -2/15 (pow.f64 x 5)) (+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -62/2835 (pow.f64 x 9)))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
1
(+.f64 1 (*.f64 -1 x))
(+.f64 1 (neg.f64 x))
(-.f64 1 x)
(+.f64 1 (+.f64 (*.f64 -1 x) (*.f64 -1/3 (pow.f64 x 3))))
(+.f64 1 (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (neg.f64 x)))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (-.f64 1 x))
(+.f64 1 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))))
(+.f64 1 (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (+.f64 (*.f64 -2/15 (pow.f64 x 5)) (neg.f64 x))))
(+.f64 (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5))) (-.f64 1 x))
(+.f64 (*.f64 -2/15 (pow.f64 x 5)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (-.f64 1 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
(-.f64 1 (/.f64 (sin.f64 x) (cos.f64 x)))
-1/2
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
1
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 (sin.f64 x) x))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 1 (*.f64 -1 (/.f64 (sin.f64 x) x))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 1 (neg.f64 (/.f64 (sin.f64 x) x))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(+.f64 1 (*.f64 -1 (-.f64 (/.f64 (sin.f64 x) x) (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (*.f64 -1 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (+.f64 -1 (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))))
(+.f64 1 (-.f64 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 -1 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))))
(-.f64 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (neg.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (+.f64 -1 (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))))
(-.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(-.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (/.f64 (*.f64 (-.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x)))) (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2)))) (*.f64 -1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 (sin.f64 x) (*.f64 -1 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (+.f64 (/.f64 (*.f64 (*.f64 -1 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))) 1)) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 (+.f64 1 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (/.f64 (*.f64 -1 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (/.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2)))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
(-.f64 (+.f64 (neg.f64 (/.f64 (sin.f64 x) x)) (+.f64 (/.f64 (*.f64 (neg.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))) (+.f64 1 (/.f64 (*.f64 (sin.f64 x) (neg.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))) (neg.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))))
1
(+.f64 1 (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))
(+.f64 1 (neg.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))))
(+.f64 1 (+.f64 (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))))))
(+.f64 1 (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))) (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))))
(+.f64 1 (*.f64 -1 (+.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x) (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))))))
(+.f64 1 (neg.f64 (+.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x) (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 3)))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)))))
(+.f64 1 (+.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))))))
(+.f64 1 (+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2))) (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x))) (neg.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))))))
(+.f64 1 (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (cos.f64 x) 2))) (+.f64 (/.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x))) x) (/.f64 (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (/.f64 (sin.f64 x) (cos.f64 x)))) (*.f64 (cos.f64 x) (pow.f64 x 2)))))))
(-.f64 -1 (-.f64 -1 (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(-.f64 -1 (+.f64 (neg.f64 x) (+.f64 -1 (tan.f64 x))))
(-.f64 x (tan.f64 x))
(-.f64 x (tan.f64 x))
(-.f64 x (+.f64 1 (+.f64 -1 (tan.f64 x))))
(-.f64 x (tan.f64 x))
(-.f64 (+.f64 -1 x) (+.f64 -1 (tan.f64 x)))
(-.f64 x (tan.f64 x))
(-.f64 1 (-.f64 (tan.f64 x) (+.f64 -1 x)))
(-.f64 x (tan.f64 x))
(-.f64 1 (+.f64 (tan.f64 x) (-.f64 1 x)))
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 x (tan.f64 x)) 0)
(-.f64 x (tan.f64 x))
(-.f64 0 (-.f64 (tan.f64 x) x))
(-.f64 x (tan.f64 x))
(-.f64 0 (+.f64 (-.f64 1 x) (+.f64 -1 (tan.f64 x))))
(-.f64 x (tan.f64 x))
(-.f64 0 (+.f64 (+.f64 -1 (tan.f64 x)) (-.f64 1 x)))
(-.f64 x (tan.f64 x))
(-.f64 (neg.f64 (tan.f64 x)) (neg.f64 x))
(-.f64 x (tan.f64 x))
(-.f64 (neg.f64 (tan.f64 x)) (+.f64 -1 (-.f64 1 x)))
(-.f64 x (tan.f64 x))
(-.f64 (+.f64 x 1) (+.f64 2 (+.f64 -1 (tan.f64 x))))
(-.f64 x (tan.f64 x))
(-.f64 -2 (+.f64 (-.f64 -1 x) (+.f64 -1 (tan.f64 x))))
(-.f64 x (tan.f64 x))
(-.f64 (+.f64 -1 (-.f64 1 (tan.f64 x))) (neg.f64 x))
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 (-.f64 x (tan.f64 x)) -1) 1)
(-.f64 x (tan.f64 x))
(-.f64 (+.f64 x (-.f64 1 (tan.f64 x))) 1)
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 (+.f64 x 1) (+.f64 -1 (tan.f64 x))) 2)
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 -2 (+.f64 -1 (tan.f64 x))) (-.f64 -1 x))
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 (neg.f64 (tan.f64 x)) (-.f64 1 x)) -1)
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 (+.f64 -1 x) (tan.f64 x)) -1)
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 0 (-.f64 (tan.f64 x) 2)) (-.f64 2 x))
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 (+.f64 -1 x) (-.f64 (tan.f64 x) 2)) 1)
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 -1 x)) 2)
(-.f64 x (tan.f64 x))
(-.f64 (-.f64 (-.f64 1 (tan.f64 x)) 2) (-.f64 -1 x))
(-.f64 x (tan.f64 x))
(*.f64 1 (-.f64 x (tan.f64 x)))
(-.f64 x (tan.f64 x))
(*.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(*.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 1 (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) 1))
(-.f64 x (tan.f64 x))
(*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))))
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(pow.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(neg.f64 (-.f64 (tan.f64 x) x))
(-.f64 x (tan.f64 x))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(+.f64 (-.f64 1 (tan.f64 x)) 0)
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(+.f64 0 (-.f64 1 (tan.f64 x)))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(+.f64 (neg.f64 (tan.f64 x)) 1)
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(*.f64 1 (-.f64 1 (tan.f64 x)))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(*.f64 (-.f64 1 (tan.f64 x)) 1)
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(*.f64 (-.f64 1 (tan.f64 x)) (/.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 (tan.f64 x))))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(*.f64 (+.f64 -1 (tan.f64 x)) -1)
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(*.f64 (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))) (/.f64 1 (-.f64 1 (tan.f64 x))))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(*.f64 (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))) (*.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) 1))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(*.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(*.f64 (*.f64 (-.f64 1 (tan.f64 x)) (*.f64 (-.f64 1 (tan.f64 x)) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x))))) (/.f64 (/.f64 1 (-.f64 1 (tan.f64 x))) (*.f64 (+.f64 -1 (tan.f64 x)) (+.f64 -1 (tan.f64 x)))))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(/.f64 (-.f64 1 (tan.f64 x)) 1)
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(/.f64 (-.f64 1 (tan.f64 x)) (/.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 (tan.f64 x))))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(/.f64 (+.f64 -1 (tan.f64 x)) -1)
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(pow.f64 (-.f64 1 (tan.f64 x)) 1)
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(neg.f64 (+.f64 -1 (tan.f64 x)))
(+.f64 1 (neg.f64 (tan.f64 x)))
(-.f64 1 (tan.f64 x))
(+.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(+.f64 0 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 0)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 0 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) 1))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 1 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(pow.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(neg.f64 (neg.f64 (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))

localize34.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 27/112000 (pow.f64 x 6))
0.1b
(*.f64 -27/2800 (pow.f64 x 4))
0.3b
(*.f64 9/40 (pow.f64 x 2))
18.3b
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
Compiler

Compiled 80 to 65 computations (18.8% saved)

series1.0ms (0%)

Counts
2 → 3
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
0.0ms
x
@0
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
0.0ms
x
@inf
(*.f64 27/112000 (pow.f64 x 6))
0.0ms
x
@0
(*.f64 27/112000 (pow.f64 x 6))
0.0ms
x
@-inf
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))

rewrite91.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01244
19744
227344
395944
4371344
Stop Event
node limit
Counts
2 → 17
Calls
Call 1
Inputs
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 27/112000 (pow.f64 x 6))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))) (/.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 27/112000 (pow.f64 x 6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 27/112000 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 27/112000 (pow.f64 x 6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 27/112000 (pow.f64 x 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 27/112000 (pow.f64 x 6)) (/.f64 (*.f64 27/112000 (pow.f64 x 6)) (*.f64 27/112000 (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 27/112000 (pow.f64 x 6)) 1)))))

simplify145.0ms (0.6%)

Algorithm
egg-herbie
Rules
1334×rational.json-simplify-47
1106×rational.json-simplify-49
948×rational.json-simplify-2
800×rational.json-simplify-111
780×rational.json-simplify-50
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038458
170458
2247458
31335458
45370458
Stop Event
node limit
Counts
20 → 20
Calls
Call 1
Inputs
(*.f64 -27/2800 (pow.f64 x 4))
(*.f64 27/112000 (pow.f64 x 6))
(*.f64 27/112000 (pow.f64 x 6))
(-.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 0)
(*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)
(*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))
(*.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))
(*.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))
(*.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1))
(*.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))) (/.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))))
(/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)
(/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))
(pow.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)
(+.f64 (*.f64 27/112000 (pow.f64 x 6)) 0)
(+.f64 0 (*.f64 27/112000 (pow.f64 x 6)))
(-.f64 (*.f64 27/112000 (pow.f64 x 6)) 0)
(/.f64 (*.f64 27/112000 (pow.f64 x 6)) 1)
(/.f64 (*.f64 27/112000 (pow.f64 x 6)) (/.f64 (*.f64 27/112000 (pow.f64 x 6)) (*.f64 27/112000 (pow.f64 x 6))))
(pow.f64 (*.f64 27/112000 (pow.f64 x 6)) 1)
Outputs
(*.f64 -27/2800 (pow.f64 x 4))
(*.f64 27/112000 (pow.f64 x 6))
(*.f64 27/112000 (pow.f64 x 6))
(-.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 0)
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))) (/.f64 (/.f64 1 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) (*.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))))))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (/.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))))
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(pow.f64 (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6))) 1)
(+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))
(+.f64 (*.f64 27/112000 (pow.f64 x 6)) 0)
(*.f64 27/112000 (pow.f64 x 6))
(+.f64 0 (*.f64 27/112000 (pow.f64 x 6)))
(*.f64 27/112000 (pow.f64 x 6))
(-.f64 (*.f64 27/112000 (pow.f64 x 6)) 0)
(*.f64 27/112000 (pow.f64 x 6))
(/.f64 (*.f64 27/112000 (pow.f64 x 6)) 1)
(*.f64 27/112000 (pow.f64 x 6))
(/.f64 (*.f64 27/112000 (pow.f64 x 6)) (/.f64 (*.f64 27/112000 (pow.f64 x 6)) (*.f64 27/112000 (pow.f64 x 6))))
(*.f64 27/112000 (pow.f64 x 6))
(pow.f64 (*.f64 27/112000 (pow.f64 x 6)) 1)
(*.f64 27/112000 (pow.f64 x 6))

eval107.0ms (0.5%)

Compiler

Compiled 6804 to 3625 computations (46.7% saved)

prune50.0ms (0.2%)

Pruning

9 alts after pruning (4 fresh and 5 done)

PrunedKeptTotal
New3152317
Fresh022
Picked011
Done145
Total3169325
Error
0b
Counts
325 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
32.0b
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
33.1b
(/.f64 x (-.f64 x (tan.f64 x)))
33.2b
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
33.1b
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
30.7b
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
30.9b
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
30.3b
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
32.8b
1
30.8b
-1/2
Compiler

Compiled 88 to 69 computations (21.6% saved)

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
0.0b
(/.f64 x (-.f64 x (tan.f64 x)))
1.7b
(-.f64 x (tan.f64 x))
Compiler

Compiled 47 to 19 computations (59.6% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
0.0ms
x
@inf
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
0.0ms
x
@0
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)

rewrite107.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
968×rational.json-simplify-2
950×rational.json-simplify-79
586×rational.json-simplify-47
554×rational.json-simplify-58
540×rational.json-simplify-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01329
112317
237217
3116017
4433717
Stop Event
node limit
Counts
1 → 29
Calls
Call 1
Inputs
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 -1 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -1 (/.f64 x (-.f64 x (tan.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))) (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x)))) (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))))

simplify236.0ms (1%)

Algorithm
egg-herbie
Rules
1110×rational.json-simplify-111
962×rational.json-simplify-47
766×rational.json-simplify-1
722×rational.json-simplify-2
558×rational.json-simplify-50
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0941027
11801027
23501027
311861027
444931027
579221027
Stop Event
node limit
Counts
41 → 47
Calls
Call 1
Inputs
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))
(+.f64 -1 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1))
(+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
(+.f64 1 (+.f64 -1 (/.f64 x (-.f64 x (tan.f64 x)))))
(+.f64 (+.f64 -1 (/.f64 x (-.f64 x (tan.f64 x)))) 1)
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) -2) 2)
(*.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))))
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))) (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))) -1)
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (neg.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x)))) (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))))
(/.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))) -1)
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
Outputs
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (*.f64 (pow.f64 x 2) 1/175)) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 2/7875 (pow.f64 x 4)) (+.f64 6/5 (*.f64 (pow.f64 x 2) 1/175))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 -1 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1))
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 1 (+.f64 -1 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 (+.f64 -1 (/.f64 x (-.f64 x (tan.f64 x)))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) -2) 2)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))) (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))) -1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (neg.f64 (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x)))) (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 -1 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 (tan.f64 x) x)) (/.f64 x (-.f64 (tan.f64 x) x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))) -1)
(/.f64 x (-.f64 x (tan.f64 x)))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))

localize16.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
0.2b
(-.f64 1 (tan.f64 x))
2.0b
(+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))
Compiler

Compiled 36 to 20 computations (44.4% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
0.0ms
x
@0
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
0.0ms
x
@-inf
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))

rewrite101.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1020×rational.json-simplify-2
616×rational.json-simplify-47
610×rational.json-simplify-41
550×rational.json-simplify-58
536×rational.json-simplify-1
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01233
110429
232829
3114829
4437217
Stop Event
node limit
Counts
1 → 17
Calls
Call 1
Inputs
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))))

simplify199.0ms (0.8%)

Algorithm
egg-herbie
Rules
1050×rational.json-simplify-1
990×rational.json-simplify-47
928×rational.json-simplify-58
856×exponential.json-simplify-26
680×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
076823
1151823
2272823
3952823
43723823
56176823
Stop Event
node limit
Counts
29 → 39
Calls
Call 1
Inputs
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(+.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))
(-.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(-.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
Outputs
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (*.f64 (pow.f64 x 2) 1/175)) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (+.f64 (*.f64 2/7875 (pow.f64 x 4)) (*.f64 (pow.f64 x 2) 1/175))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 1 (+.f64 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) 1))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 1 (+.f64 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) 1))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))))
(+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))

eval66.0ms (0.3%)

Compiler

Compiled 4751 to 2243 computations (52.8% saved)

prune33.0ms (0.1%)

Pruning

9 alts after pruning (4 fresh and 5 done)

PrunedKeptTotal
New2402242
Fresh022
Picked101
Done156
Total2429251
Error
0b
Counts
251 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
32.0b
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
33.2b
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
33.1b
(/.f64 x (-.f64 x (tan.f64 x)))
30.7b
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
30.9b
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
30.3b
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
33.1b
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
32.8b
1
30.8b
-1/2
Compiler

Compiled 85 to 66 computations (22.4% saved)

localize13.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
0.0b
(/.f64 x (-.f64 x (tan.f64 x)))
1.7b
(-.f64 x (tan.f64 x))
Compiler

Compiled 34 to 12 computations (64.7% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
0.0ms
x
@0
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
0.0ms
x
@-inf
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)

rewrite84.0ms (0.4%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01129
19517
229517
3100417
4376417
Stop Event
node limit
Counts
1 → 15
Calls
Call 1
Inputs
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))))

simplify231.0ms (1%)

Algorithm
egg-herbie
Rules
1298×rational.json-simplify-58
916×rational.json-simplify-47
728×rational.json-simplify-111
648×rational.json-simplify-49
640×rational.json-simplify-41
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
072789
1130789
2285789
31036789
43704789
56544789
Stop Event
node limit
Counts
27 → 35
Calls
Call 1
Inputs
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(-.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(-.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) 1)
(-.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) -1) -1)
(-.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 2) 2)
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) 1))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
Outputs
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (*.f64 (pow.f64 x 2) 1/175)) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 2/7875 (pow.f64 x 4)) (+.f64 6/5 (*.f64 (pow.f64 x 2) 1/175))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 1 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(-.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) -1) -1)
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 2) 2)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) 1))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
0.2b
(-.f64 1 (tan.f64 x))
2.0b
(-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))
Compiler

Compiled 30 to 18 computations (40% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
0.0ms
x
@-inf
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
0.0ms
x
@0
(-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))
0.0ms
x
@-inf
(-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))
0.0ms
x
@0
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))

rewrite113.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
922×rational.json-simplify-2
560×rational.json-simplify-1
558×rational.json-simplify-47
540×rational.json-5
538×exponential.json-3
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01052
19128
233228
3118428
4442828
Stop Event
node limit
Counts
2 → 51
Calls
Call 1
Inputs
(-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (-.f64 -1 (tan.f64 x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (neg.f64 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (tan.f64 x)) (+.f64 x -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (tan.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x -1) (-.f64 1 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (tan.f64 x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 2 (tan.f64 x)) (-.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (-.f64 1 (tan.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 x) (-.f64 -1 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 -1 (tan.f64 x)) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (tan.f64 x)) (+.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x 2) (-.f64 2 (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (+.f64 (tan.f64 x) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (+.f64 (tan.f64 x) (-.f64 1 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (-.f64 x (tan.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (tan.f64 x) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 1 (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 -1 (-.f64 (tan.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (tan.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (-.f64 (tan.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (tan.f64 x) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (tan.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (tan.f64 x) x))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))))))

simplify175.0ms (0.7%)

Algorithm
egg-herbie
Rules
1800×rational.json-simplify-47
1102×rational.json-simplify-41
1022×rational.json-simplify-1
764×rational.json-simplify-2
716×rational.json-simplify-54
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01581671
13031659
26611653
317421581
458581581
Stop Event
node limit
Counts
75 → 91
Calls
Call 1
Inputs
(*.f64 -1/3 (pow.f64 x 3))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5))))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 1 (+.f64 (-.f64 -1 (tan.f64 x)) x))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (-.f64 1 (tan.f64 x)) (+.f64 x -1))
(+.f64 (-.f64 x (tan.f64 x)) 0)
(+.f64 0 (-.f64 x (tan.f64 x)))
(+.f64 (+.f64 x -1) (-.f64 1 (tan.f64 x)))
(+.f64 (neg.f64 (tan.f64 x)) x)
(+.f64 (-.f64 2 (tan.f64 x)) (-.f64 x 2))
(+.f64 (+.f64 x (-.f64 1 (tan.f64 x))) -1)
(+.f64 (+.f64 1 x) (-.f64 -1 (tan.f64 x)))
(+.f64 (+.f64 (-.f64 -1 (tan.f64 x)) x) 1)
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 1 x))
(+.f64 (-.f64 x 2) (-.f64 2 (tan.f64 x)))
(+.f64 (-.f64 x (+.f64 (tan.f64 x) -1)) -1)
(+.f64 (-.f64 -1 (+.f64 (tan.f64 x) (-.f64 1 x))) 2)
(*.f64 1 (-.f64 x (tan.f64 x)))
(*.f64 (-.f64 x (tan.f64 x)) 1)
(*.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(*.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (-.f64 x (tan.f64 x)))
(*.f64 (-.f64 (tan.f64 x) x) -1)
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 1 (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 -1 (-.f64 (tan.f64 x) x)))
(*.f64 -1 (-.f64 (tan.f64 x) x))
(*.f64 (neg.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (-.f64 (tan.f64 x) x))
(*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))))
(*.f64 (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x)))))
(/.f64 (-.f64 x (tan.f64 x)) 1)
(/.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(/.f64 (-.f64 (tan.f64 x) x) -1)
(pow.f64 (-.f64 x (tan.f64 x)) 1)
(neg.f64 (-.f64 (tan.f64 x) x))
(+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(+.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))
(-.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(-.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
Outputs
(*.f64 -1/3 (pow.f64 x 3))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5))))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (+.f64 (*.f64 -2/15 (pow.f64 x 5)) (*.f64 -17/315 (pow.f64 x 7))))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -2/15 (pow.f64 x 5)))))
(+.f64 (*.f64 -17/315 (pow.f64 x 7)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (+.f64 (*.f64 -2/15 (pow.f64 x 5)) (*.f64 -62/2835 (pow.f64 x 9)))))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (+.f64 (+.f64 (*.f64 -2/15 (pow.f64 x 5)) (*.f64 -17/315 (pow.f64 x 7))) (*.f64 -62/2835 (pow.f64 x 9))))
(+.f64 (*.f64 -1/3 (pow.f64 x 3)) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (+.f64 (*.f64 -2/15 (pow.f64 x 5)) (*.f64 -17/315 (pow.f64 x 7)))))
(+.f64 (*.f64 -2/15 (pow.f64 x 5)) (+.f64 (*.f64 -62/2835 (pow.f64 x 9)) (+.f64 (*.f64 -1/3 (pow.f64 x 3)) (*.f64 -17/315 (pow.f64 x 7)))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
x
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))) x)
(+.f64 x (*.f64 -1 (/.f64 (sin.f64 x) (cos.f64 x))))
(+.f64 x (neg.f64 (/.f64 (sin.f64 x) (cos.f64 x))))
(/.f64 -3 (pow.f64 x 2))
(-.f64 6/5 (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) 6/5) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (*.f64 (pow.f64 x 2) 1/175)) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 1/175 (pow.f64 x 2)) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (+.f64 (*.f64 2/7875 (pow.f64 x 4)) (*.f64 (pow.f64 x 2) 1/175))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (+.f64 6/5 (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 6/5 (+.f64 (*.f64 (pow.f64 x 2) 1/175) (*.f64 2/7875 (pow.f64 x 4)))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (+.f64 6/5 (*.f64 (pow.f64 x 2) 1/175)) (*.f64 2/7875 (pow.f64 x 4))) (*.f64 3 (/.f64 1 (pow.f64 x 2))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 1 (+.f64 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
1
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))
(+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x))))
(+.f64 (+.f64 1 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x)))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 x 2))) (+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 x 3))) (/.f64 (sin.f64 x) (*.f64 (cos.f64 x) x)))))
(+.f64 1 (+.f64 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2))))
(+.f64 1 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)))))
(+.f64 1 (+.f64 (/.f64 (sin.f64 x) (*.f64 x (cos.f64 x))) (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (*.f64 x (cos.f64 x)) 2)) (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (*.f64 x (cos.f64 x)) 3)))))
(+.f64 1 (+.f64 (-.f64 -1 (tan.f64 x)) x))
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 (-.f64 1 (tan.f64 x)) (+.f64 x -1))
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (-.f64 x (tan.f64 x)) 0)
(-.f64 x (tan.f64 x))
(+.f64 0 (-.f64 x (tan.f64 x)))
(-.f64 x (tan.f64 x))
(+.f64 (+.f64 x -1) (-.f64 1 (tan.f64 x)))
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (neg.f64 (tan.f64 x)) x)
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (-.f64 2 (tan.f64 x)) (-.f64 x 2))
(+.f64 (+.f64 x (-.f64 1 (tan.f64 x))) -1)
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (+.f64 1 x) (-.f64 -1 (tan.f64 x)))
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (+.f64 (-.f64 -1 (tan.f64 x)) x) 1)
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 1 x))
(+.f64 (-.f64 -1 (tan.f64 x)) (+.f64 x 1))
(+.f64 x (+.f64 1 (-.f64 -1 (tan.f64 x))))
(+.f64 x (neg.f64 (tan.f64 x)))
(+.f64 (-.f64 x 2) (-.f64 2 (tan.f64 x)))
(+.f64 (-.f64 2 (tan.f64 x)) (-.f64 x 2))
(+.f64 (-.f64 x (+.f64 (tan.f64 x) -1)) -1)
(-.f64 x (tan.f64 x))
(+.f64 (-.f64 -1 (+.f64 (tan.f64 x) (-.f64 1 x))) 2)
(+.f64 2 (-.f64 -1 (+.f64 (tan.f64 x) (-.f64 1 x))))
(+.f64 2 (-.f64 (-.f64 x 2) (tan.f64 x)))
(+.f64 2 (-.f64 x (-.f64 (tan.f64 x) -2)))
(*.f64 1 (-.f64 x (tan.f64 x)))
(-.f64 x (tan.f64 x))
(*.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(*.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (-.f64 x (tan.f64 x)))
(-.f64 x (tan.f64 x))
(*.f64 (-.f64 (tan.f64 x) x) -1)
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 1 (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))) (/.f64 -1 (-.f64 (tan.f64 x) x)))
(-.f64 x (tan.f64 x))
(*.f64 -1 (-.f64 (tan.f64 x) x))
(-.f64 x (tan.f64 x))
(*.f64 (neg.f64 (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (-.f64 (tan.f64 x) x))
(-.f64 x (tan.f64 x))
(*.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))) (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))))
(-.f64 x (tan.f64 x))
(*.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))))
(-.f64 x (tan.f64 x))
(*.f64 (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x)))) (/.f64 (/.f64 (/.f64 1 (-.f64 x (tan.f64 x))) (*.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x)))) (*.f64 (-.f64 x (tan.f64 x)) (*.f64 (*.f64 (-.f64 x (tan.f64 x)) (-.f64 (tan.f64 x) x)) (-.f64 (tan.f64 x) x)))))
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 x (tan.f64 x)) (/.f64 (-.f64 x (tan.f64 x)) (-.f64 x (tan.f64 x))))
(-.f64 x (tan.f64 x))
(/.f64 (-.f64 (tan.f64 x) x) -1)
(-.f64 x (tan.f64 x))
(pow.f64 (-.f64 x (tan.f64 x)) 1)
(-.f64 x (tan.f64 x))
(neg.f64 (-.f64 (tan.f64 x) x))
(-.f64 x (tan.f64 x))
(+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(/.f64 x (-.f64 x (tan.f64 x)))
(+.f64 0 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (/.f64 x (-.f64 x (tan.f64 x))) 0)
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 0 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 1 (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 (/.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x))))) (*.f64 (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))) (*.f64 (/.f64 x (-.f64 x (tan.f64 x))) (/.f64 x (-.f64 x (tan.f64 x)))))))
(/.f64 x (-.f64 x (tan.f64 x)))
(pow.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1)
(/.f64 x (-.f64 x (tan.f64 x)))
(neg.f64 (neg.f64 (/.f64 x (-.f64 x (tan.f64 x)))))
(/.f64 x (-.f64 x (tan.f64 x)))

eval63.0ms (0.3%)

Compiler

Compiled 4337 to 2050 computations (52.7% saved)

prune33.0ms (0.1%)

Pruning

9 alts after pruning (2 fresh and 7 done)

PrunedKeptTotal
New2310231
Fresh022
Picked011
Done066
Total2319240
Error
0b
Counts
240 → 9
Alt Table
Click to see full alt table
StatusErrorProgram
32.0b
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
33.2b
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
33.1b
(/.f64 x (-.f64 x (tan.f64 x)))
30.7b
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
30.9b
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
30.3b
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
33.1b
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
32.8b
1
30.8b
-1/2
Compiler

Compiled 85 to 66 computations (22.4% saved)

regimes28.0ms (0.1%)

Counts
12 → 3
Calls
Call 1
Inputs
-1/2
1
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
Outputs
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Calls

2 calls:

20.0ms
x
5.0ms
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Results
ErrorSegmentsBranch
0b3x
0.5b2(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Compiler

Compiled 126 to 78 computations (38.1% saved)

bsearch56.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
1.9174559417372104e-7
196.76890617213488
28.0ms
-930491737.7129602
-0.012204710177881046
Results
49.0ms304×body256valid
Compiler

Compiled 672 to 534 computations (20.5% saved)

regimes26.0ms (0.1%)

Counts
11 → 3
Calls
Call 1
Inputs
-1/2
1
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
Outputs
(/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Calls

2 calls:

19.0ms
x
4.0ms
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Results
ErrorSegmentsBranch
0.0b3x
0.5b2(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Compiler

Compiled 107 to 62 computations (42.1% saved)

bsearch62.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
30.0ms
1.9174559417372104e-7
196.76890617213488
32.0ms
-930491737.7129602
-0.012204710177881046
Results
55.0ms304×body256valid
Compiler

Compiled 558 to 439 computations (21.3% saved)

regimes24.0ms (0.1%)

Counts
10 → 3
Calls
Call 1
Inputs
-1/2
1
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
Outputs
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Calls

2 calls:

17.0ms
x
4.0ms
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Results
ErrorSegmentsBranch
0.0b3x
0.5b2(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Compiler

Compiled 93 to 56 computations (39.8% saved)

bsearch56.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
1.9174559417372104e-7
196.76890617213488
30.0ms
-930491737.7129602
-0.012204710177881046
Results
50.0ms304×body256valid
Compiler

Compiled 508 to 389 computations (23.4% saved)

regimes23.0ms (0.1%)

Counts
9 → 3
Calls
Call 1
Inputs
-1/2
1
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Outputs
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Calls

2 calls:

16.0ms
x
4.0ms
(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Results
ErrorSegmentsBranch
0.0b3x
0.5b2(/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))
Compiler

Compiled 80 to 45 computations (43.8% saved)

bsearch51.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
1.9174559417372104e-7
196.76890617213488
25.0ms
-0.012204710177881046
-1.8525319687994176e-7
Results
46.0ms288×body256valid
Compiler

Compiled 374 to 279 computations (25.4% saved)

regimes18.0ms (0.1%)

Counts
8 → 3
Calls
Call 1
Inputs
-1/2
1
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
(/.f64 x (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 x (-.f64 x (tan.f64 x))))) 1)
Outputs
(/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(/.f64 x (-.f64 x (tan.f64 x)))
Calls

1 calls:

16.0ms
x
Results
ErrorSegmentsBranch
0.4b3x
Compiler

Compiled 61 to 36 computations (41% saved)

bsearch169.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
95.0ms
1.9174559417372104e-7
196.76890617213488
74.0ms
-930491737.7129602
-0.012204710177881046
Results
155.0ms304×body256valid
Compiler

Compiled 377 to 296 computations (21.5% saved)

regimes26.0ms (0.1%)

Counts
5 → 3
Calls
Call 1
Inputs
-1/2
1
(/.f64 x (-.f64 x (tan.f64 x)))
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(+.f64 (+.f64 (/.f64 x (-.f64 x (tan.f64 x))) 1) -1)
Outputs
1
(-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2)
(/.f64 x (-.f64 x (tan.f64 x)))
Calls

1 calls:

23.0ms
x
Results
ErrorSegmentsBranch
0.4b3x
Compiler

Compiled 28 to 17 computations (39.3% saved)

bsearch161.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
41.0ms
1.9174559417372104e-7
196.76890617213488
120.0ms
-930491737.7129602
-0.012204710177881046
Results
80.0ms304×body256valid
Compiler

Compiled 287 to 236 computations (17.8% saved)

regimes59.0ms (0.3%)

Counts
3 → 3
Calls
Call 1
Inputs
-1/2
1
(/.f64 x (-.f64 x (tan.f64 x)))
Outputs
1
-1/2
(/.f64 x (-.f64 x (tan.f64 x)))
Calls

1 calls:

58.0ms
x
Results
ErrorSegmentsBranch
0.5b3x
Compiler

Compiled 11 to 7 computations (36.4% saved)

bsearch141.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
96.0ms
1.9174559417372104e-7
196.76890617213488
45.0ms
-930491737.7129602
-0.012204710177881046
Results
134.0ms304×body256valid
Compiler

Compiled 173 to 141 computations (18.5% saved)

regimes19.0ms (0.1%)

Accuracy

Total -62.5b remaining (-11524.3%)

Threshold costs -62.5b (-11524.3%)

Counts
2 → 3
Calls
Call 1
Inputs
-1/2
1
Outputs
1
-1/2
1
Calls

1 calls:

17.0ms
x
Results
ErrorSegmentsBranch
0.5b3x
Compiler

Compiled 5 to 4 computations (20% saved)

bsearch92.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
42.0ms
1.9174559417372104e-7
196.76890617213488
50.0ms
-930491737.7129602
-0.012204710177881046
Results
81.0ms304×body256valid
Compiler

Compiled 128 to 123 computations (3.9% saved)

simplify70.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
083665
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 x -7926335344172073/72057594037927936) (/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))) (if (<=.f64 x 3242591731706757/36028797018963968) (-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -6052837899185947/144115188075855872) (/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))) (if (<=.f64 x 8070450532247929/288230376151711744) (-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -8358680908399641/288230376151711744) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (if (<=.f64 x 8070450532247929/288230376151711744) (-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -1152921504606847/288230376151711744) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (if (<=.f64 x 5188146770730811/1152921504606846976) (-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -2589569785738035/1125899906842624) (/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))) (if (<=.f64 x 2589569785738035/1125899906842624) (-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2) (/.f64 x (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -2871044762448691/1125899906842624) 1 (if (<=.f64 x 2589569785738035/1125899906842624) (-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2) (/.f64 x (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -3512807709348987/2251799813685248) 1 (if (<=.f64 x 5854679515581645/4503599627370496) -1/2 (/.f64 x (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -3512807709348987/2251799813685248) 1 (if (<=.f64 x 6980579422424269/4503599627370496) -1/2 1))
-1/2
Outputs
(if (<=.f64 x -7926335344172073/72057594037927936) (/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))) (if (<=.f64 x 3242591731706757/36028797018963968) (-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (+.f64 (*.f64 -27/2800 (pow.f64 x 4)) (*.f64 27/112000 (pow.f64 x 6)))) 1/2) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -6052837899185947/144115188075855872) (/.f64 (-.f64 x (sin.f64 x)) (+.f64 (-.f64 -1 (neg.f64 x)) (-.f64 1 (tan.f64 x)))) (if (<=.f64 x 8070450532247929/288230376151711744) (-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -8358680908399641/288230376151711744) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (if (<=.f64 x 8070450532247929/288230376151711744) (-.f64 (+.f64 (*.f64 9/40 (pow.f64 x 2)) (*.f64 -27/2800 (pow.f64 x 4))) 1/2) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -1152921504606847/288230376151711744) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x))) (if (<=.f64 x 5188146770730811/1152921504606846976) (-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2) (/.f64 (-.f64 x (sin.f64 x)) (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -2589569785738035/1125899906842624) (/.f64 x (-.f64 (-.f64 1 (tan.f64 x)) (-.f64 1 x))) (if (<=.f64 x 2589569785738035/1125899906842624) (-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2) (/.f64 x (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -2871044762448691/1125899906842624) 1 (if (<=.f64 x 2589569785738035/1125899906842624) (-.f64 (*.f64 9/40 (pow.f64 x 2)) 1/2) (/.f64 x (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -3512807709348987/2251799813685248) 1 (if (<=.f64 x 5854679515581645/4503599627370496) -1/2 (/.f64 x (-.f64 x (tan.f64 x)))))
(if (<=.f64 x -3512807709348987/2251799813685248) 1 (if (<=.f64 x 6980579422424269/4503599627370496) -1/2 1))
-1/2
Compiler

Compiled 256 to 169 computations (34% saved)

soundness0.0ms (0%)

end275.0ms (1.2%)

Compiler

Compiled 248 to 137 computations (44.8% saved)

Profiling

Loading profile data...