Details

Time bar (total: 23.9s)

analyze759.0ms (3.2%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
25%25%74.9%0.1%0%0%0%6
25%25%74.9%0.1%0%0%0%7
25%25%74.9%0.1%0%0%0%8
25%25%74.9%0.1%0%0%0%9
28.1%25%64%0.1%10.9%0%0%10
36.4%31.2%54.6%0.1%14%0%0%11
46.9%39%44.1%0.1%16.8%0%0%12
Compiler

Compiled 23 to 16 computations (30.4% saved)

sample7.7s (32.1%)

Results
2.1s1872×body1024valid
1.9s5476×body256valid
1.8s1667×body1024infinite
605.0ms1598×body256infinite
537.0ms901×body512valid
497.0ms828×body512infinite
8.0msbody2048valid
Bogosity

preprocess128.0ms (0.5%)

Algorithm
egg-herbie
Rules
1184×rational.json-simplify-64
1138×rational.json-simplify-45
978×rational.json-simplify-1
940×rational.json-simplify-42
872×rational.json-simplify-44
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027236
165156
2124156
3192156
4282156
5454156
61057156
73714156
87668156
033
133
Stop Event
unsound
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
0
2
Call 2
Inputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 (cos.f64 a1) (sqrt.f64 2)) (*.f64 th th)) (*.f64 (/.f64 (cos.f64 a1) (sqrt.f64 2)) (*.f64 a2 a2)))
(+.f64 (*.f64 (/.f64 (cos.f64 a2) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 a2) (sqrt.f64 2)) (*.f64 th th)))
Outputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(+.f64 (*.f64 (/.f64 (cos.f64 a1) (sqrt.f64 2)) (*.f64 th th)) (*.f64 (/.f64 (cos.f64 a1) (sqrt.f64 2)) (*.f64 a2 a2)))
(+.f64 (*.f64 th (*.f64 th (/.f64 (cos.f64 a1) (sqrt.f64 2)))) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 a1) (sqrt.f64 2)))))
(*.f64 (/.f64 (cos.f64 a1) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 th th)))
(+.f64 (*.f64 (/.f64 (cos.f64 a2) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 a2) (sqrt.f64 2)) (*.f64 th th)))
(+.f64 (*.f64 (*.f64 a1 a1) (/.f64 (cos.f64 a2) (sqrt.f64 2))) (*.f64 th (*.f64 th (/.f64 (cos.f64 a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (cos.f64 a2) (sqrt.f64 2)) (+.f64 (*.f64 th th) (*.f64 a1 a1)))
(*.f64 (/.f64 (cos.f64 a2) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 th th)))
Symmetry

(sort a1 a2)

Compiler

Compiled 25 to 18 computations (28% saved)

simplify99.0ms (0.4%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01559
13139
25439
38039
411639
518239
637839
7128739
8325539
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
Outputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

eval2.0ms (0%)

Compiler

Compiled 48 to 25 computations (47.9% saved)

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New123
Fresh011
Picked000
Done000
Total134
Error
0.5b
Counts
4 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
0.5b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Compiler

Compiled 38 to 26 computations (31.6% saved)

localize31.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
Compiler

Compiled 42 to 17 computations (59.5% saved)

series18.0ms (0.1%)

Counts
3 → 64
Calls

18 calls:

TimeVariablePointExpression
3.0ms
th
@-inf
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
2.0ms
a2
@0
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
2.0ms
th
@0
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
2.0ms
th
@inf
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
1.0ms
a1
@0
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))

rewrite199.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01473
112473
242473
3171573
4792973
Stop Event
node limit
Counts
3 → 37
Calls
Call 1
Inputs
(/.f64 (cos.f64 th) (sqrt.f64 2))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (cos.f64 th) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 (*.f64 a1 a1) (neg.f64 (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 (*.f64 a2 a2) (neg.f64 (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))))

simplify296.0ms (1.2%)

Algorithm
egg-herbie
Rules
1172×rational.json-simplify-50
1112×rational.json-simplify-54
974×rational.json-simplify-58
902×rational.json-simplify-43
832×rational.json-simplify-41
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01303369
12603369
25683369
322163369
458283369
Stop Event
node limit
Counts
101 → 74
Calls
Call 1
Inputs
(/.f64 1 (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (/.f64 1 (sqrt.f64 2)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2))) (/.f64 1 (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 th 6) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2))) (/.f64 1 (sqrt.f64 2)))))
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 0)
(+.f64 0 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(-.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1))
(*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 1)
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(-.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(pow.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(fabs.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(fabs.f64 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1)))
(fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(fabs.f64 (-.f64 (*.f64 a1 a1) (neg.f64 (*.f64 a2 a2))))
(fabs.f64 (-.f64 (*.f64 a2 a2) (neg.f64 (*.f64 a1 a1))))
(fabs.f64 (-.f64 0 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1))))
(fabs.f64 (/.f64 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
Outputs
(/.f64 1 (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (/.f64 1 (sqrt.f64 2)))
(+.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2))) (/.f64 1 (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (+.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2)))))
(+.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2)))))
(+.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 th 6) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2))) (/.f64 1 (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (pow.f64 th 6) (sqrt.f64 2)))))
(+.f64 (+.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (pow.f64 th 6) (sqrt.f64 2)))))
(+.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 th 2) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 th 4) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (pow.f64 th 6) (sqrt.f64 2))))))
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 th 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 0)
(/.f64 (cos.f64 th) (sqrt.f64 2))
(+.f64 0 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (cos.f64 th) (sqrt.f64 2))
(-.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 0)
(/.f64 (cos.f64 th) (sqrt.f64 2))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 1)
(/.f64 (cos.f64 th) (sqrt.f64 2))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(/.f64 (cos.f64 th) (sqrt.f64 2))
(*.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (cos.f64 th) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(/.f64 (cos.f64 th) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1))
(/.f64 (cos.f64 th) (sqrt.f64 2))
(*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(/.f64 (cos.f64 th) (sqrt.f64 2))
(*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(/.f64 (cos.f64 th) (sqrt.f64 2))
(pow.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) 1)
(/.f64 (cos.f64 th) (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(*.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(pow.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (-.f64 (*.f64 a1 a1) (neg.f64 (*.f64 a2 a2))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (-.f64 (*.f64 a2 a2) (neg.f64 (*.f64 a1 a1))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (-.f64 0 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (/.f64 (-.f64 (neg.f64 (*.f64 a2 a2)) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))

localize43.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
Compiler

Compiled 59 to 29 computations (50.8% saved)

series20.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
3.0ms
th
@inf
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
1.0ms
a1
@0
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
1.0ms
th
@-inf
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
1.0ms
th
@inf
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
1.0ms
th
@-inf
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))

rewrite210.0ms (0.9%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
015113
113793
248093
3195293
Stop Event
node limit
Counts
3 → 26
Calls
Call 1
Inputs
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))))

simplify406.0ms (1.7%)

Algorithm
egg-herbie
Rules
876×rational.json-simplify-2
788×rational.json-simplify-50
706×exponential.json-simplify-26
698×rational.json-simplify-79
678×rational.json-simplify-104
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01244790
12564754
25824754
316094754
437514754
557844754
678204754
Stop Event
node limit
Counts
110 → 81
Calls
Call 1
Inputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 2)) (sqrt.f64 2))) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 4)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 2)) (+.f64 (*.f64 (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 6)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 4)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 0)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 1)
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1))
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
Outputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 2)) (sqrt.f64 2))) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 6)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 6)) (sqrt.f64 2)))) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a1 th) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a1 2) (pow.f64 th 4)) (sqrt.f64 2))))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2)))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (pow.f64 th 2) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) -1/2))))
(+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (pow.f64 th 2) (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (*.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (pow.f64 th 2)))))
(+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/2 (*.f64 (pow.f64 th 2) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (*.f64 (pow.f64 th 2) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 4)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))))
(+.f64 (*.f64 (pow.f64 th 2) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) -1/2))) (+.f64 (*.f64 (pow.f64 th 4) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) 1/24))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))))
(+.f64 (*.f64 (pow.f64 th 2) (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 (pow.f64 th 4) (*.f64 1/24 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (pow.f64 th 4) (*.f64 1/24 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))))) (*.f64 -1/2 (*.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (pow.f64 th 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 th 2) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (pow.f64 th 4) (*.f64 1/24 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 (pow.f64 th 4) (*.f64 1/24 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (*.f64 (pow.f64 th 2) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 2)) (+.f64 (*.f64 (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 6)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) (pow.f64 th 4)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))))
(+.f64 (*.f64 (pow.f64 th 2) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) -1/2))) (+.f64 (+.f64 (*.f64 (pow.f64 th 4) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) 1/24))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))) (*.f64 (pow.f64 th 6) (+.f64 (*.f64 -1/720 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) -1/720)))))
(+.f64 (*.f64 (pow.f64 th 2) (*.f64 -1/2 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (*.f64 (pow.f64 th 4) (*.f64 1/24 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (pow.f64 th 6) (*.f64 -1/720 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))))))
(+.f64 (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (*.f64 (pow.f64 th 4) (*.f64 1/24 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (pow.f64 th 2))) (*.f64 -1/720 (*.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) (pow.f64 th 6)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 th 2) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (*.f64 (pow.f64 th 4) (*.f64 1/24 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/720 (*.f64 (pow.f64 th 6) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 th 6) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (*.f64 (pow.f64 th 4) (*.f64 1/24 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (*.f64 (pow.f64 th 2) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))))))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))

eval232.0ms (1%)

Compiler

Compiled 6490 to 4225 computations (34.9% saved)

prune86.0ms (0.4%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New19110201
Fresh000
Picked011
Done011
Total19112203
Error
0.2b
Counts
203 → 12
Alt Table
Click to see full alt table
StatusErrorProgram
28.5b
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
26.6b
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
0.5b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
32.1b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
46.9b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
24.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
1.1b
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
46.9b
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))
0.9b
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Compiler

Compiled 824 to 428 computations (48.1% saved)

localize43.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
0.3b
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
Compiler

Compiled 63 to 34 computations (46% saved)

series9.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
3.0ms
th
@inf
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
1.0ms
a2
@0
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
1.0ms
th
@-inf
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
1.0ms
a2
@inf
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
1.0ms
th
@0
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))

rewrite163.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01148
19848
234148
3140748
4642448
Stop Event
node limit
Counts
2 → 16
Calls
Call 1
Inputs
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))))))

simplify166.0ms (0.7%)

Algorithm
egg-herbie
Rules
1800×rational.json-simplify-47
1126×rational.json-simplify-43
892×rational.json-simplify-111
884×rational.json-simplify-76
826×rational.json-simplify-55
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811882
11541882
23001882
37251882
431681882
562181882
Stop Event
node limit
Counts
64 → 49
Calls
Call 1
Inputs
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 a2 (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(+.f64 0 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(-.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(-.f64 0 (neg.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(/.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(/.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(pow.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(neg.f64 (neg.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)
(-.f64 0 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))
Outputs
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 a2 (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2)))) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2)))) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))))))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))))))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(+.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(+.f64 0 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(-.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(-.f64 0 (neg.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(pow.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(neg.f64 (neg.f64 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 0)
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(-.f64 0 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)) 1)
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(neg.f64 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2))))
(*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2))))

localize19.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
0.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
1.0b
(/.f64 1 (sqrt.f64 2))
Compiler

Compiled 38 to 19 computations (50% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
a2
@0
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
0.0ms
a2
@inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
0.0ms
a1
@inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
0.0ms
a1
@0
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
0.0ms
a2
@-inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))

rewrite117.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
770×rational.json-simplify-49
728×rational.json-simplify-47
664×rational.json-simplify-50
656×rational.json-simplify-55
624×rational.json-simplify-58
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01346
110846
231946
3117946
4485946
Stop Event
node limit
Counts
2 → 24
Calls
Call 1
Inputs
(/.f64 1 (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 1 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (sqrt.f64 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (/.f64 1 (/.f64 1 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) 1) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 1 (sqrt.f64 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))))

simplify171.0ms (0.7%)

Algorithm
egg-herbie
Rules
1438×rational.json-simplify-111
1198×rational.json-simplify-2
1036×rational.json-simplify-54
840×rational.json-simplify-1
614×rational.json-simplify-42
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0611352
11201352
22441352
37601352
424331344
554201332
Stop Event
node limit
Counts
48 → 32
Calls
Call 1
Inputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 1 (sqrt.f64 2)) 0)
(+.f64 0 (/.f64 1 (sqrt.f64 2)))
(-.f64 (/.f64 1 (sqrt.f64 2)) 0)
(-.f64 0 (neg.f64 (/.f64 1 (sqrt.f64 2))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (sqrt.f64 2)))) 1)
(*.f64 1 (/.f64 1 (sqrt.f64 2)))
(*.f64 (/.f64 1 (sqrt.f64 2)) 1)
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (/.f64 1 (/.f64 1 (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) 1))
(*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) 1) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))
(*.f64 (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))))
(pow.f64 (/.f64 1 (sqrt.f64 2)) 1)
(neg.f64 (neg.f64 (/.f64 1 (sqrt.f64 2))))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
Outputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 1 (sqrt.f64 2)) 0)
(/.f64 1 (sqrt.f64 2))
(+.f64 0 (/.f64 1 (sqrt.f64 2)))
(/.f64 1 (sqrt.f64 2))
(-.f64 (/.f64 1 (sqrt.f64 2)) 0)
(/.f64 1 (sqrt.f64 2))
(-.f64 0 (neg.f64 (/.f64 1 (sqrt.f64 2))))
(/.f64 1 (sqrt.f64 2))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (sqrt.f64 2)))) 1)
(/.f64 1 (sqrt.f64 2))
(*.f64 1 (/.f64 1 (sqrt.f64 2)))
(/.f64 1 (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) 1)
(/.f64 1 (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (/.f64 1 (/.f64 1 (sqrt.f64 2))))
(/.f64 1 (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) 1))
(/.f64 1 (sqrt.f64 2))
(*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))
(/.f64 1 (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))
(/.f64 1 (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) 1) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))
(/.f64 1 (sqrt.f64 2))
(*.f64 (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))))
(/.f64 1 (sqrt.f64 2))
(pow.f64 (/.f64 1 (sqrt.f64 2)) 1)
(/.f64 1 (sqrt.f64 2))
(neg.f64 (neg.f64 (/.f64 1 (sqrt.f64 2))))
(/.f64 1 (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 2 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 2 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))

localize43.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
44.8b
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
Compiler

Compiled 253 to 34 computations (86.6% saved)

series17.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
10.0ms
a2
@inf
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
3.0ms
a1
@-inf
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
0.0ms
a2
@0
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
0.0ms
a1
@inf
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
0.0ms
a1
@0
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))

rewrite81.0ms (0.3%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
021401
1185401
2603101
32453101
Stop Event
node limit
Counts
3 → 33
Calls
Call 1
Inputs
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 (neg.f64 (*.f64 a1 a1)) (*.f64 a2 a2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 (*.f64 a1 a1) (neg.f64 (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 (*.f64 a2 a2) (neg.f64 (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (-.f64 (neg.f64 (*.f64 a1 a1)) (*.f64 a2 a2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (neg.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))))))

simplify134.0ms (0.6%)

Algorithm
egg-herbie
Rules
1390×rational.json-simplify-2
1286×rational.json-simplify-47
1162×rational.json-simplify-49
1126×rational.json-simplify-111
814×rational.json-simplify-43
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01134157
12254157
24104157
39564157
428034157
Stop Event
node limit
Counts
117 → 71
Calls
Call 1
Inputs
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(pow.f64 a1 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a1 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(pow.f64 a2 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a2 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(pow.f64 a2 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a2 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(pow.f64 a2 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a2 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(pow.f64 a1 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a1 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(pow.f64 a1 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a1 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))
(+.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)
(+.f64 0 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)
(/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(pow.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(fabs.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(fabs.f64 (-.f64 (neg.f64 (*.f64 a1 a1)) (*.f64 a2 a2)))
(fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(fabs.f64 (-.f64 (*.f64 a1 a1) (neg.f64 (*.f64 a2 a2))))
(fabs.f64 (-.f64 (*.f64 a2 a2) (neg.f64 (*.f64 a1 a1))))
(fabs.f64 (-.f64 0 (-.f64 (neg.f64 (*.f64 a1 a1)) (*.f64 a2 a2))))
(+.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(+.f64 0 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(-.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(pow.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(+.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(+.f64 0 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(-.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(pow.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(fabs.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(fabs.f64 (neg.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(fabs.f64 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(fabs.f64 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(fabs.f64 (-.f64 0 (neg.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(fabs.f64 (-.f64 0 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))
Outputs
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(+.f64 (pow.f64 a2 2) (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) (pow.f64 a2 2))
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(/.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2)))))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 6)) (sqrt.f64 2))))
(+.f64 (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 6)) (sqrt.f64 2))) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (pow.f64 th 6)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(pow.f64 a1 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a1 4))
(+.f64 (pow.f64 a1 4) (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(pow.f64 a2 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a2 4))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(pow.f64 a2 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a2 4))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(pow.f64 a2 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a2 4))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(pow.f64 a1 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a1 4))
(+.f64 (pow.f64 a1 4) (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(pow.f64 a1 4)
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (pow.f64 a1 4))
(+.f64 (pow.f64 a1 4) (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (*.f64 (pow.f64 a1 2) (pow.f64 a2 2))) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (+.f64 (pow.f64 a1 4) (pow.f64 a2 4)))
(+.f64 (pow.f64 a1 4) (+.f64 (*.f64 2 (pow.f64 (*.f64 a1 a2) 2)) (pow.f64 a2 4)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(+.f64 (*.f64 a1 a1) (*.f64 a2 a2))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(+.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(+.f64 0 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(-.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 0)
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(pow.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) 1)
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (-.f64 (neg.f64 (*.f64 a1 a1)) (*.f64 a2 a2)))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (-.f64 (*.f64 a1 a1) (neg.f64 (*.f64 a2 a2))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (-.f64 (*.f64 a2 a2) (neg.f64 (*.f64 a1 a1))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(fabs.f64 (-.f64 0 (-.f64 (neg.f64 (*.f64 a1 a1)) (*.f64 a2 a2))))
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
(+.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(+.f64 0 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(-.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(pow.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(+.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 0 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(pow.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(fabs.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(fabs.f64 (neg.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(fabs.f64 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(fabs.f64 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (neg.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(fabs.f64 (-.f64 0 (neg.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(fabs.f64 (-.f64 0 (/.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (fabs.f64 (/.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))

localize15.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (pow.f64 a2 2) (cos.f64 th))
0.3b
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
Compiler

Compiled 28 to 18 computations (35.7% saved)

series2.0ms (0%)

Counts
2 → 20
Calls

12 calls:

TimeVariablePointExpression
0.0ms
a2
@inf
(*.f64 (pow.f64 a2 2) (cos.f64 th))
0.0ms
th
@0
(*.f64 (pow.f64 a2 2) (cos.f64 th))
0.0ms
th
@0
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
0.0ms
a2
@inf
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
0.0ms
a2
@0
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))

rewrite121.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01144
19744
234144
3139444
4626144
Stop Event
node limit
Counts
2 → 21
Calls
Call 1
Inputs
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 a2 2) (cos.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (*.f64 (pow.f64 a2 2) (cos.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th))))))))

simplify173.0ms (0.7%)

Algorithm
egg-herbie
Rules
972×rational.json-simplify-54
846×rational.json-simplify-111
772×rational.json-simplify-1
698×rational.json-simplify-50
678×rational.json-simplify-55
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0801171
11661171
23191171
37861153
429971153
571811153
Stop Event
node limit
Counts
41 → 54
Calls
Call 1
Inputs
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (*.f64 -1/2 (*.f64 (pow.f64 th 2) (pow.f64 a2 2))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 th 2) (pow.f64 a2 2))) (*.f64 1/24 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 th 2) (pow.f64 a2 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 th 4) (pow.f64 a2 2))) (*.f64 -1/720 (*.f64 (pow.f64 th 6) (pow.f64 a2 2))))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 0)
(+.f64 0 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(-.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 0)
(-.f64 0 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 1)
(*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(*.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) 1))
(*.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))
(pow.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 1)
(neg.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 0)
(+.f64 0 (*.f64 (pow.f64 a2 2) (cos.f64 th)))
(-.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 0)
(-.f64 0 (neg.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 1)
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (*.f64 (pow.f64 a2 2) (cos.f64 th))))
(pow.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 1)
(neg.f64 (neg.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th))))
Outputs
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th a2) 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(*.f64 (cos.f64 th) (pow.f64 a2 2))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(pow.f64 a2 2)
(+.f64 (pow.f64 a2 2) (*.f64 -1/2 (*.f64 (pow.f64 th 2) (pow.f64 a2 2))))
(+.f64 (pow.f64 a2 2) (*.f64 -1/2 (pow.f64 (*.f64 th a2) 2)))
(+.f64 (pow.f64 a2 2) (*.f64 -1/2 (pow.f64 (*.f64 a2 th) 2)))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 th 2) (pow.f64 a2 2))) (*.f64 1/24 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 th a2) 2)) (*.f64 1/24 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 a2 th) 2)) (*.f64 (pow.f64 a2 2) (*.f64 (pow.f64 th 4) 1/24))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 a2 th) 2)) (*.f64 1/24 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)))))
(+.f64 (pow.f64 a2 2) (*.f64 (pow.f64 a2 2) (+.f64 (*.f64 1/24 (pow.f64 th 4)) (*.f64 -1/2 (pow.f64 th 2)))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 th 2) (pow.f64 a2 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 th 4) (pow.f64 a2 2))) (*.f64 -1/720 (*.f64 (pow.f64 th 6) (pow.f64 a2 2))))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 th a2) 2)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a2 2) (pow.f64 th 4))) (*.f64 -1/720 (*.f64 (pow.f64 a2 2) (pow.f64 th 6))))))
(+.f64 (+.f64 (*.f64 (pow.f64 a2 2) (*.f64 (pow.f64 th 4) 1/24)) (*.f64 (pow.f64 a2 2) (*.f64 (pow.f64 th 6) -1/720))) (+.f64 (pow.f64 a2 2) (*.f64 -1/2 (pow.f64 (*.f64 a2 th) 2))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 a2 th) 2)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 a2 2) (pow.f64 th 4))) (*.f64 (pow.f64 a2 2) (*.f64 -1/720 (pow.f64 th 6))))))
(+.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/2 (pow.f64 (*.f64 a2 th) 2)) (*.f64 (pow.f64 a2 2) (+.f64 (*.f64 -1/720 (pow.f64 th 6)) (*.f64 1/24 (pow.f64 th 4))))))
(+.f64 (+.f64 (pow.f64 a2 2) (*.f64 -1/2 (pow.f64 (*.f64 a2 th) 2))) (*.f64 (pow.f64 a2 2) (+.f64 (*.f64 1/24 (pow.f64 th 4)) (*.f64 -1/720 (pow.f64 th 6)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 0)
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 0 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(-.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 0)
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(-.f64 0 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 1)
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) 1))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(pow.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) 1)
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(neg.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 0)
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(+.f64 0 (*.f64 (pow.f64 a2 2) (cos.f64 th)))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(-.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 0)
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(-.f64 0 (neg.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th))))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 1)
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (*.f64 (pow.f64 a2 2) (cos.f64 th))))
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(pow.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) 1)
(*.f64 (pow.f64 a2 2) (cos.f64 th))
(neg.f64 (neg.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th))))
(*.f64 (pow.f64 a2 2) (cos.f64 th))

localize123.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
30.6b
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
Compiler

Compiled 164 to 52 computations (68.3% saved)

series9.0ms (0%)

Counts
3 → 108
Calls

27 calls:

TimeVariablePointExpression
1.0ms
th
@0
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
1.0ms
a1
@0
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
1.0ms
a1
@inf
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
1.0ms
a2
@inf
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
1.0ms
th
@inf
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))

rewrite80.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
1286×rational.json-simplify-55
1200×exponential.json-3
1200×rational.json-1
1200×rational.json-2
1200×rational.json-4
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
020311
1178311
2578123
32358123
Stop Event
node limit
Counts
3 → 22
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))) (/.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)))))

simplify323.0ms (1.4%)

Algorithm
egg-herbie
Rules
1360×rational.json-simplify-2
1208×rational.json-simplify-54
940×rational.json-simplify-1
618×rational.json-simplify-47
582×rational.json-simplify-58
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01618246
13108032
25218012
311367966
430427960
559667954
Stop Event
node limit
Counts
130 → 80
Calls
Call 1
Inputs
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))) (pow.f64 th 4))) (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))))) (+.f64 (*.f64 -1/720 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 1/48 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))))) (pow.f64 th 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))) (pow.f64 th 4))) (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (pow.f64 a2 4) (cos.f64 th)))) (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (pow.f64 a2 4) (cos.f64 th)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (pow.f64 a2 4) (cos.f64 th)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (pow.f64 a2 8) (cos.f64 th)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (pow.f64 a2 6) (cos.f64 th))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (pow.f64 a1 8) (cos.f64 th)))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (pow.f64 a1 8) (cos.f64 th)))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (pow.f64 a1 8) (cos.f64 th)))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th)))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (pow.f64 a2 6) (cos.f64 th)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th)))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (pow.f64 a2 6) (cos.f64 th)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(+.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)
(+.f64 0 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(-.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)
(*.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (*.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))) (/.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))
(pow.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)
Outputs
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))) (+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))) (+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))
(+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))) (pow.f64 th 4))) (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -1/4)) (*.f64 (pow.f64 th 4) -1)) (+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))))
(+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -5/24) (neg.f64 (pow.f64 th 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) 5/24))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))))) (+.f64 (*.f64 -1/720 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 1/48 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))))) (pow.f64 th 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))) (pow.f64 th 4))) (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))))))
(+.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -1/4)) (*.f64 (pow.f64 th 4) -1)) (+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))))) (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -1/4))) (+.f64 (*.f64 -1/720 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) 1/48))) (*.f64 (pow.f64 th 6) -1)))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -5/24) (neg.f64 (pow.f64 th 4))))) (*.f64 (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -5/24)) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) 7/360)) (neg.f64 (pow.f64 th 6))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) 5/24)))) (*.f64 (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -5/48) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) 7/360)) (neg.f64 (pow.f64 th 6))))
(+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (+.f64 (*.f64 (pow.f64 th 6) (neg.f64 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -61/720))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) 5/24)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (+.f64 (+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) 5/24))) (*.f64 (pow.f64 th 6) (neg.f64 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -61/720)))))
(+.f64 (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) 5/24)) (+.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)))) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (+.f64 (pow.f64 a2 2) (pow.f64 a1 2))) -61/720) (neg.f64 (pow.f64 th 6))))))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (pow.f64 a2 4) (cos.f64 th)))) (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (pow.f64 a2 4) (cos.f64 th)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (pow.f64 a2 4) (cos.f64 th)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (pow.f64 a2 8) (cos.f64 th)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (pow.f64 a2 6) (cos.f64 th))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))))
(+.f64 (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (+.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (neg.f64 (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))) (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (pow.f64 a1 8) (cos.f64 th)))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8)))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))) (neg.f64 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))) (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (pow.f64 a1 8) (cos.f64 th)))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8)))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))) (neg.f64 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))) (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (pow.f64 a1 4) (cos.f64 th)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (pow.f64 a1 6) (cos.f64 th))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (pow.f64 a1 8) (cos.f64 th)))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))))))
(+.f64 (neg.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4)))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8)))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (+.f64 (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 4)) (*.f64 (cos.f64 th) (pow.f64 a1 6)))) (neg.f64 (+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a1 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 6)) (*.f64 (cos.f64 th) (pow.f64 a1 8))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th)))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (pow.f64 a2 6) (cos.f64 th)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))))
(+.f64 (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (+.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (neg.f64 (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th)))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (pow.f64 a2 6) (cos.f64 th)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))))
(+.f64 (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (+.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))))) (neg.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4)))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (*.f64 -1 (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (+.f64 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 4)) (*.f64 (cos.f64 th) (pow.f64 a2 6))) (neg.f64 (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (cos.f64 th) (pow.f64 a2 4))) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 6)) (*.f64 (cos.f64 th) (pow.f64 a2 8)))))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(+.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(+.f64 0 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(-.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (*.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))) (/.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(pow.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)
(/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))

eval840.0ms (3.5%)

Compiler

Compiled 20695 to 10643 computations (48.6% saved)

prune453.0ms (1.9%)

Pruning

28 alts after pruning (22 fresh and 6 done)

PrunedKeptTotal
New47417491
Fresh055
Picked011
Done156
Total47528503
Error
0.1b
Counts
503 → 28
Alt Table
Click to see full alt table
StatusErrorProgram
40.7b
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
38.2b
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
28.5b
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
26.6b
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
34.9b
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
12.6b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
12.2b
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
47.8b
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
0.5b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
32.1b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
54.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (pow.f64 a1 4))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
46.9b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
46.0b
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
40.7b
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
38.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
24.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
46.0b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
54.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
1.1b
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
46.9b
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))
32.6b
(*.f64 (*.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
0.9b
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
46.9b
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
Compiler

Compiled 2017 to 1062 computations (47.3% saved)

localize131.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
0.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1))
0.5b
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
Compiler

Compiled 67 to 32 computations (52.2% saved)

series2.0ms (0%)

Counts
2 → 44
Calls

12 calls:

TimeVariablePointExpression
0.0ms
th
@0
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
0.0ms
th
@0
(*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
0.0ms
th
@inf
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
0.0ms
a2
@inf
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
0.0ms
a2
@-inf
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))

rewrite190.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01148
19848
234048
3140048
4638848
Stop Event
node limit
Counts
2 → 21
Calls
Call 1
Inputs
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))

simplify426.0ms (1.8%)

Algorithm
egg-herbie
Rules
778×rational.json-simplify-58
740×rational.json-simplify-1
694×rational.json-simplify-47
636×exponential.json-simplify-26
632×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0881903
11711903
23211903
39671903
433251903
554951903
676781903
Stop Event
node limit
Counts
65 → 49
Calls
Call 1
Inputs
(/.f64 a2 (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)
(+.f64 0 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
(-.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)
(-.f64 0 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1))
(*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(pow.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)
(neg.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(+.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)
(+.f64 0 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(-.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)
(-.f64 0 (neg.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(/.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)
(/.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(pow.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)
(neg.f64 (neg.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
Outputs
(/.f64 a2 (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2)))) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 a2 th) 2) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) (sqrt.f64 2))))))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(+.f64 0 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(-.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(-.f64 0 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(*.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(*.f64 (*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(pow.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(neg.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)
(*.f64 a2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(+.f64 0 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 a2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(-.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)
(*.f64 a2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(-.f64 0 (neg.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 a2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)
(*.f64 a2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 a2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(pow.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)
(*.f64 a2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(neg.f64 (neg.f64 (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 a2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))

localize55.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
0.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
1.0b
(/.f64 1 (sqrt.f64 2))
2.4b
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
Compiler

Compiled 88 to 48 computations (45.5% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
a2
@0
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
1.0ms
a1
@0
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
1.0ms
a2
@inf
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
0.0ms
a1
@inf
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
0.0ms
a2
@-inf
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)

rewrite172.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
920×rational.json-simplify-47
890×rational.json-simplify-49
700×rational.json-simplify-55
686×exponential.json-3
686×rational.json-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01847
116335
246635
3153535
4616735
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))))

simplify279.0ms (1.2%)

Algorithm
egg-herbie
Rules
784×rational.json-simplify-111
688×rational.json-simplify-1
678×rational.json-simplify-104
652×rational.json-simplify-2
616×rational.json-simplify-50
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0631679
11151679
22561679
36571679
413061679
530381679
648471679
775671679
Stop Event
node limit
Counts
49 → 29
Calls
Call 1
Inputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(+.f64 -1 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(+.f64 1 (+.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(+.f64 (+.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1)
(*.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(/.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
Outputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 -1 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 1 (+.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (+.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (sqrt.f64 2)))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 2))) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))) (/.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2)))))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))

localize22.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 a1 2)
0.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
1.0b
(/.f64 1 (sqrt.f64 2))
Compiler

Compiled 23 to 20 computations (13% saved)

series2.0ms (0%)

Counts
2 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
a1
@-inf
(pow.f64 a1 2)
1.0ms
a1
@inf
(pow.f64 a1 2)
0.0ms
a1
@0
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
0.0ms
a1
@inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
0.0ms
a1
@-inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))

rewrite116.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01030
18130
223630
385830
4320630
Stop Event
node limit
Counts
2 → 27
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
(pow.f64 a1 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 a1 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 a1 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 a1 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 a1 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (pow.f64 a1 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 a1 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a1 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)) (pow.f64 a1 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a1 a1) 2) (/.f64 1 (pow.f64 a1 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a1 a1) 2) (pow.f64 (/.f64 1 a1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (*.f64 a1 a1)) 2) (/.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2)) (pow.f64 (*.f64 (*.f64 a1 a1) (*.f64 a1 a1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 a1 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 a1 2)))))))

simplify223.0ms (0.9%)

Algorithm
egg-herbie
Rules
1316×rational.json-simplify-111
1058×rational.json-simplify-54
886×rational.json-simplify-1
846×rational.json-simplify-50
620×rational.json-simplify-55
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057537
1108537
2237537
3778537
42894537
57544537
Stop Event
node limit
Counts
39 → 30
Calls
Call 1
Inputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))
(+.f64 (pow.f64 a1 2) 0)
(+.f64 0 (pow.f64 a1 2))
(-.f64 (pow.f64 a1 2) 0)
(-.f64 0 (neg.f64 (pow.f64 a1 2)))
(-.f64 (-.f64 0 (-.f64 -1 (pow.f64 a1 2))) 1)
(*.f64 1 (pow.f64 a1 2))
(*.f64 (pow.f64 a1 2) 1)
(*.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))
(*.f64 (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)) (pow.f64 a1 2))
(*.f64 (pow.f64 (*.f64 a1 a1) 2) (/.f64 1 (pow.f64 a1 2)))
(*.f64 (pow.f64 (*.f64 a1 a1) 2) (pow.f64 (/.f64 1 a1) 2))
(*.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2))
(*.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (*.f64 a1 a1)) 2) (/.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2)))
(*.f64 (/.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2)) (pow.f64 (*.f64 (*.f64 a1 a1) (*.f64 a1 a1)) 2))
(*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2))
(/.f64 (pow.f64 a1 2) 1)
(/.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))
(neg.f64 (neg.f64 (pow.f64 a1 2)))
Outputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))) 1)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(+.f64 (pow.f64 a1 2) 0)
(pow.f64 a1 2)
(+.f64 0 (pow.f64 a1 2))
(pow.f64 a1 2)
(-.f64 (pow.f64 a1 2) 0)
(pow.f64 a1 2)
(-.f64 0 (neg.f64 (pow.f64 a1 2)))
(pow.f64 a1 2)
(-.f64 (-.f64 0 (-.f64 -1 (pow.f64 a1 2))) 1)
(pow.f64 a1 2)
(*.f64 1 (pow.f64 a1 2))
(pow.f64 a1 2)
(*.f64 (pow.f64 a1 2) 1)
(pow.f64 a1 2)
(*.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))
(pow.f64 a1 2)
(*.f64 (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)) (pow.f64 a1 2))
(pow.f64 a1 2)
(*.f64 (pow.f64 (*.f64 a1 a1) 2) (/.f64 1 (pow.f64 a1 2)))
(pow.f64 a1 2)
(*.f64 (pow.f64 (*.f64 a1 a1) 2) (pow.f64 (/.f64 1 a1) 2))
(pow.f64 a1 2)
(*.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2))
(pow.f64 a1 2)
(*.f64 (pow.f64 (*.f64 (*.f64 a1 a1) (*.f64 a1 a1)) 2) (/.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2)))
(pow.f64 a1 2)
(*.f64 (/.f64 (/.f64 1 (pow.f64 a1 2)) (pow.f64 (*.f64 a1 a1) 2)) (pow.f64 (*.f64 (*.f64 a1 a1) (*.f64 a1 a1)) 2))
(pow.f64 a1 2)
(*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2))
(pow.f64 a1 2)
(/.f64 (pow.f64 a1 2) 1)
(pow.f64 a1 2)
(/.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))
(pow.f64 a1 2)
(neg.f64 (neg.f64 (pow.f64 a1 2)))
(pow.f64 a1 2)

localize50.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
0.3b
(*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
1.0b
(/.f64 1 (sqrt.f64 2))
Compiler

Compiled 66 to 41 computations (37.9% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
a1
@0
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
0.0ms
a1
@inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
0.0ms
a1
@-inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))

rewrite112.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
18423
225223
392323
4370023
Stop Event
node limit
Counts
1 → 6
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 a1 a1)) (*.f64 (sqrt.f64 2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 1)))))

simplify254.0ms (1.1%)

Algorithm
egg-herbie
Rules
1894×rational.json-simplify-79
1470×rational.json-simplify-47
1402×rational.json-simplify-104
844×rational.json-simplify-73
808×rational.json-simplify-41
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021386
137386
281386
3226386
4852386
52511386
64147386
75730386
87175386
Stop Event
node limit
Counts
18 → 11
Calls
Call 1
Inputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 0)
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 0)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 a1 a1)) (*.f64 (sqrt.f64 2) (*.f64 a1 a1))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 1)
Outputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 0)
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
(*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2))))
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
(*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2))))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 0)
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
(*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2))))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
(*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2))))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 a1 a1)) (*.f64 (sqrt.f64 2) (*.f64 a1 a1))))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (/.f64 (*.f64 a1 (*.f64 a1 (sqrt.f64 2))) (*.f64 a1 (*.f64 a1 (sqrt.f64 2)))))
(/.f64 (*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2)))) (/.f64 (*.f64 a1 (*.f64 a1 (sqrt.f64 2))) (*.f64 a1 (*.f64 a1 (sqrt.f64 2)))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1))
(*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2))))

localize260.0ms (1.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
0.8b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
30.6b
(*.f64 (/.f64 1 (*.f64 (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
Compiler

Compiled 243 to 107 computations (56% saved)

series12.0ms (0.1%)

Counts
3 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
th
@inf
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
1.0ms
th
@-inf
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
1.0ms
th
@0
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
1.0ms
th
@0
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
1.0ms
th
@inf
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))

rewrite106.0ms (0.4%)

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

Useful iterations: 2 (0.0ms)

IterNodesCost
023235
1207189
269095
3282195
Stop Event
node limit
Counts
3 → 27
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (*.f64 (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (neg.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)))))

simplify288.0ms (1.2%)

Algorithm
egg-herbie
Rules
1318×rational.json-simplify-49
1276×rational.json-simplify-111
1014×rational.json-simplify-2
682×rational.json-simplify-54
590×rational.json-simplify-104
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01363533
12793455
25173443
312293415
429323415
576273415
Stop Event
node limit
Counts
87 → 81
Calls
Call 1
Inputs
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 1 (pow.f64 (sqrt.f64 2) 2))
(+.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) (*.f64 -1 (/.f64 (pow.f64 th 2) (pow.f64 (sqrt.f64 2) 2))))
(+.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 th 2) (pow.f64 (sqrt.f64 2) 2))) (*.f64 1/3 (/.f64 (pow.f64 th 4) (pow.f64 (sqrt.f64 2) 2)))))
(+.f64 (*.f64 -2/45 (/.f64 (pow.f64 th 6) (pow.f64 (sqrt.f64 2) 2))) (+.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 th 2) (pow.f64 (sqrt.f64 2) 2))) (*.f64 1/3 (/.f64 (pow.f64 th 4) (pow.f64 (sqrt.f64 2) 2))))))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(sqrt.f64 2)
(+.f64 (sqrt.f64 2) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 th 2))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 th 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (sqrt.f64 2)) (*.f64 -1/4 (sqrt.f64 2))) (pow.f64 th 4)))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/720 (sqrt.f64 2)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (sqrt.f64 2)) (*.f64 -1/4 (sqrt.f64 2)))) (*.f64 1/48 (sqrt.f64 2)))) (pow.f64 th 6))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 th 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (sqrt.f64 2)) (*.f64 -1/4 (sqrt.f64 2))) (pow.f64 th 4))))))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(fabs.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(fabs.f64 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (neg.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(fabs.f64 (-.f64 0 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(fabs.f64 (-.f64 0 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))
(+.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(+.f64 0 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(-.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(*.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(pow.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
Outputs
(/.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (pow.f64 th 6)) (sqrt.f64 2)))))))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(/.f64 1 (pow.f64 (sqrt.f64 2) 2))
1/2
(+.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) (*.f64 -1 (/.f64 (pow.f64 th 2) (pow.f64 (sqrt.f64 2) 2))))
(+.f64 1/2 (*.f64 -1 (/.f64 (pow.f64 th 2) 2)))
(+.f64 1/2 (neg.f64 (/.f64 (pow.f64 th 2) 2)))
(+.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 th 2) (pow.f64 (sqrt.f64 2) 2))) (*.f64 1/3 (/.f64 (pow.f64 th 4) (pow.f64 (sqrt.f64 2) 2)))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 th 2) 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 th 4) 2)) 1/2))
(+.f64 (neg.f64 (/.f64 (pow.f64 th 2) 2)) (+.f64 1/2 (*.f64 1/3 (/.f64 (pow.f64 th 4) 2))))
(+.f64 1/2 (+.f64 (neg.f64 (/.f64 (pow.f64 th 2) 2)) (*.f64 1/3 (/.f64 (pow.f64 th 4) 2))))
(+.f64 (*.f64 -2/45 (/.f64 (pow.f64 th 6) (pow.f64 (sqrt.f64 2) 2))) (+.f64 (/.f64 1 (pow.f64 (sqrt.f64 2) 2)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 th 2) (pow.f64 (sqrt.f64 2) 2))) (*.f64 1/3 (/.f64 (pow.f64 th 4) (pow.f64 (sqrt.f64 2) 2))))))
(+.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 th 2) 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 th 4) 2)) 1/2)) (*.f64 -2/45 (/.f64 (pow.f64 th 6) 2)))
(+.f64 (neg.f64 (/.f64 (pow.f64 th 2) 2)) (+.f64 (+.f64 1/2 (*.f64 1/3 (/.f64 (pow.f64 th 4) 2))) (*.f64 -2/45 (/.f64 (pow.f64 th 6) 2))))
(+.f64 (neg.f64 (/.f64 (pow.f64 th 2) 2)) (+.f64 (*.f64 -2/45 (/.f64 (pow.f64 th 6) 2)) (+.f64 1/2 (*.f64 1/3 (/.f64 (pow.f64 th 4) 2)))))
(+.f64 (neg.f64 (/.f64 (pow.f64 th 2) 2)) (+.f64 (*.f64 1/3 (/.f64 (pow.f64 th 4) 2)) (+.f64 1/2 (*.f64 -2/45 (/.f64 (pow.f64 th 6) 2)))))
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) 2)
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) 2)
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) 2)
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) 2)
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) 2)
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) 2)
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) 2)
(/.f64 (pow.f64 (cos.f64 th) 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (cos.f64 th) 2) 2)
(sqrt.f64 2)
(+.f64 (sqrt.f64 2) (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 th 2))))
(+.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 th 2) 1/2)))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 th 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (sqrt.f64 2)) (*.f64 -1/4 (sqrt.f64 2))) (pow.f64 th 4)))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 th 2) 1/2)) (*.f64 (+.f64 (*.f64 (sqrt.f64 2) 1/24) (*.f64 (sqrt.f64 2) -1/4)) (*.f64 (pow.f64 th 4) -1))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 th 2) 1/2)) (*.f64 (*.f64 (sqrt.f64 2) -5/24) (neg.f64 (pow.f64 th 4)))))
(+.f64 (+.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 th 2) 1/2))) (*.f64 (pow.f64 th 4) (*.f64 (sqrt.f64 2) 5/24)))
(+.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 th 2) 1/2) (*.f64 (neg.f64 (pow.f64 th 4)) -5/24))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/720 (sqrt.f64 2)) (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (sqrt.f64 2)) (*.f64 -1/4 (sqrt.f64 2)))) (*.f64 1/48 (sqrt.f64 2)))) (pow.f64 th 6))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) (pow.f64 th 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (sqrt.f64 2)) (*.f64 -1/4 (sqrt.f64 2))) (pow.f64 th 4))))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 th 2) 1/2)) (+.f64 (*.f64 (+.f64 (*.f64 (sqrt.f64 2) 1/24) (*.f64 (sqrt.f64 2) -1/4)) (*.f64 (pow.f64 th 4) -1)) (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 2) 1/24) (*.f64 (sqrt.f64 2) -1/4))) (+.f64 (*.f64 (sqrt.f64 2) 1/48) (*.f64 (sqrt.f64 2) -1/720))) (*.f64 (pow.f64 th 6) -1)))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 th 2) 1/2)) (*.f64 -1 (+.f64 (*.f64 (pow.f64 th 6) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 2) -5/24)) (*.f64 (sqrt.f64 2) 7/360))) (*.f64 (pow.f64 th 4) (*.f64 (sqrt.f64 2) -5/24))))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (*.f64 (pow.f64 th 2) 1/2)) (+.f64 (*.f64 (pow.f64 th 4) (*.f64 (sqrt.f64 2) 5/24)) (*.f64 (+.f64 (*.f64 (sqrt.f64 2) -5/48) (*.f64 (sqrt.f64 2) 7/360)) (neg.f64 (pow.f64 th 6))))))
(+.f64 (sqrt.f64 2) (+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 th 2) 1/2) (*.f64 (neg.f64 (pow.f64 th 4)) -5/24))) (*.f64 (pow.f64 th 6) (neg.f64 (*.f64 (sqrt.f64 2) -61/720)))))
(+.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 (pow.f64 th 2) 1/2) (*.f64 (neg.f64 (pow.f64 th 4)) -5/24))) (+.f64 (sqrt.f64 2) (*.f64 (pow.f64 th 6) (neg.f64 (*.f64 (sqrt.f64 2) -61/720)))))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(/.f64 (sqrt.f64 2) (cos.f64 th))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(fabs.f64 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (neg.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(fabs.f64 (-.f64 0 (neg.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(fabs.f64 (-.f64 0 (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(+.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(+.f64 0 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(-.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 0)
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))))
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(*.f64 (/.f64 1 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))
(pow.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) 1)
(/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2)))

eval844.0ms (3.5%)

Compiler

Compiled 20639 to 12234 computations (40.7% saved)

prune441.0ms (1.8%)

Pruning

33 alts after pruning (26 fresh and 7 done)

PrunedKeptTotal
New48312495
Fresh31417
Picked101
Done3710
Total49033523
Error
0.1b
Counts
523 → 33
Alt Table
Click to see full alt table
StatusErrorProgram
40.7b
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
38.2b
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
28.5b
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
26.6b
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
46.3b
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))) 1)
43.3b
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) 1)
34.9b
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
39.6b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
12.2b
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
24.2b
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
12.2b
(+.f64 (*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2)))) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
47.8b
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
0.5b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
32.1b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
54.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (pow.f64 a1 4))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
46.9b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
46.1b
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
40.7b
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
38.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
24.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
54.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2)))
46.0b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
54.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
1.1b
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
46.9b
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))
32.6b
(*.f64 (*.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
46.0b
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))
0.9b
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Compiler

Compiled 2170 to 1210 computations (44.2% saved)

localize230.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
0.5b
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
20.5b
(*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
Compiler

Compiled 153 to 78 computations (49% saved)

series13.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
5.0ms
a2
@inf
(*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
2.0ms
a2
@0
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
1.0ms
a2
@inf
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
1.0ms
th
@inf
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
1.0ms
th
@-inf
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))

rewrite215.0ms (0.9%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
014126
112468
240668
3162468
4780368
Stop Event
node limit
Counts
2 → 50
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (-.f64 0 (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))))))

simplify278.0ms (1.2%)

Algorithm
egg-herbie
Rules
1290×rational.json-simplify-55
1188×rational.json-simplify-80
1182×rational.json-simplify-79
1078×rational.json-simplify-104
1066×rational.json-simplify-112
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01663618
13323612
25053612
323573612
448973612
Stop Event
node limit
Counts
98 → 83
Calls
Call 1
Inputs
(/.f64 a2 (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (pow.f64 (sqrt.f64 2) 2))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (pow.f64 (sqrt.f64 2) 2))) (/.f64 (pow.f64 a2 2) (pow.f64 (sqrt.f64 2) 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (pow.f64 (sqrt.f64 2) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (pow.f64 (sqrt.f64 2) 2))) (/.f64 (pow.f64 a2 2) (pow.f64 (sqrt.f64 2) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (pow.f64 (sqrt.f64 2) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (pow.f64 (sqrt.f64 2) 2))) (+.f64 (*.f64 -2/45 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (pow.f64 (sqrt.f64 2) 2))) (/.f64 (pow.f64 a2 2) (pow.f64 (sqrt.f64 2) 2)))))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(+.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)
(+.f64 0 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
(-.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)
(/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(pow.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)
(+.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)
(+.f64 0 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(-.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)
(/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)
(/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(pow.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(fabs.f64 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(fabs.f64 (-.f64 0 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(fabs.f64 (-.f64 0 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 2))))
(fabs.f64 (/.f64 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(fabs.f64 (/.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (-.f64 0 (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
Outputs
(/.f64 a2 (sqrt.f64 2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2)))) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (/.f64 a2 (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (/.f64 a2 (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))))))
(+.f64 (/.f64 a2 (sqrt.f64 2)) (+.f64 (*.f64 1/24 (/.f64 (*.f64 a2 (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 a2 (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 -1/720 (/.f64 (*.f64 a2 (pow.f64 th 6)) (sqrt.f64 2))))))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 a2 2) 2)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (pow.f64 (sqrt.f64 2) 2))) (/.f64 (pow.f64 a2 2) (pow.f64 (sqrt.f64 2) 2)))
(+.f64 (/.f64 (pow.f64 a2 2) 2) (*.f64 -1 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2)))
(+.f64 (/.f64 (pow.f64 a2 2) 2) (neg.f64 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (pow.f64 (sqrt.f64 2) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (pow.f64 (sqrt.f64 2) 2))) (/.f64 (pow.f64 a2 2) (pow.f64 (sqrt.f64 2) 2))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2)) (+.f64 (/.f64 (pow.f64 a2 2) 2) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) 2))))
(+.f64 (/.f64 (pow.f64 a2 2) 2) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) 2)) (neg.f64 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2))))
(+.f64 (/.f64 (pow.f64 a2 2) 2) (+.f64 (neg.f64 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) 2))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 2)) (pow.f64 (sqrt.f64 2) 2))) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 4)) (pow.f64 (sqrt.f64 2) 2))) (+.f64 (*.f64 -2/45 (/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 th 6)) (pow.f64 (sqrt.f64 2) 2))) (/.f64 (pow.f64 a2 2) (pow.f64 (sqrt.f64 2) 2)))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2)) (+.f64 (*.f64 -2/45 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) 2)) (+.f64 (/.f64 (pow.f64 a2 2) 2) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) 2)))))
(+.f64 (neg.f64 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2)) (+.f64 (+.f64 (/.f64 (pow.f64 a2 2) 2) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) 2))) (*.f64 -2/45 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) 2))))
(+.f64 (neg.f64 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2)) (+.f64 (*.f64 1/3 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) 2)) (+.f64 (/.f64 (pow.f64 a2 2) 2) (*.f64 -2/45 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) 2)))))
(+.f64 (/.f64 (pow.f64 a2 2) 2) (+.f64 (*.f64 -2/45 (/.f64 (*.f64 (pow.f64 th 6) (pow.f64 a2 2)) 2)) (+.f64 (neg.f64 (/.f64 (pow.f64 (*.f64 a2 th) 2) 2)) (*.f64 1/3 (/.f64 (*.f64 (pow.f64 th 4) (pow.f64 a2 2)) 2)))))
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(/.f64 (*.f64 (pow.f64 a2 2) (pow.f64 (cos.f64 th) 2)) (pow.f64 (sqrt.f64 2) 2))
(/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2)
(+.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(+.f64 0 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(-.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 0)
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(pow.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) 1)
(/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(+.f64 0 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(-.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 0)
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(pow.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 1)
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (-.f64 0 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (-.f64 0 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (*.f64 (cos.f64 th) a2) (fabs.f64 (sqrt.f64 2)))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (*.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (neg.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (fabs.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) 2))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))) (/.f64 (*.f64 2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))) (*.f64 2 (fabs.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))))))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))) (/.f64 (*.f64 2 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2))) (fabs.f64 (*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) -2)))))
(fabs.f64 (/.f64 (neg.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))) (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))
(fabs.f64 (/.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (-.f64 0 (fabs.f64 (/.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 a2 (cos.f64 th)) (sqrt.f64 2)))

localize41.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 a2 a2) (*.f64 a1 a1))
0.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
1.0b
(/.f64 1 (sqrt.f64 2))
2.4b
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
Compiler

Compiled 69 to 36 computations (47.8% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
a2
@inf
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
0.0ms
a2
@0
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
0.0ms
a1
@inf
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
0.0ms
a2
@-inf
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
0.0ms
a1
@-inf
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)

rewrite126.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
810×rational.json-simplify-49
800×rational.json-simplify-47
716×rational.json-simplify-50
688×rational.json-simplify-54
682×rational.json-simplify-55
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01647
113535
238635
3137435
4553735
Stop Event
node limit
Counts
1 → 35
Calls
Call 1
Inputs
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (-.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 2 (-.f64 2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -1 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 -2 (-.f64 -2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) -3) 3)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 3) -3)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (/.f64 1 (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (/.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (/.f64 (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))))

simplify231.0ms (1%)

Algorithm
egg-herbie
Rules
978×rational.json-simplify-50
940×rational.json-simplify-2
816×rational.json-simplify-104
730×rational.json-simplify-55
698×rational.json-simplify-47
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0912029
11822029
27082029
316292029
426652029
549022029
673402029
Stop Event
node limit
Counts
59 → 39
Calls
Call 1
Inputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(-.f64 1 (-.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(-.f64 2 (-.f64 2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(-.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1)
(-.f64 -1 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(-.f64 (+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) -1) -1)
(-.f64 (+.f64 2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 2)
(-.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 2) -2)
(-.f64 -2 (-.f64 -2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(-.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) -3) 3)
(-.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 3) -3)
(-.f64 (-.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) -1)
(-.f64 (-.f64 0 (-.f64 -2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 2)
(-.f64 (-.f64 0 (-.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) -1)
(*.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (sqrt.f64 2)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (/.f64 1 (sqrt.f64 2)))))
(*.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (/.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))
(*.f64 (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (/.f64 (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
Outputs
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)) (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))
(+.f64 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)) (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))
(-.f64 1 (-.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 2 (-.f64 2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 0)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 -1 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) -1) -1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (+.f64 2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 2)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 2) -2)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 -2 (-.f64 -2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) -3) 3)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 3) -3)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (-.f64 -1 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) -1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (-.f64 0 (-.f64 -2 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 2)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(-.f64 (-.f64 0 (-.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) -1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (sqrt.f64 2)))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (/.f64 1 (/.f64 1 (sqrt.f64 2)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (/.f64 (*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) 1) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))) (/.f64 (/.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (sqrt.f64 2) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) 1)
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
1.0b
(/.f64 1 (sqrt.f64 2))
Compiler

Compiled 23 to 20 computations (13% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
a2
@0
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
0.0ms
a2
@inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
0.0ms
a2
@-inf
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))

rewrite94.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
18123
223623
385823
4320623
Stop Event
node limit
Counts
1 → 9
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (sqrt.f64 2) (pow.f64 a2 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))))))))

simplify209.0ms (0.9%)

Algorithm
egg-herbie
Rules
1978×rational.json-simplify-79
1250×rational.json-simplify-43
936×rational.json-simplify-104
902×rational.json-simplify-73
830×rational.json-simplify-47
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027455
151455
2104455
3259455
4777455
52957455
64351455
75382455
86801455
Stop Event
node limit
Counts
21 → 12
Calls
Call 1
Inputs
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 0)
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 0)
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)))) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (sqrt.f64 2) (pow.f64 a2 2))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))))
Outputs
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 0)
(*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2)))
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)))
(*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 0)
(*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))))
(*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)))) 1)
(*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 1)
(*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a2 2)) (*.f64 (sqrt.f64 2) (pow.f64 a2 2))))
(/.f64 (*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a2 2) (sqrt.f64 2)) (*.f64 (pow.f64 a2 2) (sqrt.f64 2))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2)) 1)
(*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2)))
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))))
(*.f64 (pow.f64 a2 2) (/.f64 1 (sqrt.f64 2)))

localize23.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2)))
0.4b
(pow.f64 (/.f64 1 a1) 2)
1.0b
(/.f64 1 (sqrt.f64 2))
40.1b
(*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2))
Compiler

Compiled 55 to 39 computations (29.1% saved)

series2.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
a1
@-inf
(pow.f64 (/.f64 1 a1) 2)
0.0ms
a1
@inf
(*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2))
0.0ms
a1
@0
(*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2))
0.0ms
a1
@-inf
(*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2))
0.0ms
a1
@0
(pow.f64 (/.f64 1 a1) 2)

rewrite131.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
1448×rational.json-simplify-49
1172×rational.json-simplify-47
660×rational.json-simplify-55
614×exponential.json-3
614×rational.json-1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01479
112179
238443
3144643
4571743
Stop Event
node limit
Counts
3 → 35
Calls
Call 1
Inputs
(*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2))
(pow.f64 (/.f64 1 a1) 2)
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 a1 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 a1 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 a1 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 a1 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (pow.f64 a1 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 a1 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 a1 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 a1 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 a1 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (/.f64 1 a1) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (/.f64 1 a1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (/.f64 1 a1) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 (/.f64 1 a1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (pow.f64 (/.f64 1 a1) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (/.f64 1 a1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 a1) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 a1) 2) (/.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (/.f64 1 a1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (/.f64 1 (pow.f64 (/.f64 1 a1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (*.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (pow.f64 (/.f64 1 (/.f64 1 a1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 1 a1) (*.f64 (/.f64 1 a1) (*.f64 (/.f64 1 a1) (/.f64 1 a1)))) 2) (/.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (/.f64 1 a1) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (/.f64 1 a1) 2) (/.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (/.f64 1 a1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 (/.f64 1 a1) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))))))

simplify104.0ms (0.4%)

Algorithm
egg-herbie
Rules
1724×rational.json-simplify-47
1452×rational.json-simplify-49
1140×rational.json-simplify-2
834×rational.json-simplify-55
658×rational.json-simplify-41
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
073973
1148973
2304973
3928953
43087947
Stop Event
node limit
Counts
71 → 42
Calls
Call 1
Inputs
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 0 (pow.f64 a1 2))
(+.f64 (pow.f64 a1 2) 0)
(-.f64 0 (neg.f64 (pow.f64 a1 2)))
(-.f64 (pow.f64 a1 2) 0)
(-.f64 (-.f64 0 (-.f64 -1 (pow.f64 a1 2))) 1)
(/.f64 (pow.f64 a1 2) 1)
(/.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))
(pow.f64 a1 2)
(pow.f64 (pow.f64 a1 2) 1)
(neg.f64 (neg.f64 (pow.f64 a1 2)))
(+.f64 (pow.f64 (/.f64 1 a1) 2) 0)
(+.f64 0 (pow.f64 (/.f64 1 a1) 2))
(-.f64 (pow.f64 (/.f64 1 a1) 2) 0)
(-.f64 0 (neg.f64 (pow.f64 (/.f64 1 a1) 2)))
(-.f64 (-.f64 0 (-.f64 -1 (pow.f64 (/.f64 1 a1) 2))) 1)
(*.f64 1 (pow.f64 (/.f64 1 a1) 2))
(*.f64 (pow.f64 (/.f64 1 a1) 2) 1)
(*.f64 (pow.f64 (/.f64 1 a1) 2) (/.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (/.f64 1 a1) 2)))
(*.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (/.f64 1 (pow.f64 (/.f64 1 a1) 2)))
(*.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (*.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) 1))
(*.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (pow.f64 (/.f64 1 (/.f64 1 a1)) 2))
(*.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2))
(*.f64 (pow.f64 (*.f64 (/.f64 1 a1) (*.f64 (/.f64 1 a1) (*.f64 (/.f64 1 a1) (/.f64 1 a1)))) 2) (/.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2)))
(/.f64 (pow.f64 (/.f64 1 a1) 2) 1)
(/.f64 (pow.f64 (/.f64 1 a1) 2) (/.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (/.f64 1 a1) 2)))
(neg.f64 (neg.f64 (pow.f64 (/.f64 1 a1) 2)))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))
Outputs
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 a1 2)
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 1 (pow.f64 a1 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(+.f64 0 (pow.f64 a1 2))
(pow.f64 a1 2)
(+.f64 (pow.f64 a1 2) 0)
(pow.f64 a1 2)
(-.f64 0 (neg.f64 (pow.f64 a1 2)))
(pow.f64 a1 2)
(-.f64 (pow.f64 a1 2) 0)
(pow.f64 a1 2)
(-.f64 (-.f64 0 (-.f64 -1 (pow.f64 a1 2))) 1)
(pow.f64 a1 2)
(/.f64 (pow.f64 a1 2) 1)
(pow.f64 a1 2)
(/.f64 (pow.f64 a1 2) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))
(pow.f64 a1 2)
(pow.f64 a1 2)
(pow.f64 (pow.f64 a1 2) 1)
(pow.f64 a1 2)
(neg.f64 (neg.f64 (pow.f64 a1 2)))
(pow.f64 a1 2)
(+.f64 (pow.f64 (/.f64 1 a1) 2) 0)
(pow.f64 (/.f64 1 a1) 2)
(+.f64 0 (pow.f64 (/.f64 1 a1) 2))
(pow.f64 (/.f64 1 a1) 2)
(-.f64 (pow.f64 (/.f64 1 a1) 2) 0)
(pow.f64 (/.f64 1 a1) 2)
(-.f64 0 (neg.f64 (pow.f64 (/.f64 1 a1) 2)))
(pow.f64 (/.f64 1 a1) 2)
(-.f64 (-.f64 0 (-.f64 -1 (pow.f64 (/.f64 1 a1) 2))) 1)
(pow.f64 (/.f64 1 a1) 2)
(*.f64 1 (pow.f64 (/.f64 1 a1) 2))
(pow.f64 (/.f64 1 a1) 2)
(*.f64 (pow.f64 (/.f64 1 a1) 2) 1)
(pow.f64 (/.f64 1 a1) 2)
(*.f64 (pow.f64 (/.f64 1 a1) 2) (/.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (/.f64 1 a1) 2)))
(pow.f64 (/.f64 1 a1) 2)
(*.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (/.f64 1 (pow.f64 (/.f64 1 a1) 2)))
(pow.f64 (/.f64 1 a1) 2)
(*.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (*.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) 1))
(pow.f64 (/.f64 1 a1) 2)
(*.f64 (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2) (pow.f64 (/.f64 1 (/.f64 1 a1)) 2))
(pow.f64 (/.f64 1 a1) 2)
(*.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2))
(pow.f64 (/.f64 1 a1) 2)
(*.f64 (pow.f64 (*.f64 (/.f64 1 a1) (*.f64 (/.f64 1 a1) (*.f64 (/.f64 1 a1) (/.f64 1 a1)))) 2) (/.f64 (/.f64 1 (pow.f64 (/.f64 1 a1) 2)) (pow.f64 (*.f64 (/.f64 1 a1) (/.f64 1 a1)) 2)))
(pow.f64 (/.f64 1 a1) 2)
(/.f64 (pow.f64 (/.f64 1 a1) 2) 1)
(pow.f64 (/.f64 1 a1) 2)
(/.f64 (pow.f64 (/.f64 1 a1) 2) (/.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (/.f64 1 a1) 2)))
(pow.f64 (/.f64 1 a1) 2)
(neg.f64 (neg.f64 (pow.f64 (/.f64 1 a1) 2)))
(pow.f64 (/.f64 1 a1) 2)
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(+.f64 0 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 0)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 0 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))) 1)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))
(/.f64 (*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (sqrt.f64 2)) (*.f64 (pow.f64 a1 2) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2))) (/.f64 (pow.f64 a1 2) (pow.f64 a1 2)))
(*.f64 (pow.f64 (*.f64 a1 a1) 2) (/.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)))
(pow.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2)) 1)
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))
(neg.f64 (neg.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))))
(*.f64 (pow.f64 a1 2) (/.f64 1 (sqrt.f64 2)))

localize69.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
0.3b
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))
0.7b
(/.f64 (cos.f64 th) (sqrt.f64 2))
25.6b
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
Compiler

Compiled 147 to 52 computations (64.6% saved)

series21.0ms (0.1%)

Counts
3 → 76
Calls

24 calls:

TimeVariablePointExpression
7.0ms
th
@-inf
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
1.0ms
th
@inf
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
1.0ms
th
@0
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
1.0ms
a1
@-inf
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
1.0ms
a1
@0
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))

rewrite179.0ms (0.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
020205
1180205
2616205
32486205
Stop Event
node limit
Counts
3 → 21
Calls
Call 1
Inputs
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (/.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))) (/.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)))))

simplify637.0ms (2.7%)

Algorithm
egg-herbie
Rules
816×rational.json-simplify-50
738×rational.json-simplify-2
710×exponential.json-simplify-26
704×rational.json-simplify-1
692×rational.json-simplify-79
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01557523
13027297
25697283
314197255
432197255
551797255
677747255
Stop Event
node limit
Counts
97 → 106
Calls
Call 1
Inputs
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 6)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(/.f64 (sqrt.f64 2) (pow.f64 a1 2))
(+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (pow.f64 th 4))) (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (pow.f64 th 4))) (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))))) (+.f64 (*.f64 -1/720 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 1/48 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))))) (pow.f64 th 6))))))
(/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 4)) (sqrt.f64 2))))))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2)))))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 0)
(+.f64 0 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(-.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 0)
(/.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 1)
(/.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (/.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 1)
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 0)
(+.f64 0 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(-.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 0)
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 1)
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(*.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))) (/.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(pow.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 1)
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)
Outputs
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) th) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) th) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 6)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) th) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 2)) (sqrt.f64 2))))
(/.f64 (sqrt.f64 2) (pow.f64 a1 2))
(+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (pow.f64 th 4))) (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2)))))
(+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -1/4)) (*.f64 (pow.f64 th 4) -1))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2)))) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -5/24) (neg.f64 (pow.f64 th 4))))
(+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 5/24))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2)))) (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 5/24)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)))) (pow.f64 th 4))) (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 -1/4 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))))) (+.f64 (*.f64 -1/720 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 1/48 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))))) (pow.f64 th 6))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -1/4)) (*.f64 (pow.f64 th 4) -1)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 1/24 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -1/4))) (+.f64 (*.f64 -1/720 (/.f64 (sqrt.f64 2) (pow.f64 a1 2))) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 1/48))) (*.f64 (pow.f64 th 6) -1)) (/.f64 (sqrt.f64 2) (pow.f64 a1 2)))))
(+.f64 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -5/24) (neg.f64 (pow.f64 th 4))) (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (*.f64 (+.f64 (*.f64 1/2 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -5/24)) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 7/360)) (neg.f64 (pow.f64 th 6))))))
(+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (+.f64 (*.f64 (+.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -5/48) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 7/360)) (neg.f64 (pow.f64 th 6))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 5/24)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (+.f64 (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 5/24))) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -61/720) (neg.f64 (pow.f64 th 6)))))
(+.f64 (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2)))) (+.f64 (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 5/24)) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -61/720) (neg.f64 (pow.f64 th 6)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 2) (pow.f64 th 2)) (pow.f64 a1 2))) (+.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) (+.f64 (*.f64 (pow.f64 th 4) (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) 5/24)) (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (pow.f64 a1 2)) -61/720) (neg.f64 (pow.f64 th 6))))))
(/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (sqrt.f64 2))
(/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) th) 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (sqrt.f64 2))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) th) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))))
(+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 6)) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (sqrt.f64 2)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 2)) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (pow.f64 th 4)) (sqrt.f64 2))))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) th) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (sqrt.f64 2))) (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2))))
(+.f64 (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))) (+.f64 (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (sqrt.f64 2)))))
(+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (sqrt.f64 2))) (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (sqrt.f64 2)))) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (sqrt.f64 2)))))
(+.f64 (*.f64 1/24 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 4)) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (*.f64 th (+.f64 (pow.f64 a1 2) (pow.f64 a2 2))) 2) (sqrt.f64 2))) (+.f64 (/.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (sqrt.f64 2)) (*.f64 -1/720 (/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2) (pow.f64 th 6)) (sqrt.f64 2))))))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 (+.f64 (pow.f64 a1 2) (pow.f64 a2 2)) 2)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (cos.f64 th) (pow.f64 a2 2))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2))
(+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2)))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a1 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 a1 2) (*.f64 (pow.f64 a2 2) (cos.f64 th))) (sqrt.f64 2))) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a2 4)) (sqrt.f64 2))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (*.f64 (pow.f64 a2 2) (pow.f64 a1 2))) (sqrt.f64 2)))))
(+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (+.f64 (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2)) (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 (cos.f64 th) (pow.f64 (*.f64 a2 a1) 2)) (sqrt.f64 2))) (+.f64 (/.f64 (*.f64 (pow.f64 a2 4) (cos.f64 th)) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) (pow.f64 a1 4)) (sqrt.f64 2))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 0)
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(+.f64 0 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(-.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 0)
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(/.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 1)
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(/.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (/.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) 1)
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2))) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))))
(+.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 0)
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(+.f64 0 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(-.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 0)
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 1)
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(*.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))) (/.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))))
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(pow.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) 1)
(/.f64 (sqrt.f64 2) (*.f64 (cos.f64 th) (pow.f64 a1 2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)
(*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(+.f64 0 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))
(*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(-.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 0)
(*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)
(*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (cos.f64 th) (sqrt.f64 2)))
(pow.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) 1)
(*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))
(*.f64 (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))) (/.f64 (cos.f64 th) (sqrt.f64 2)))

eval1.1s (4.8%)

Compiler

Compiled 20645 to 12848 computations (37.8% saved)

prune360.0ms (1.5%)

Pruning

34 alts after pruning (22 fresh and 12 done)

PrunedKeptTotal
New5098517
Fresh71421
Picked011
Done01111
Total51634550
Error
0.1b
Counts
550 → 34
Alt Table
Click to see full alt table
StatusErrorProgram
53.7b
(/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
40.7b
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
38.2b
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
47.1b
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
28.5b
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
26.6b
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
46.3b
(+.f64 (+.f64 1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) -1)
43.3b
(+.f64 (+.f64 1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2))) -1)
34.9b
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2))))
11.8b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (pow.f64 a2 2) 2))))
0.5b
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
12.2b
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
24.2b
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
12.2b
(+.f64 (*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2)))) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
47.8b
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
0.5b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
32.1b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
54.3b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (pow.f64 a1 4))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
46.9b
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
46.0b
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
32.2b
(*.f64 (/.f64 1 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
40.7b
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
38.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
24.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
54.2b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2)))
46.0b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
54.3b
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
1.1b
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
48.2b
(*.f64 (*.f64 (/.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
46.0b
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))
0.9b
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Compiler

Compiled 1003 to 598 computations (40.4% saved)

regimes652.0ms (2.7%)

Counts
49 → 1
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
(+.f64 (+.f64 1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2))) -1)
(+.f64 (+.f64 1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) -1)
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) 1)
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2)))) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (pow.f64 a1 4))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
(/.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (pow.f64 a2 2) 2))))
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(/.f64 (*.f64 (pow.f64 (+.f64 (pow.f64 a2 2) (pow.f64 a1 2)) 2) (cos.f64 th)) (*.f64 (sqrt.f64 2) (pow.f64 a1 2)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (/.f64 (pow.f64 (*.f64 a2 (cos.f64 th)) 2) 2))))
(*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))))
(*.f64 (/.f64 1 (*.f64 (*.f64 (/.f64 (sqrt.f64 2) (cos.f64 th)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (/.f64 1 (*.f64 (*.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (*.f64 (/.f64 1 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))) (*.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (*.f64 (/.f64 1 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th)))) (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))) (/.f64 (sqrt.f64 2) (*.f64 (pow.f64 a1 2) (cos.f64 th))))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))) (/.f64 (/.f64 1 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))))))
(*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 (*.f64 (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)) (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2)))))))
(*.f64 (/.f64 1 (*.f64 (*.f64 (*.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2)))) (/.f64 (/.f64 1 (/.f64 (cos.f64 th) (sqrt.f64 2))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (/.f64 (cos.f64 th) (sqrt.f64 2))))) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)))) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a1 a1) (*.f64 a2 a2)) (+.f64 (*.f64 a1 a1) (*.f64 a2 a2))))))
Outputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
Calls

8 calls:

167.0ms
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
153.0ms
(cos.f64 th)
118.0ms
a1
44.0ms
a2
41.0ms
th
Results
ErrorSegmentsBranch
0.5b1a1
0.5b1a2
0.5b1th
0.5b1(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a2 a2)))
0.5b1(/.f64 (cos.f64 th) (sqrt.f64 2))
0.5b1(cos.f64 th)
0.5b1(*.f64 a1 a1)
0.5b1(*.f64 a2 a2)
Compiler

Compiled 1643 to 764 computations (53.5% saved)

regimes630.0ms (2.6%)

Counts
29 → 1
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
(+.f64 (+.f64 1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2))) -1)
(+.f64 (+.f64 1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) -1)
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) 1)
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2)))) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (pow.f64 a1 4))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
Outputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
Calls

7 calls:

191.0ms
a1
134.0ms
(/.f64 (cos.f64 th) (sqrt.f64 2))
31.0ms
th
26.0ms
a2
23.0ms
(cos.f64 th)
Results
ErrorSegmentsBranch
0.5b1a1
0.5b1a2
0.5b1th
0.5b1(/.f64 (cos.f64 th) (sqrt.f64 2))
0.5b1(cos.f64 th)
0.5b1(*.f64 a1 a1)
0.5b1(*.f64 a2 a2)
Compiler

Compiled 656 to 307 computations (53.2% saved)

regimes313.0ms (1.3%)

Counts
28 → 1
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
(+.f64 (+.f64 1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2))) -1)
(+.f64 (+.f64 1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) -1)
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) 1)
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))) 1)
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(/.f64 (*.f64 (pow.f64 a1 2) (cos.f64 th)) (sqrt.f64 2))
(/.f64 (*.f64 (pow.f64 a2 2) (cos.f64 th)) (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (pow.f64 (/.f64 1 a1) 2) (pow.f64 (*.f64 a1 a1) 2)))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 a2 (sqrt.f64 2))))
(+.f64 (*.f64 a1 (*.f64 a1 (/.f64 1 (sqrt.f64 2)))) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(+.f64 (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (/.f64 1 (sqrt.f64 2)) (/.f64 1 (sqrt.f64 2))))))
(*.f64 (/.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (pow.f64 a1 4))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
Outputs
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Calls

7 calls:

123.0ms
a1
70.0ms
th
25.0ms
a2
21.0ms
(/.f64 (cos.f64 th) (sqrt.f64 2))
21.0ms
(cos.f64 th)
Results
ErrorSegmentsBranch
0.5b1a1
0.5b1a2
0.5b1th
0.5b1(/.f64 (cos.f64 th) (sqrt.f64 2))
0.5b1(cos.f64 th)
0.5b1(*.f64 a1 a1)
0.5b1(*.f64 a2 a2)
Compiler

Compiled 637 to 297 computations (53.4% saved)

regimes246.0ms (1%)

Accuracy

Total -39.2b remaining (-162.1%)

Threshold costs -39.2b (-162.1%)

Counts
14 → 1
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(+.f64 (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))) -1)
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) 1)
(*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (/.f64 1 (sqrt.f64 2))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))))
(*.f64 (/.f64 1 (sqrt.f64 2)) (*.f64 (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))) (/.f64 (/.f64 1 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))) (*.f64 (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1))))))
(/.f64 (pow.f64 a1 2) (sqrt.f64 2))
(/.f64 (pow.f64 a2 2) (sqrt.f64 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a1 2))
(*.f64 (/.f64 1 (sqrt.f64 2)) (pow.f64 a2 2))
(+.f64 (+.f64 1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2))) -1)
(+.f64 (+.f64 1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2))) -1)
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a1 2) (sqrt.f64 2)))) 1)
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 (pow.f64 a2 2) (sqrt.f64 2)))) 1)
Outputs
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Calls

5 calls:

190.0ms
th
14.0ms
a2
13.0ms
a1
11.0ms
(*.f64 a2 a2)
9.0ms
(*.f64 a1 a1)
Results
ErrorSegmentsBranch
24.2b1a1
24.2b1a2
24.2b1th
24.2b1(*.f64 a1 a1)
24.2b1(*.f64 a2 a2)
Compiler

Compiled 267 to 140 computations (47.6% saved)

simplify7.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025192
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Outputs
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (/.f64 (*.f64 (cos.f64 th) a2) (sqrt.f64 2))))
(+.f64 (*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (*.f64 a1 a1)) (*.f64 a2 (*.f64 a2 (/.f64 (cos.f64 th) (sqrt.f64 2)))))
(*.f64 (/.f64 (cos.f64 th) (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
(*.f64 (/.f64 1 (sqrt.f64 2)) (+.f64 (*.f64 a2 a2) (*.f64 a1 a1)))
Compiler

Compiled 75 to 52 computations (30.7% saved)

soundness356.0ms (1.5%)

Algorithm
egg-herbie
Rules
876×rational.json-simplify-2
788×rational.json-simplify-50
706×exponential.json-simplify-26
698×rational.json-simplify-79
678×rational.json-simplify-104
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01244790
12564754
25824754
316094754
437514754
557844754
678204754
Stop Event
node limit
Compiler

Compiled 62 to 36 computations (41.9% saved)

end276.0ms (1.2%)

Remove

(sort a1 a2)

Compiler

Compiled 110 to 66 computations (40% saved)

Profiling

Loading profile data...