Details

Time bar (total: 19.4s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
100%100%0%0%0%0%0%1
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample13.0s (66.8%)

Results
6.3s2129×body2048valid
4.7s4540×body256valid
1.6s535×body512valid
300.0ms1052×body1024valid
Bogosity

preprocess3.0ms (0%)

Algorithm
egg-herbie
Rules
rational.json-simplify-17
rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
11021
21221
011
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Outputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 9 to 7 computations (22.2% saved)

simplify9.0ms (0%)

Algorithm
egg-herbie
Rules
rational.json-simplify-17
rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
11021
21221
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Outputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))

eval0.0ms (0%)

Compiler

Compiled 8 to 6 computations (25% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
17.4b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
17.4b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 8 to 6 computations (25% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(atan.f64 (+.f64 N 1))
1.6b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 19 to 12 computations (36.8% saved)

series1.0ms (0%)

Counts
2 → 8
Calls

6 calls:

TimeVariablePointExpression
0.0ms
N
@-inf
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
0.0ms
N
@inf
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
0.0ms
N
@0
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
0.0ms
N
@-inf
(atan.f64 (+.f64 N 1))
0.0ms
N
@0
(atan.f64 (+.f64 N 1))

rewrite110.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1318×rational.json-simplify-35
1312×exponential.json-3
1312×rational.json-1
1312×rational.json-2
1312×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0932
16632
214532
328232
452632
5116532
6273132
7444632
8630432
Stop Event
node limit
Counts
2 → 77
Calls
Call 1
Inputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(atan.f64 (+.f64 N 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (atan.f64 N)) (atan.f64 (+.f64 N 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) (-.f64 -1 (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (-.f64 1 (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)) (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (atan.f64 N)) (+.f64 1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (atan.f64 N)) (*.f64 (atan.f64 (+.f64 N 1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) 1/2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -8) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -8)) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (atan.f64 (+.f64 N 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (atan.f64 (+.f64 N 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (*.f64 (atan.f64 (+.f64 N 1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (atan.f64 (+.f64 N 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (atan.f64 (+.f64 N 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan.f64 (+.f64 N 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (atan.f64 (+.f64 N 1)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan.f64 (+.f64 N 1)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (atan.f64 (+.f64 N 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan.f64 (+.f64 N 1)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (atan.f64 (+.f64 N 1)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (atan.f64 (+.f64 N 1)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan.f64 (+.f64 N 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan.f64 (+.f64 N 1)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan.f64 (+.f64 N 1)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (atan.f64 (+.f64 N 1)) 1)))))

simplify313.0ms (1.6%)

Algorithm
egg-herbie
Rules
2150×rational.json-simplify-2
2062×rational.json-simplify-35
1606×rational.json-simplify-42
1362×rational.json-simplify-51
1090×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01422005
12981835
211211835
323561495
437771495
547361495
656631495
767851495
870481495
971961495
1073351495
1177541495
Stop Event
node limit
Counts
85 → 83
Calls
Call 1
Inputs
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(+.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))))
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (atan.f64 N)))
(+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 0)
(+.f64 0 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(+.f64 -1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))))
(+.f64 (neg.f64 (atan.f64 N)) (atan.f64 (+.f64 N 1)))
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))) -1)
(+.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (atan.f64 N)))
(+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 (-.f64 1 (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) -1))
(+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))
(+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) (-.f64 -1 (atan.f64 N)))
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (-.f64 1 (atan.f64 N)))
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))) 1)
(+.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) -2)
(+.f64 (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)) (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1))
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
(+.f64 (-.f64 -1 (atan.f64 N)) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (atan.f64 N)) (*.f64 (atan.f64 (+.f64 N 1)) 1/2))
(*.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(*.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(*.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 1/2)
(*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/4)
(*.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 1/8)
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -1/2)
(*.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) 2)
(*.f64 -2 (*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) 1/2))
(*.f64 (*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) 1/2) -2)
(*.f64 1/8 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4) 4)
(*.f64 -1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
(/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 2)
(/.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 4)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 8)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 16)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 32)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -8) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -8)) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))))) 128)
(pow.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(neg.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 (+.f64 N 1)) 0)
(+.f64 0 (atan.f64 (+.f64 N 1)))
(+.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (*.f64 (atan.f64 (+.f64 N 1)) 1/2))
(-.f64 (atan.f64 (+.f64 N 1)) 0)
(*.f64 1 (atan.f64 (+.f64 N 1)))
(*.f64 (atan.f64 (+.f64 N 1)) 1)
(*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 1/2))
(*.f64 4 (*.f64 (atan.f64 (+.f64 N 1)) 1/4))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) 1/2)
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 4) 1/4)
(*.f64 1/2 (*.f64 (atan.f64 (+.f64 N 1)) 2))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 8) 1/8)
(*.f64 1/4 (*.f64 (atan.f64 (+.f64 N 1)) 4))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) 2)
(*.f64 1/8 (*.f64 (atan.f64 (+.f64 N 1)) 8))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/4) 4)
(/.f64 (atan.f64 (+.f64 N 1)) 1)
(/.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) 2)
(/.f64 (*.f64 (atan.f64 (+.f64 N 1)) 4) 4)
(/.f64 (*.f64 (atan.f64 (+.f64 N 1)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8))))) 128)
(pow.f64 (atan.f64 (+.f64 N 1)) 1)
Outputs
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(+.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (atan.f64 N)))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 0)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 0 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 -1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (neg.f64 (atan.f64 N)) (atan.f64 (+.f64 N 1)))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))) -1)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (atan.f64 N)))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (-.f64 1 (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) -1))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) (-.f64 -1 (atan.f64 N)))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (-.f64 1 (atan.f64 N)))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))) 1)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) -2)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)) (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (-.f64 -1 (atan.f64 N)) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (atan.f64 N)) (*.f64 (atan.f64 (+.f64 N 1)) 1/2))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 1/2)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/4)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 1/8)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -1/2)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) 2)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 -2 (*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) 1/2))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) 1/2) -2)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 1/8 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4) 4)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(*.f64 -1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 2)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 4)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 8)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 16)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -4)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 32)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -8) -8)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 64)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -8)) -16)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))))) 128)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(pow.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(neg.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (neg.f64 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 1 N)) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) 0)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(+.f64 0 (atan.f64 (+.f64 N 1)))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(+.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) (*.f64 (atan.f64 (+.f64 N 1)) 1/2))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(-.f64 (atan.f64 (+.f64 N 1)) 0)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 1 (atan.f64 (+.f64 N 1)))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 (atan.f64 (+.f64 N 1)) 1)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 1/2))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 4 (*.f64 (atan.f64 (+.f64 N 1)) 1/4))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) 1/2)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 4) 1/4)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 1/2 (*.f64 (atan.f64 (+.f64 N 1)) 2))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 8) 1/8)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 1/4 (*.f64 (atan.f64 (+.f64 N 1)) 4))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/2) 2)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 1/8 (*.f64 (atan.f64 (+.f64 N 1)) 8))
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(*.f64 (*.f64 (atan.f64 (+.f64 N 1)) 1/4) 4)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(/.f64 (atan.f64 (+.f64 N 1)) 1)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(/.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) 2)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(/.f64 (*.f64 (atan.f64 (+.f64 N 1)) 4) 4)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(/.f64 (*.f64 (atan.f64 (+.f64 N 1)) 8) 8)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(/.f64 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8)) 16)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8))) 32)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8)))) 64)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (atan.f64 (+.f64 N 1)) 8))))) 128)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))
(pow.f64 (atan.f64 (+.f64 N 1)) 1)
(atan.f64 (-.f64 1 (*.f64 -1 N)))
(atan.f64 (-.f64 1 (neg.f64 N)))
(atan.f64 (+.f64 1 N))

eval86.0ms (0.4%)

Compiler

Compiled 944 to 682 computations (27.8% saved)

prune9.0ms (0%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New82183
Fresh000
Picked011
Done000
Total82284
Error
17.4b
Counts
84 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
17.4b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
17.4b
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
Compiler

Compiled 32 to 25 computations (21.9% saved)

localize72.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(atan.f64 (+.f64 N 1))
0.0b
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
1.6b
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
1.6b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 75 to 53 computations (29.3% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
N
@-inf
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
1.0ms
N
@0
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
1.0ms
N
@inf
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
0.0ms
N
@-inf
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
0.0ms
N
@inf
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))

rewrite101.0ms (0.5%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
015104
1111104
222454
347254
494854
5192154
6350954
7610154
Stop Event
node limit
Counts
2 → 73
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (atan.f64 (+.f64 N 1)) (+.f64 1 (+.f64 (atan.f64 N) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (+.f64 (atan.f64 N) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) (+.f64 1 (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 3/4) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) -1)) (atan.f64 N))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) -1) -2) (atan.f64 N))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) -2) -1) -1) (atan.f64 N))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (-.f64 (/.f64 (atan.f64 (+.f64 N 1)) 4) (/.f64 (atan.f64 N) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (*.f64 2 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) -1) -2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4)) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)))))

simplify676.0ms (3.5%)

Algorithm
egg-herbie
Rules
2798×rational.json-simplify-35
1602×rational.json-simplify-2
1228×rational.json-simplify-1
904×rational.json-simplify-48
802×rational.json-simplify-49
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01552611
13482611
28512611
326132611
446972611
559712611
663802611
765592611
867392611
968982611
1070512611
1173982611
1274262611
1374662611
1474802611
1574852611
1676452611
1778032611
1879632611
Stop Event
node limit
Counts
97 → 78
Calls
Call 1
Inputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))))
(-.f64 1 (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (+.f64 1 (+.f64 (atan.f64 N) -1)))
(-.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(-.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 0)
(-.f64 0 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))) -1)
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2)
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) -2)
(-.f64 (+.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)
(-.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (+.f64 (atan.f64 N) -1))
(-.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) (+.f64 1 (atan.f64 N)))
(-.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 3/4) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4))
(-.f64 (+.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) -1)) (atan.f64 N))
(-.f64 (-.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) -1) -2) (atan.f64 N))
(-.f64 (+.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) -2) -1) -1) (atan.f64 N))
(*.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))
(*.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 2)
(*.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(*.f64 2 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 2 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4)))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 1/2)
(*.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4))
(*.f64 4 (-.f64 (/.f64 (atan.f64 (+.f64 N 1)) 4) (/.f64 (atan.f64 N) 4)))
(*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/4)
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -1/2)
(*.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4) 4)
(*.f64 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)
(*.f64 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4)) 2)
(/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 2)
(/.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 4)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 8)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 16)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 64)
(pow.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(neg.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 1 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
(-.f64 1 (*.f64 2 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)))
(-.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) -1) -2)
(-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 0)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 2) 1)
(-.f64 (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4)) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4))
(*.f64 1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)
(*.f64 2 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))
(*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2)
(*.f64 4 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))
(*.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1/4)
(*.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 2)
(*.f64 1/4 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))
(*.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 4)
(/.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)
(/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2)
(/.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 4)
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4)))) 64)
(pow.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)
Outputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(+.f64 1 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 1 (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (+.f64 1 (+.f64 (atan.f64 N) -1)))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 0)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 0 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -1 (atan.f64 N))) -1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) -2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (+.f64 (atan.f64 N) -1))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) (+.f64 1 (atan.f64 N)))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 3/4) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) -1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (-.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) -1) -2) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) -2) -1) -1) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 1 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 2 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 2 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4)))
(*.f64 2 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4) (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/4)))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 1/2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 4 (-.f64 (/.f64 (atan.f64 (+.f64 N 1)) 4) (/.f64 (atan.f64 N) 4)))
(*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -1/2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4) 4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4)) 2)
(*.f64 2 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4)))
(*.f64 2 (+.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 -2 (atan.f64 N))) 4) (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/4)))
(/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2) 2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 8)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) -2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 16)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 32)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)) -8)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 64)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(pow.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(neg.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 1 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 1 (*.f64 2 (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) -1)
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) -1) -2)
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 0)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 2) 1)
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/4)) (/.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4))
(+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(*.f64 1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 2 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 4 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1/4)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 2)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 1/4 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 4)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(/.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(/.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 4)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 8)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4)) 16)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))) 32)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4)))) 64)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(pow.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1)
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))

eval177.0ms (0.9%)

Compiler

Compiled 5856 to 4492 computations (23.3% saved)

prune33.0ms (0.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2422244
Fresh000
Picked101
Done011
Total2433246
Error
17.4b
Counts
246 → 3
Alt Table
Click to see full alt table
StatusErrorProgram
17.4b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
17.4b
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
17.4b
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2))
Compiler

Compiled 44 to 35 computations (20.5% saved)

localize109.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
0.3b
(-.f64 2 (atan.f64 N))
1.6b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
15.1b
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2))
Compiler

Compiled 89 to 62 computations (30.3% saved)

series2.0ms (0%)

Counts
3 → 24
Calls

9 calls:

TimeVariablePointExpression
1.0ms
N
@-inf
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2))
1.0ms
N
@inf
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2))
0.0ms
N
@0
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2))
0.0ms
N
@-inf
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
0.0ms
N
@0
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))

rewrite152.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1496×rational.json-1
1496×rational.json-2
1320×exponential.json-3
1320×rational.json-4
1320×rational.json-3
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
018109
1129109
2254103
3522103
41081103
52309103
63757103
75301103
86727103
97841103
Stop Event
node limit
Counts
3 → 85
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2))
(-.f64 2 (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 1 (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (neg.f64 (+.f64 (atan.f64 N) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (neg.f64 (-.f64 2 (atan.f64 N)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 2 (atan.f64 N)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 2 (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (-.f64 1 (+.f64 (atan.f64 N) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (-.f64 2 (atan.f64 N))) (*.f64 1/2 (-.f64 2 (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) -2) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) -2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 2 (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (atan.f64 N) -2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (atan.f64 N) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 2 (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 2 (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (atan.f64 N) -2) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 N) -2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) -2) -4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (atan.f64 N) -2) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 2 (atan.f64 N))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) -2) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) -2) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 2 (atan.f64 N))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 2 (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 N) -2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) -2) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (atan.f64 N) -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 2 (atan.f64 N))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 2 (atan.f64 N)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (atan.f64 N) -2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (-.f64 2 (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (+.f64 (atan.f64 N) -1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 1 (+.f64 (atan.f64 N) -3)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)))))

simplify291.0ms (1.5%)

Algorithm
egg-herbie
Rules
2182×rational.json-simplify-42
1820×rational.json-simplify-2
1632×rational.json-simplify-35
1228×rational.json-simplify-1
918×rational.json-simplify-52
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01744019
13833563
28433563
322283563
436633563
550273155
658313155
765223155
867253155
968473155
1069543155
Stop Event
node limit
Counts
109 → 96
Calls
Call 1
Inputs
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(-.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 0)
(-.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 1)
(*.f64 1 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))
(*.f64 1/2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))
(*.f64 1/2 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)))
(*.f64 2 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 4))
(*.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)
(*.f64 4 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 8))
(*.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 1/2)
(*.f64 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1/4)
(*.f64 1/4 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))
(*.f64 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 4) 2)
(*.f64 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 8) 4)
(*.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)
(/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)
(/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 2)
(/.f64 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 4)
(/.f64 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))))) 64)
(pow.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(+.f64 -1 (neg.f64 (+.f64 (atan.f64 N) -3)))
(+.f64 -1 (-.f64 1 (neg.f64 (-.f64 2 (atan.f64 N)))))
(+.f64 (-.f64 2 (atan.f64 N)) 0)
(+.f64 0 (-.f64 2 (atan.f64 N)))
(+.f64 -2 (-.f64 1 (+.f64 (atan.f64 N) -3)))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)
(+.f64 (*.f64 1/2 (-.f64 2 (atan.f64 N))) (*.f64 1/2 (-.f64 2 (atan.f64 N))))
(+.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) -2) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) -2) 2)))
(*.f64 1 (-.f64 2 (atan.f64 N)))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) -2) -2))
(*.f64 -1 (+.f64 (atan.f64 N) -2))
(*.f64 2 (*.f64 1/2 (-.f64 2 (atan.f64 N))))
(*.f64 (-.f64 2 (atan.f64 N)) 1)
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) -2) -4))
(*.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 1/2)
(*.f64 (+.f64 (atan.f64 N) -2) -1)
(*.f64 (*.f64 (+.f64 (atan.f64 N) -2) -4) 1/4)
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) -2) -4))
(*.f64 (*.f64 1/2 (-.f64 2 (atan.f64 N))) 2)
(*.f64 (/.f64 (+.f64 (atan.f64 N) -2) 2) -2)
(*.f64 (/.f64 (+.f64 (atan.f64 N) -2) -4) 4)
(*.f64 (neg.f64 (-.f64 2 (atan.f64 N))) -1)
(/.f64 (-.f64 2 (atan.f64 N)) 1)
(/.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 2)
(/.f64 (+.f64 (atan.f64 N) -2) -1)
(/.f64 (*.f64 (+.f64 (atan.f64 N) -2) -4) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4)) 8)
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) -2)) -2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4))) 16)
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2)))) -8)
(/.f64 (neg.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2)))) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4))))) 64)
(/.f64 (*.f64 2 (neg.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))))) 8)
(/.f64 (neg.f64 (-.f64 2 (atan.f64 N))) -1)
(pow.f64 (-.f64 2 (atan.f64 N)) 1)
(neg.f64 (+.f64 (atan.f64 N) -2))
(neg.f64 (neg.f64 (-.f64 2 (atan.f64 N))))
(neg.f64 (+.f64 (+.f64 (atan.f64 N) -1) -1))
(neg.f64 (+.f64 1 (+.f64 (atan.f64 N) -3)))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 0)
(*.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(*.f64 1/2 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))
(*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)
(*.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 2)
(*.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1/2)
(*.f64 4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/4))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 1/4)
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 1/8)
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/4) 4)
(*.f64 1/8 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))
(/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)
(/.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 2)
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 4)
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8)))) 64)
(pow.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)
Outputs
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 0)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 1 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 1/2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 1/2 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)))
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 2 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 4))
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 4 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 8))
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 1/2)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1/4)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 1/4 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 4) 2)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 (/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 8) 4)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(/.f64 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))) 2)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(/.f64 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 4)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(/.f64 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))) 8)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))) 16)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))))) 32)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))))))) 64)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(pow.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 2 (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(+.f64 -1 (neg.f64 (+.f64 (atan.f64 N) -3)))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(+.f64 -1 (-.f64 1 (neg.f64 (-.f64 2 (atan.f64 N)))))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(+.f64 (-.f64 2 (atan.f64 N)) 0)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(+.f64 0 (-.f64 2 (atan.f64 N)))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(+.f64 -2 (-.f64 1 (+.f64 (atan.f64 N) -3)))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(+.f64 (*.f64 1/2 (-.f64 2 (atan.f64 N))) (*.f64 1/2 (-.f64 2 (atan.f64 N))))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(+.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) -2) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) -2) 2)))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 1 (-.f64 2 (atan.f64 N)))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) -2) -2))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 -1 (+.f64 (atan.f64 N) -2))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 2 (*.f64 1/2 (-.f64 2 (atan.f64 N))))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 (-.f64 2 (atan.f64 N)) 1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) -2) -4))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 1/2)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 (+.f64 (atan.f64 N) -2) -1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 (*.f64 (+.f64 (atan.f64 N) -2) -4) 1/4)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) -2) -4))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 (*.f64 1/2 (-.f64 2 (atan.f64 N))) 2)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 (/.f64 (+.f64 (atan.f64 N) -2) 2) -2)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 (/.f64 (+.f64 (atan.f64 N) -2) -4) 4)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(*.f64 (neg.f64 (-.f64 2 (atan.f64 N))) -1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (-.f64 2 (atan.f64 N)) 1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 2)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (+.f64 (atan.f64 N) -2) -1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 (+.f64 (atan.f64 N) -2) -4) 4)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4)) 8)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) -2)) -2)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4))) 16)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))) -4)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4)))) 32)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2)))) -8)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (neg.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2)))) 4)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) -2) -4))))) 64)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (*.f64 2 (neg.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))))) 8)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(/.f64 (neg.f64 (-.f64 2 (atan.f64 N))) -1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(pow.f64 (-.f64 2 (atan.f64 N)) 1)
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(neg.f64 (+.f64 (atan.f64 N) -2))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(neg.f64 (neg.f64 (-.f64 2 (atan.f64 N))))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(neg.f64 (+.f64 (+.f64 (atan.f64 N) -1) -1))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(neg.f64 (+.f64 1 (+.f64 (atan.f64 N) -3)))
(+.f64 1 (-.f64 1 (atan.f64 N)))
(-.f64 2 (atan.f64 N))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 0)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1/2 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 2)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1/2)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/4))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 1/4)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 1/8)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/4) 4)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1/8 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 2)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 4) 4)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8) 8)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8)) 16)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8))) 32)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 8)))) 64)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(pow.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1)
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(atan.f64 (+.f64 N 1))
0.2b
(-.f64 -1 (atan.f64 (+.f64 N 1)))
0.2b
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
15.8b
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
Compiler

Compiled 39 to 28 computations (28.2% saved)

series2.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
N
@inf
(-.f64 -1 (atan.f64 (+.f64 N 1)))
0.0ms
N
@0
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
0.0ms
N
@-inf
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
0.0ms
N
@inf
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
0.0ms
N
@0
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))

rewrite145.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1520×rational.json-1
1520×rational.json-2
1504×rational.json-simplify-35
1228×exponential.json-3
1228×rational.json-4
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01277
18677
217477
333975
465373
5146473
6302773
7460173
8609373
9776773
Stop Event
node limit
Counts
3 → 104
Calls
Call 1
Inputs
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (atan.f64 N) 2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (atan.f64 N) 2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (neg.f64 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 -2 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 -1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (-.f64 1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (atan.f64 (+.f64 N 1))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) -1) (+.f64 1 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 -1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))))))

simplify311.0ms (1.6%)

Algorithm
egg-herbie
Rules
2464×rational.json-simplify-2
1938×rational.json-simplify-35
1170×rational.json-simplify-52
1076×rational.json-simplify-49
1000×rational.json-simplify-1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01993232
14463232
210553036
328523036
441443036
547153036
655153036
767593036
876003036
978663036
Stop Event
node limit
Counts
140 → 112
Calls
Call 1
Inputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(+.f64 -1 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 0)
(+.f64 0 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) -1)
(+.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(+.f64 -2 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1))))))
(+.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)))
(*.f64 -1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 1 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(*.f64 2 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 1/2)
(*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)
(*.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2) -2)
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)
(/.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)
(/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)
(/.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8) 8)
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -2)
(/.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)) 16)
(/.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) -8)
(/.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)))) 64)
(/.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))) 16)
(pow.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(-.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 0)
(-.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 1)
(-.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1)))) -1)
(*.f64 1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2))
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2) 1/2)
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2))
(*.f64 1/2 (+.f64 (*.f64 (atan.f64 N) 2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2)))
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2) 2)
(*.f64 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)
(*.f64 (+.f64 (*.f64 (atan.f64 N) 2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2)) 1/2)
(/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2) 2)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))))) 128)
(pow.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(+.f64 -1 (neg.f64 (atan.f64 (+.f64 N 1))))
(+.f64 1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 0)
(+.f64 0 (-.f64 -1 (atan.f64 (+.f64 N 1))))
(+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))
(+.f64 (neg.f64 (atan.f64 (+.f64 N 1))) -1)
(+.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))
(+.f64 -2 (-.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) 1)
(+.f64 (-.f64 1 (atan.f64 (+.f64 N 1))) -2)
(+.f64 (+.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) -1) (+.f64 1 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 1 (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))
(*.f64 4 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4))
(*.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2) 1/2)
(*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1)
(*.f64 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 1/4)
(*.f64 1/2 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2))
(*.f64 1/4 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4))
(*.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) 2)
(*.f64 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) 2) -2)
(*.f64 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 4)
(/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(/.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2) 2)
(/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1)
(/.f64 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 4)
(/.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) -2) -2)
(/.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8) 8)
(/.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))) -4)
(/.f64 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))) 32)
(/.f64 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)))) 64)
(/.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))))) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))))) 16)
(pow.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
Outputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 -1 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 0)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(+.f64 0 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) -1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(+.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(+.f64 -2 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1))))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(+.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 -1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 1 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 2 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 1/2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 1/4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2) -2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8) 8)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -2)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)) 16)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))) 32)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) -8)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) 4)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)))) 64)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) 8)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) -16)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))))) 128)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(/.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))) 16)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(pow.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 0)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 1)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1)))) -1)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2) 1/2)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 1/4)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 1/2 (+.f64 (*.f64 (atan.f64 N) 2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2)))
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2) 2)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (+.f64 (*.f64 (atan.f64 N) 2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2)) 1/2)
(*.f64 1/2 (+.f64 (*.f64 (atan.f64 N) 2) (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2)))
(/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2) 2)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8) 8)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)) 16)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))) 32)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)))) 64)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))))) 128)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(pow.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(+.f64 -1 (neg.f64 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 0)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 0 (-.f64 -1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 (neg.f64 (atan.f64 (+.f64 N 1))) -1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 -2 (-.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 (-.f64 1 (atan.f64 (+.f64 N 1))) -2)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(+.f64 (+.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) -1) (+.f64 1 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2)))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 1 (-.f64 -1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 4 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2) 1/2)
(*.f64 1/2 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2))
(*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 1/4)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 1/2 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2))
(*.f64 1/4 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) 2)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) 2) -2)
(*.f64 -2 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) 2))
(*.f64 (/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 4)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) -2) 2) 2)
(/.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -4) 4)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) -2) -2)
(/.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8) 8)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))) -4)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)) 16)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))) -8)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))) 32)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))) 4)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)))) 64)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))))) 8)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1)))))) -16)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))))) 128)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 1 (atan.f64 (+.f64 N 1))))))) 16)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(pow.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))

eval305.0ms (1.6%)

Compiler

Compiled 6030 to 4679 computations (22.4% saved)

prune46.0ms (0.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New2883291
Fresh000
Picked011
Done112
Total2895294
Error
17.3b
Counts
294 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
17.4b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
17.4b
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
17.4b
(-.f64 -1 (+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))
17.4b
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) 2))
17.4b
(*.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)
Compiler

Compiled 83 to 67 computations (19.3% saved)

localize140.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
0.3b
(-.f64 2 (atan.f64 N))
1.6b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
15.1b
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
Compiler

Compiled 84 to 57 computations (32.1% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
1.0ms
N
@0
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
1.0ms
N
@-inf
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
1.0ms
N
@inf
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))

rewrite123.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1642×rational.json-1
1642×rational.json-2
1412×exponential.json-3
1412×rational.json-4
1412×rational.json-3
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
01559
110659
221859
348659
4112959
5242659
6416859
7629227
8788127
Stop Event
node limit
Counts
1 → 45
Calls
Call 1
Inputs
(+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 N) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) (*.f64 2 (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))) (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) (-.f64 (*.f64 1/2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1) (+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 1 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 3/2) (*.f64 1/2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (+.f64 (atan.f64 N) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) 1/2) (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2) (*.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) (*.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))))))

simplify391.0ms (2%)

Algorithm
egg-herbie
Rules
2252×rational.json-simplify-52
2120×rational.json-simplify-35
1564×rational.json-simplify-2
1246×rational.json-simplify-1
722×exponential.json-simplify-26
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01172083
12551747
25161747
312371747
432771747
543081747
645791747
748801747
852191747
957001747
1064091747
1169031747
1269081747
1369611747
1469621747
1569621747
Stop Event
node limit
Counts
57 → 53
Calls
Call 1
Inputs
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (*.f64 2 (atan.f64 N)))
(-.f64 1 (-.f64 (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 N) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 0 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 0)
(-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) (*.f64 2 (atan.f64 N)))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))) (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) (-.f64 (*.f64 1/2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1) (+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1))
(-.f64 (-.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N))
(-.f64 (-.f64 1 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))) 1)
(-.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 3/2) (*.f64 1/2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (+.f64 (atan.f64 N) -1))
(-.f64 (-.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)
(-.f64 (-.f64 (+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N))
(*.f64 1 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 2 (+.f64 (*.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) 1/2) (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2)))
(*.f64 2 (+.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2) (*.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) 1/2)))
(*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2)
(*.f64 -2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(*.f64 -1 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/2)
(*.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)
(*.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -2)
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 1/4)
(*.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))
(*.f64 1/2 (+.f64 (*.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))
(*.f64 1/2 (+.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) (*.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))
(*.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)
(*.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) 4)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 2)
(/.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 4)
(/.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 8)
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 32)
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))))) 64)
(pow.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)
(neg.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
Outputs
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 1 (-.f64 (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 N) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 0 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 0)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 (atan.f64 (+.f64 N 1)) 2) (*.f64 2 (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 1 (atan.f64 N))) (+.f64 1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) (-.f64 (*.f64 1/2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1) (+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (-.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (-.f64 1 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))) 1)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 3/2) (*.f64 1/2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 3/2) (*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) 1/2))
(-.f64 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (+.f64 (atan.f64 N) -1))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (-.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (-.f64 (+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (+.f64 (*.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) 1/2) (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2)))
(*.f64 2 (+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))
(*.f64 2 (*.f64 1/2 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 2 (atan.f64 N)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 -2 (-.f64 2 (atan.f64 N)))))))
(*.f64 2 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 -2 (-.f64 2 (atan.f64 N)))))))
(*.f64 2 (+.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 1/2) (*.f64 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2) 1/2)))
(*.f64 2 (+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))
(*.f64 2 (*.f64 1/2 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 2 (atan.f64 N)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 -2 (-.f64 2 (atan.f64 N)))))))
(*.f64 2 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 -2 (-.f64 2 (atan.f64 N)))))))
(*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 2)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 -2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 -1 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 1/2)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -2)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 1/4)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1/2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1/2 (+.f64 (*.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))
(*.f64 2 (+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))
(*.f64 2 (*.f64 1/2 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 2 (atan.f64 N)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 -2 (-.f64 2 (atan.f64 N)))))))
(*.f64 2 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 -2 (-.f64 2 (atan.f64 N)))))))
(*.f64 1/2 (+.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) (*.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))
(*.f64 2 (+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))))))
(*.f64 2 (*.f64 1/2 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 2 (atan.f64 N)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)))))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 -2 (-.f64 2 (atan.f64 N)))))))
(*.f64 2 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 -2 (-.f64 2 (atan.f64 N)))))))
(*.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 1/4 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(*.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) 4)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 4) 2)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8) 4)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) -1)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)) 8)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4) -2)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))) 16)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8)))) 32)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -4)) -4)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 8))))) 64)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(pow.f64 (*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) 1)
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(neg.f64 (*.f64 2 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))))
(-.f64 (*.f64 2 (atan.f64 (+.f64 N 1))) (*.f64 2 (atan.f64 N)))
(*.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))

localize103.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1))
0.3b
(+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)
1.6b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
15.4b
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) 2))
Compiler

Compiled 111 to 80 computations (27.9% saved)

series1.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
N
@0
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) 2))
0.0ms
N
@-inf
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) 2))
0.0ms
N
@inf
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) 2))
0.0ms
N
@-inf
(+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1))
0.0ms
N
@inf
(+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1))

rewrite117.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1682×rational.json-simplify-35
1538×exponential.json-3
1538×rational.json-1
1538×rational.json-2
1538×rational.json-4
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
021139
1155127
2312121
3681115
41647115
53545115
65111115
76800115
Stop Event
node limit
Counts
3 → 78
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) 2))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)
(+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 (+.f64 (atan.f64 N) -3) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (+.f64 (atan.f64 N) -3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (+.f64 1 (+.f64 (atan.f64 N) -4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (atan.f64 N) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (+.f64 (atan.f64 N) -4) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -2 (+.f64 (atan.f64 N) -4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (+.f64 (atan.f64 N) -3) -1/2) -1) (*.f64 1/2 (+.f64 (atan.f64 N) -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (neg.f64 (+.f64 (atan.f64 N) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (atan.f64 N) -2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (atan.f64 N) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (neg.f64 (+.f64 (atan.f64 N) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 N) -2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (neg.f64 (+.f64 (atan.f64 N) -2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 N) -2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (atan.f64 N) -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (atan.f64 N) -2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (+.f64 (atan.f64 N) -4) -2))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)))))

simplify324.0ms (1.7%)

Algorithm
egg-herbie
Rules
1980×rational.json-simplify-42
1780×rational.json-simplify-35
1720×rational.json-simplify-2
1106×rational.json-simplify-52
1014×rational.json-simplify-51
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01644290
13523946
29723946
322333946
435803946
543903726
649903682
752933682
855473682
957473682
1059783682
1164223682
Stop Event
node limit
Counts
114 → 95
Calls
Call 1
Inputs
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(-.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 0)
(-.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))) 1)
(*.f64 1 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))
(*.f64 1/2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))
(*.f64 1/2 (+.f64 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))
(*.f64 2 (/.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4))
(*.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)
(*.f64 4 (/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4))
(*.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1/2)
(*.f64 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))) 1/4)
(*.f64 1/4 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))
(*.f64 (/.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4) 2)
(*.f64 (/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4) 4)
(*.f64 (+.f64 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))) 1/2)
(/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)
(/.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 2)
(/.f64 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))) 4)
(/.f64 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))))) 64)
(pow.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)
(-.f64 1 (-.f64 (+.f64 (atan.f64 N) -3) -2))
(-.f64 -1 (+.f64 (atan.f64 N) -3))
(-.f64 -1 (+.f64 1 (+.f64 (atan.f64 N) -4)))
(-.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) 1)
(-.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 0)
(-.f64 0 (+.f64 (atan.f64 N) -2))
(-.f64 0 (-.f64 (+.f64 (atan.f64 N) -4) -2))
(-.f64 -2 (+.f64 (atan.f64 N) -4))
(-.f64 (+.f64 (*.f64 (+.f64 (atan.f64 N) -3) -1/2) -1) (*.f64 1/2 (+.f64 (atan.f64 N) -3)))
(*.f64 1 (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) -2) -2))
(*.f64 -1 (+.f64 (atan.f64 N) -2))
(*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)
(*.f64 2 (*.f64 1/2 (neg.f64 (+.f64 (atan.f64 N) -2))))
(*.f64 4 (/.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))
(*.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 1/2)
(*.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 1/4)
(*.f64 (+.f64 (atan.f64 N) -2) -1)
(*.f64 1/4 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))
(*.f64 (*.f64 1/2 (neg.f64 (+.f64 (atan.f64 N) -2))) 2)
(*.f64 (/.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 4)
(/.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)
(/.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 2)
(/.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 4)
(/.f64 (+.f64 (atan.f64 N) -2) -1)
(/.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))) 16)
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) -2)) -2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)))) 32)
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))) -4)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))))) 64)
(pow.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)
(neg.f64 (+.f64 (atan.f64 N) -2))
(neg.f64 (-.f64 (+.f64 (atan.f64 N) -4) -2))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 0)
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -3))) 1)
(*.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2))
(*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))
(*.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))) 2)
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2) 1/2)
(*.f64 4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1/4))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4) 1/4)
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8) 1/8)
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1/4) 4)
(*.f64 1/8 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8))
(/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2) 2)
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4) 4)
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8)))) 64)
(pow.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)
Outputs
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))) (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 (+.f64 (*.f64 1/2 (-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))) (*.f64 1/2 (-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N)))) 1)
(+.f64 (*.f64 1/2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))) (-.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))) 1))
(+.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(+.f64 (*.f64 1/2 (+.f64 2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))) -1)
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 2 (atan.f64 N))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 2 (atan.f64 (-.f64 1 (*.f64 -1 N)))) (atan.f64 N))
(+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N)))
(+.f64 2 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)))
(-.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 0)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(-.f64 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))) 1)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 1 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 1/2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 2 (/.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 4 (/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1/2)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))) 1/4)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 1/4 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 (/.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4) 2)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 (/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 4) 4)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(*.f64 (+.f64 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -1)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))) 1/2)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(/.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(/.f64 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 2)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(/.f64 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))) 4)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(/.f64 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))) 8)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))) 16)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))))) 32)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))))))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (+.f64 -1 (+.f64 -1 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))))))))) 64)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(pow.f64 (+.f64 -1 (*.f64 1/2 (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))) 1)
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (+.f64 (atan.f64 N) -2))))))
(+.f64 -1 (*.f64 1/2 (+.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (-.f64 0 (atan.f64 N)))))
(*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) (neg.f64 (atan.f64 N)))))
(-.f64 1 (-.f64 (+.f64 (atan.f64 N) -3) -2))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 -1 (+.f64 (atan.f64 N) -3))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 -1 (+.f64 1 (+.f64 (atan.f64 N) -4)))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) 1)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 0)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 0 (+.f64 (atan.f64 N) -2))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 0 (-.f64 (+.f64 (atan.f64 N) -4) -2))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 -2 (+.f64 (atan.f64 N) -4))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 (+.f64 (*.f64 (+.f64 (atan.f64 N) -3) -1/2) -1) (*.f64 1/2 (+.f64 (atan.f64 N) -3)))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 1 (neg.f64 (+.f64 (atan.f64 N) -2)))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) -2) -2))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 -1 (+.f64 (atan.f64 N) -2))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 2 (*.f64 1/2 (neg.f64 (+.f64 (atan.f64 N) -2))))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 4 (/.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 1/2)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 1/4)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 (+.f64 (atan.f64 N) -2) -1)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 1/4 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 (*.f64 1/2 (neg.f64 (+.f64 (atan.f64 N) -2))) 2)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(*.f64 (/.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 4)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (*.f64 (+.f64 (atan.f64 N) -2) -2) 2)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4) 4)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (+.f64 (atan.f64 N) -2) -1)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)) 8)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))) 16)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) -2)) -2)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)))) 32)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (atan.f64 N) -2))) -4)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 4))))) 64)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(pow.f64 (neg.f64 (+.f64 (atan.f64 N) -2)) 1)
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (-.f64 (+.f64 (atan.f64 N) -4) -2))
(-.f64 1 (+.f64 -3 (-.f64 (atan.f64 N) -2)))
(neg.f64 (+.f64 (atan.f64 N) -2))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 0)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(-.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -3))) 1)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 1 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))))
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2))
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 2 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))))
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 (*.f64 1/2 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))) 2)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2) 1/2)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1/4))
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4) 1/4)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8) 1/8)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4))
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1/4) 4)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(*.f64 1/8 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8))
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 2) 2)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 4) 4)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(/.f64 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8) 8)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8)) 16)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8))) 32)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 8)))) 64)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))
(pow.f64 (+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2))) 1)
(+.f64 (atan.f64 (+.f64 N 1)) (neg.f64 (+.f64 (atan.f64 N) -2)))

localize24.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 -3 (atan.f64 (+.f64 N 1)))
0.2b
(+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))))
0.3b
(+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))
15.8b
(-.f64 -1 (+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))
Compiler

Compiled 53 to 41 computations (22.6% saved)

series1.0ms (0%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
N
@0
(-.f64 -1 (+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))
0.0ms
N
@-inf
(-.f64 -3 (atan.f64 (+.f64 N 1)))
0.0ms
N
@0
(-.f64 -3 (atan.f64 (+.f64 N 1)))
0.0ms
N
@inf
(-.f64 -3 (atan.f64 (+.f64 N 1)))
0.0ms
N
@-inf
(-.f64 -1 (+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))

rewrite150.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1644×rational.json-simplify-35
1524×rational.json-1
1524×rational.json-2
1524×rational.json-3
1258×exponential.json-3
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
015112
1106112
2205110
3414110
4889110
51765110
6304194
7472192
8609490
9764190
Stop Event
node limit
Counts
4 → 141
Calls
Call 1
Inputs
(-.f64 -1 (+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))
(+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))
(+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (atan.f64 (+.f64 N 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -3 (-.f64 (atan.f64 (+.f64 N 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -3 (+.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (+.f64 2 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 -1 (-.f64 -3 (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2) (+.f64 1 (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -2 (+.f64 -1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 -1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -2))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (atan.f64 N) 2) (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 (atan.f64 N) 2) (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 -4 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 -3 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (-.f64 -1 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2) (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2)) (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (atan.f64 (+.f64 N 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 -3 (atan.f64 (+.f64 N 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) 3)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))))))

simplify384.0ms (2%)

Algorithm
egg-herbie
Rules
2354×rational.json-simplify-35
1734×rational.json-simplify-2
1526×rational.json-simplify-1
724×rational.json-simplify-52
606×rational.json-simplify-48
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02595019
15694353
213754353
329434347
439254341
551984341
657624341
761844341
863544341
965024341
1068654341
1172614341
1274214341
1377274341
Stop Event
node limit
Counts
189 → 161
Calls
Call 1
Inputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 3 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 3 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(*.f64 -1 (+.f64 3 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 0)
(+.f64 0 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(+.f64 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -1)
(+.f64 -2 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1))))))
(+.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(+.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)))
(*.f64 -1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 2 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(*.f64 1 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(*.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 1/2)
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))
(*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)
(*.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2) -2)
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)
(/.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)
(/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -2)
(/.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)) 16)
(/.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) -8)
(/.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)))) 64)
(/.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))) 16)
(pow.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(-.f64 -3 (-.f64 (atan.f64 (+.f64 N 1)) 2))
(-.f64 -3 (+.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -1))
(-.f64 1 (+.f64 2 (atan.f64 (+.f64 N 1))))
(-.f64 1 (-.f64 -1 (-.f64 -3 (atan.f64 (+.f64 N 1)))))
(-.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 0)
(-.f64 0 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 0 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(-.f64 0 (+.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) -1))
(-.f64 0 (-.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -2))
(-.f64 0 (-.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2) (+.f64 1 (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2)))))
(-.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) -1)
(-.f64 (neg.f64 (atan.f64 (+.f64 N 1))) 1)
(-.f64 -2 (+.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (+.f64 1 (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))
(*.f64 1 (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(*.f64 4 (/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4))
(*.f64 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2)
(*.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 1/4)
(*.f64 1/2 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(*.f64 1/4 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4))
(*.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) 2)
(*.f64 (/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 4)
(/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(/.f64 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2)
(/.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 4)
(/.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))))) 128)
(pow.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(neg.f64 (+.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) -1))
(neg.f64 (-.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -2))
(-.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 0)
(-.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 1)
(-.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1)))) -1)
(*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2))
(*.f64 1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(*.f64 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) 1/2)
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 1/4)
(*.f64 1/2 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))))
(*.f64 1/2 (+.f64 (*.f64 (atan.f64 N) 2) (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1))))))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2) 2)
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)
(*.f64 (+.f64 (*.f64 (atan.f64 N) 2) (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1))))) 1/2)
(/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) 2)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))))) 128)
(pow.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(+.f64 1 (-.f64 -4 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 0)
(+.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) -2)
(+.f64 0 (-.f64 -3 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) -1)
(+.f64 -2 (-.f64 -1 (atan.f64 (+.f64 N 1))))
(+.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2) (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))
(+.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2)) (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2)))
(*.f64 -1 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))
(*.f64 1 (-.f64 -3 (atan.f64 (+.f64 N 1))))
(*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)
(*.f64 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) 1/2)
(*.f64 4 (/.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4))
(*.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) -1)
(*.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 1/4)
(*.f64 1/2 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))))
(*.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2) 2)
(*.f64 1/4 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4))
(*.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2) -2)
(*.f64 (/.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 4)
(/.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)
(/.f64 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) 2)
(/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) -1)
(/.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 4)
(/.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) 3)) -2)
(/.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8) 8)
(/.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)) -4)
(/.f64 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8))) 32)
(/.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))) 4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)))) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8)))) 64)
(/.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8))))) 128)
(/.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))))) 16)
(pow.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
Outputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 (atan.f64 (-.f64 1 (*.f64 -1 N))) (atan.f64 N))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 -1 (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(-.f64 (atan.f64 N) (+.f64 1 (atan.f64 (+.f64 N 1))))
(+.f64 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1))))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 -1 (+.f64 3 (atan.f64 (-.f64 1 (*.f64 -1 N)))))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(+.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 0)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(+.f64 0 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(+.f64 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -1)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(+.f64 -2 (neg.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1))))))
(+.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(+.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)) (-.f64 1 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2)))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 -1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 2 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 1 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 1/2)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 1/4)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 1/2 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 2) -2)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -2) 2)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -1)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) -4) 4)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -2)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8) 8)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)) 16)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) -4)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))) 32)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) -8)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))) 4)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8)))) 64)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) 8)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))) -16)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 8))))) 128)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(/.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))))) 16)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(pow.f64 (neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))) 1)
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(neg.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))))
(+.f64 -1 (-.f64 1 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1))))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 -3 (-.f64 (atan.f64 (+.f64 N 1)) 2))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 -3 (+.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -1))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 1 (+.f64 2 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 1 (-.f64 -1 (-.f64 -3 (atan.f64 (+.f64 N 1)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 0)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 0 (+.f64 1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 0 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 0 (+.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) -1))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 0 (-.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -2))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 0 (-.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2) (+.f64 1 (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2)))))
(neg.f64 (-.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2) (+.f64 1 (+.f64 1 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) 2) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(-.f64 (+.f64 2 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1))))) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(+.f64 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) (-.f64 2 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2)))
(-.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) -1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 (neg.f64 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 -2 (+.f64 -1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 (+.f64 1 (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(neg.f64 (-.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2) (+.f64 1 (+.f64 1 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))))
(-.f64 (+.f64 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) 2) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(-.f64 (+.f64 2 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1))))) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(+.f64 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) (-.f64 2 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2)))
(*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 1 (-.f64 -1 (atan.f64 (+.f64 N 1))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 4 (/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 1/4)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 1/2 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 1/4 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1/2) 2)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(*.f64 (/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 4)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1)))) 2)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 4) 4)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8) 8)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)) 16)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))) 32)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8)))) 64)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 8))))) 128)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(pow.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) 1)
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(neg.f64 (-.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(neg.f64 (+.f64 (+.f64 2 (atan.f64 (+.f64 N 1))) -1))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(neg.f64 (-.f64 (+.f64 -1 (atan.f64 (+.f64 N 1))) -2))
(neg.f64 (+.f64 1 (atan.f64 (+.f64 N 1))))
(-.f64 -1 (atan.f64 (+.f64 N 1)))
(-.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 0)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (+.f64 (atan.f64 N) (neg.f64 (atan.f64 (+.f64 N 1)))) 1)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(-.f64 (+.f64 (atan.f64 N) (-.f64 -2 (atan.f64 (+.f64 N 1)))) -1)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) 1/2)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 4 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 1/4)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 1/2 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 1/2 (+.f64 (*.f64 (atan.f64 N) 2) (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1))))))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1/2) 2)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 1/4 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4))
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(*.f64 (+.f64 (*.f64 (atan.f64 N) 2) (*.f64 2 (-.f64 -1 (atan.f64 (+.f64 N 1))))) 1/2)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))) 2)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 4) 4)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8) 8)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)) 16)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))) 32)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8)))) 64)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 8))))) 128)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(pow.f64 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))) 1)
(+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1))))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(+.f64 1 (-.f64 -4 (atan.f64 (+.f64 N 1))))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(+.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 0)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(+.f64 (-.f64 -1 (atan.f64 (+.f64 N 1))) -2)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(+.f64 0 (-.f64 -3 (atan.f64 (+.f64 N 1))))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(+.f64 (-.f64 -2 (atan.f64 (+.f64 N 1))) -1)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(+.f64 -2 (-.f64 -1 (atan.f64 (+.f64 N 1))))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(+.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2) (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(+.f64 (-.f64 -1 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2)) (+.f64 1 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2)))
(+.f64 1 (+.f64 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) (-.f64 -1 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))))
(+.f64 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) (-.f64 0 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2)))
(-.f64 (*.f64 1/2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(*.f64 -1 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 1 (-.f64 -3 (atan.f64 (+.f64 N 1))))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) 1/2)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 4 (/.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) -1)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(*.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 1/4)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 1/2 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1/2) 2)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 1/4 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4))
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(*.f64 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2) -2)
(*.f64 -2 (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) 2))
(*.f64 (/.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 4)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1)))) 2)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3) -1)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(/.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 4) 4)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (+.f64 (atan.f64 (+.f64 N 1)) 3)) -2)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(/.f64 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8) 8)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)) -4)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(/.f64 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8)) 16)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))) -8)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8))) 32)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))) 4)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)))) -16)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8)))) 64)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3)))) 8)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 8))))) 128)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(/.f64 (*.f64 2 (*.f64 2 (neg.f64 (*.f64 4 (+.f64 (atan.f64 (+.f64 N 1)) 3))))) 16)
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))
(pow.f64 (-.f64 -3 (atan.f64 (+.f64 N 1))) 1)
(+.f64 -1 (-.f64 -2 (atan.f64 (+.f64 N 1))))
(-.f64 -3 (atan.f64 (+.f64 N 1)))
(neg.f64 (+.f64 (atan.f64 (+.f64 N 1)) 3))

eval743.0ms (3.8%)

Compiler

Compiled 10755 to 8352 computations (22.3% saved)

prune507.0ms (2.6%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New4852487
Fresh000
Picked011
Done134
Total4866492
Error
17.3b
Counts
492 → 6
Alt Table
Click to see full alt table
StatusErrorProgram
17.4b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
17.4b
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
17.4b
(-.f64 -1 (+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))
17.4b
(*.f64 (-.f64 (-.f64 (+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N)) 1/2)
17.4b
(*.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)
17.4b
(*.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)
Compiler

Compiled 103 to 82 computations (20.4% saved)

regimes362.0ms (1.9%)

Counts
9 → 1
Calls
Call 1
Inputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(-.f64 -1 (+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))
(*.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)
(*.f64 (-.f64 (-.f64 (+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N)) 1/2)
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2)))
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) 2))
(*.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)
(+.f64 (+.f64 (*.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) 1/2) -1) (/.f64 (+.f64 (atan.f64 (+.f64 N 1)) (+.f64 (neg.f64 (+.f64 (atan.f64 N) -3)) -1)) 2))
Outputs
(*.f64 (-.f64 (-.f64 (+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N)) 1/2)
Calls

2 calls:

356.0ms
N
2.0ms
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Results
ErrorSegmentsBranch
17.4b1N
17.4b1(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 180 to 133 computations (26.1% saved)

regimes7.0ms (0%)

Accuracy

Total -0.1b remaining (-0.3%)

Threshold costs -0.1b (-0.3%)

Counts
4 → 1
Calls
Call 1
Inputs
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(-.f64 -1 (+.f64 (atan.f64 N) (+.f64 2 (-.f64 -3 (atan.f64 (+.f64 N 1))))))
(*.f64 (+.f64 (+.f64 (atan.f64 (+.f64 N 1)) (-.f64 2 (atan.f64 N))) (+.f64 (-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N)) -2)) 1/2)
Outputs
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
Calls

2 calls:

4.0ms
N
2.0ms
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Results
ErrorSegmentsBranch
17.4b1N
17.4b1(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 63 to 46 computations (27% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
020119
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (-.f64 (-.f64 (+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N)) 1/2)
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Outputs
(*.f64 (-.f64 (-.f64 (+.f64 (+.f64 1 (atan.f64 (+.f64 N 1))) -1) (-.f64 (atan.f64 N) (atan.f64 (+.f64 N 1)))) (atan.f64 N)) 1/2)
(-.f64 -1 (+.f64 (atan.f64 N) (-.f64 -1 (atan.f64 (+.f64 N 1)))))
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 42 to 33 computations (21.4% saved)

soundness0.0ms (0%)

end79.0ms (0.4%)

Compiler

Compiled 40 to 29 computations (27.5% saved)

Profiling

Loading profile data...