Details

Time bar (total: 9.0s)

analyze0.0ms (0%)

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

Compiled 14 to 13 computations (7.1% saved)

sample1.7s (18.9%)

Results
837.0ms2211×body2048valid
456.0ms4537×body256valid
284.0ms1015×body1024valid
103.0ms493×body512valid
Bogosity

preprocess701.0ms (7.8%)

Algorithm
egg-herbie
Rules
11846×rational.json-simplify-41
1180×rational.json-simplify-1
328×rational.json-simplify-35
12×rational.json-simplify-2
rational.json-simplify-43
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01235
12235
23035
34335
45435
57835
614435
733135
841435
941835
1042235
1142635
1243035
13142135
14183335
15183735
16184135
17184535
18184935
19185335
20185735
21186135
22186535
23186935
24187335
25187735
26188135
27188535
28188935
29189335
30189735
31190135
32190535
33190935
34191335
35191735
36192135
37192535
38192935
39193335
40193735
41194135
42194535
43194935
44195335
45195735
46196135
47196535
48196935
49197335
50197735
51198135
52198535
53198935
54199335
55199735
56200135
57200535
58200935
59201335
60201735
61202135
62202535
63202935
64203335
65203735
66204135
67204535
68204935
69205335
70205735
71206135
72206535
73206935
74207335
75207735
76208135
77208535
78208935
79209335
80209735
81210135
82210535
83210935
84211335
85211735
86212135
87212535
88212935
89213335
90213735
91214135
92214535
93214935
94215335
95215735
96216135
97216535
98216935
99217335
100217735
101218135
102218535
103218935
104219335
105219735
106220135
107220535
108220935
109221335
110221735
111222135
112222535
113222935
114223335
115223735
116224135
117224535
118224935
119225335
120225735
121226135
122226535
123226935
124227335
125227735
126228135
127228535
128228935
129229335
130229735
131230135
132230535
133230935
134231335
135231735
136232135
137232535
138232935
139233335
140233735
141234135
142234535
143234935
144235335
145235735
146236135
147236535
148236935
149237335
150237735
151238135
152238535
153238935
154239335
155239735
156240135
157240535
158240935
159241335
160241735
161242135
162242535
163242935
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Outputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Compiler

Compiled 14 to 13 computations (7.1% saved)

simplify702.0ms (7.8%)

Algorithm
egg-herbie
Rules
11846×rational.json-simplify-41
1180×rational.json-simplify-1
328×rational.json-simplify-35
12×rational.json-simplify-2
rational.json-simplify-43
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01235
12235
23035
34335
45435
57835
614435
733135
841435
941835
1042235
1142635
1243035
13142135
14183335
15183735
16184135
17184535
18184935
19185335
20185735
21186135
22186535
23186935
24187335
25187735
26188135
27188535
28188935
29189335
30189735
31190135
32190535
33190935
34191335
35191735
36192135
37192535
38192935
39193335
40193735
41194135
42194535
43194935
44195335
45195735
46196135
47196535
48196935
49197335
50197735
51198135
52198535
53198935
54199335
55199735
56200135
57200535
58200935
59201335
60201735
61202135
62202535
63202935
64203335
65203735
66204135
67204535
68204935
69205335
70205735
71206135
72206535
73206935
74207335
75207735
76208135
77208535
78208935
79209335
80209735
81210135
82210535
83210935
84211335
85211735
86212135
87212535
88212935
89213335
90213735
91214135
92214535
93214935
94215335
95215735
96216135
97216535
98216935
99217335
100217735
101218135
102218535
103218935
104219335
105219735
106220135
107220535
108220935
109221335
110221735
111222135
112222535
113222935
114223335
115223735
116224135
117224535
118224935
119225335
120225735
121226135
122226535
123226935
124227335
125227735
126228135
127228535
128228935
129229335
130229735
131230135
132230535
133230935
134231335
135231735
136232135
137232535
138232935
139233335
140233735
141234135
142234535
143234935
144235335
145235735
146236135
147236535
148236935
149237335
150237735
151238135
152238535
153238935
154239335
155239735
156240135
157240535
158240935
159241335
160241735
161242135
162242535
163242935
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Outputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))

eval0.0ms (0%)

Compiler

Compiled 13 to 12 computations (7.7% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
14.2b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Compiler

Compiled 13 to 12 computations (7.7% saved)

localize20.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (hypot.f64 1 x))
0.0b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.0b
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
2.1b
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Compiler

Compiled 50 to 43 computations (14% saved)

series4.0ms (0%)

Counts
4 → 48
Calls

12 calls:

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

rewrite84.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1346×bool.json-1
1346×bool.json-2
1306×rational.json-1
1306×rational.json-2
1306×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01296
112996
236496
374796
4158396
5426696
Stop Event
node limit
Counts
4 → 133
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(/.f64 1 (hypot.f64 1 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (hypot.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 2 (/.f64 2 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 1 x)) (+.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 1 x)) (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (hypot.f64 1 x)) (/.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (hypot.f64 1 x)) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (hypot.f64 1 x)) (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (/.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (/.f64 2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (hypot.f64 1 x)) (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (hypot.f64 1 x)) (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 (hypot.f64 1 x)) (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4) (/.f64 (/.f64 2 (hypot.f64 1 x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4)) (/.f64 2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2) (/.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2) (/.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) 1/2) (/.f64 1/4 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 2 (hypot.f64 1 x)) 1/2) (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (/.f64 (hypot.f64 1 x) (neg.f64 (+.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (hypot.f64 1 x)) (hypot.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (+.f64 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 (*.f64 (hypot.f64 1 x) -2) (neg.f64 (+.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (*.f64 (hypot.f64 1 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (+.f64 (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 (hypot.f64 1 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (neg.f64 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4)) (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 (hypot.f64 1 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2) (*.f64 (hypot.f64 1 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 1/2) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2) (hypot.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (hypot.f64 1 x)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (hypot.f64 1 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (hypot.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 1 (/.f64 1 (hypot.f64 1 x))) (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 1 (/.f64 1 (hypot.f64 1 x))) (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (hypot.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/2 (hypot.f64 1 x)) (/.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (hypot.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 1 x) (/.f64 1 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (hypot.f64 1 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 1/4 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (hypot.f64 1 x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (hypot.f64 1 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 1 (hypot.f64 1 x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (hypot.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 2 (hypot.f64 1 x)) (hypot.f64 1 x)) (*.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 (hypot.f64 1 x)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (hypot.f64 1 x)) (/.f64 (/.f64 2 (hypot.f64 1 x)) (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (*.f64 (hypot.f64 1 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 2))) (*.f64 (hypot.f64 1 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 -1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (/.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x and (/.f64 1 (hypot.f64 1 x)) (/.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x or (/.f64 1 (hypot.f64 1 x)) (/.f64 1 (hypot.f64 1 x)))))))

simplify117.0ms (1.3%)

Algorithm
egg-herbie
Rules
1370×rational.json-simplify-59
1260×rational.json-simplify-35
1122×rational.json-simplify-53
1066×rational.json-simplify-2
1000×rational.json-simplify-46
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03555577
18165577
222505319
349585319
Stop Event
node limit
Counts
181 → 269
Calls
Call 1
Inputs
(-.f64 1 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) 1) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4))) (sqrt.f64 2))))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (+.f64 1 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (pow.f64 x 6))) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4))) (sqrt.f64 2)))))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))) (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(-.f64 (+.f64 (*.f64 -3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))) (sqrt.f64 1/2))
2
(+.f64 2 (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 3/8 (pow.f64 x 4))))
(+.f64 (*.f64 -5/16 (pow.f64 x 6)) (+.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 3/8 (pow.f64 x 4)))))
1
(+.f64 1 (/.f64 1 x))
(-.f64 (+.f64 1 (/.f64 1 x)) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 1 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5))))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
1
(-.f64 1 (/.f64 1 x))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))) (/.f64 1 x))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4))) (sqrt.f64 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4))) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (pow.f64 x 6))) (sqrt.f64 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (*.f64 -3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 3/8 (pow.f64 x 4))))
(+.f64 (*.f64 -5/16 (pow.f64 x 6)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 3/8 (pow.f64 x 4)))))
(/.f64 1 x)
(-.f64 (/.f64 1 x) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 5/16 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))))
(/.f64 -1 x)
(-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (/.f64 1 x))
(-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))))
(-.f64 (+.f64 (*.f64 5/16 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 0)
(+.f64 0 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))
(+.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)) -1)
(*.f64 1 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2))
(*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 1)
(*.f64 -1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2) 1/2)
(*.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1) -1)
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 1/4)
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))) 2)
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 4)
(/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2) 2)
(/.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1) -1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 4)
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))) 16)
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))) 2)
(neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))
(-.f64 (/.f64 1 (hypot.f64 1 x)) -1)
(-.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 0)
(*.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
(*.f64 1/2 (+.f64 2 (/.f64 2 (hypot.f64 1 x))))
(*.f64 (/.f64 1 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 1 (hypot.f64 1 x)) (+.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))))
(*.f64 (/.f64 1 (hypot.f64 1 x)) (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2))
(*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1)
(*.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) 2)
(*.f64 (+.f64 1 (hypot.f64 1 x)) (/.f64 1 (hypot.f64 1 x)))
(*.f64 2 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(*.f64 (/.f64 2 (hypot.f64 1 x)) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))
(*.f64 (/.f64 2 (hypot.f64 1 x)) (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4)))
(*.f64 4 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4))
(*.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2)
(*.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 1/4)
(*.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (/.f64 2 (hypot.f64 1 x)))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2))
(*.f64 1/4 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4))
(*.f64 1/4 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2))
(*.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4) 4)
(*.f64 (/.f64 1/4 (hypot.f64 1 x)) (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) 1/2))
(*.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4) (/.f64 (/.f64 2 (hypot.f64 1 x)) 1/2))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4)) (/.f64 2 (hypot.f64 1 x)))
(*.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2) (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2) 1/4)
(*.f64 (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2) (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) 1/2) (/.f64 1/4 (hypot.f64 1 x)))
(*.f64 (/.f64 (/.f64 2 (hypot.f64 1 x)) 1/2) (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4))
(/.f64 1 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(/.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1)
(/.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) 1/2)
(/.f64 -1 (/.f64 (hypot.f64 1 x) (neg.f64 (+.f64 1 (hypot.f64 1 x)))))
(/.f64 (+.f64 1 (hypot.f64 1 x)) (hypot.f64 1 x))
(/.f64 2 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(/.f64 2 (+.f64 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(/.f64 2 (/.f64 (*.f64 (hypot.f64 1 x) -2) (neg.f64 (+.f64 1 (hypot.f64 1 x)))))
(/.f64 4 (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(/.f64 4 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 2)
(/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (*.f64 (hypot.f64 1 x) 2))
(/.f64 8 (+.f64 (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(/.f64 8 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))))
(/.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 4)
(/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 (hypot.f64 1 x) 4))
(/.f64 (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4)) 8)
(/.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4) 1/4)
(/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (neg.f64 (hypot.f64 1 x)))
(/.f64 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4)) (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4))) 16)
(/.f64 (+.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 (hypot.f64 1 x) -2))
(/.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2) (*.f64 (hypot.f64 1 x) 2))
(/.f64 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2) 4)
(/.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 1/2) 8)
(/.f64 (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2) (hypot.f64 1 x))
(/.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (hypot.f64 1 x)) 4)
(/.f64 (/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x)) -1)
(/.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (hypot.f64 1 x) 2)))
(/.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (hypot.f64 1 x))
(/.f64 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))))
(/.f64 (+.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(/.f64 (+.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))))
(neg.f64 (/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x)))
(+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 0)
(+.f64 0 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 0)
(*.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2))
(*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 1)
(*.f64 2 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2) 1/2)
(*.f64 4 (/.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 1/4)
(*.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2)
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))
(*.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 4)
(/.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 1)
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))) 16)
(+.f64 (/.f64 1 (hypot.f64 1 x)) 0)
(+.f64 0 (/.f64 1 (hypot.f64 1 x)))
(+.f64 (/.f64 1/2 (hypot.f64 1 x)) (/.f64 1/2 (hypot.f64 1 x)))
(-.f64 (/.f64 1 (hypot.f64 1 x)) 0)
(*.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 1/2 (/.f64 2 (hypot.f64 1 x)))
(*.f64 (hypot.f64 1 x) (/.f64 1 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (/.f64 1 (hypot.f64 1 x)) 1)
(*.f64 2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 2))))
(*.f64 (/.f64 2 (hypot.f64 1 x)) 1/2)
(*.f64 4 (/.f64 1/4 (hypot.f64 1 x)))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 1 x)) 4) 1/4)
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) 2)
(*.f64 1/4 (*.f64 (/.f64 1 (hypot.f64 1 x)) 4))
(*.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (hypot.f64 1 x))
(*.f64 (/.f64 (/.f64 2 (hypot.f64 1 x)) (hypot.f64 1 x)) (*.f64 1/2 (hypot.f64 1 x)))
(*.f64 (/.f64 1/4 (hypot.f64 1 x)) 4)
(*.f64 (*.f64 1/2 (hypot.f64 1 x)) (/.f64 (/.f64 2 (hypot.f64 1 x)) (hypot.f64 1 x)))
(*.f64 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (*.f64 (hypot.f64 1 x) 2))
(*.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 2))) (*.f64 (hypot.f64 1 x) 2))
(neg.f64 (/.f64 -1 (hypot.f64 1 x)))
Outputs
(-.f64 1 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) 1) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 1 (-.f64 (*.f64 1/4 (*.f64 (pow.f64 x 2) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2)))) (-.f64 1 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (-.f64 1 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (*.f64 1/4 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2)))))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4))) (sqrt.f64 2))))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (*.f64 (pow.f64 x 4) (sqrt.f64 1/2))) (sqrt.f64 2)))) (-.f64 (*.f64 1/4 (*.f64 (pow.f64 x 2) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (+.f64 1 (*.f64 -1/2 (*.f64 (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))) (-.f64 (*.f64 1/4 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 4)) (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (sqrt.f64 2)))) (-.f64 (*.f64 1/4 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2)))) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 4)) (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (+.f64 1 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (pow.f64 x 6))) (sqrt.f64 2))) (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4))) (sqrt.f64 2)))))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (*.f64 (pow.f64 x 4) (sqrt.f64 1/2))) (sqrt.f64 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (*.f64 (pow.f64 x 6) (sqrt.f64 1/2))) (sqrt.f64 2))))) (-.f64 (*.f64 1/4 (*.f64 (pow.f64 x 2) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 6)) (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (sqrt.f64 2)))))) (-.f64 (*.f64 1/4 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (-.f64 1 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 4)) (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (sqrt.f64 2)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 6)) (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (sqrt.f64 2)))) (*.f64 1/4 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2)))))))
(+.f64 1 (+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2)))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 6)) (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (sqrt.f64 2)))) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 4)) (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (sqrt.f64 2)))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 1 (-.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2))))
(+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 1 (sqrt.f64 1/2))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (sqrt.f64 1/2)))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 1 (sqrt.f64 1/2))))
(+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (+.f64 1 (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (-.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (sqrt.f64 1/2))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 1 (-.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 1 (sqrt.f64 1/2))))
(-.f64 (+.f64 (*.f64 -3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))) (sqrt.f64 1/2))
(+.f64 (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))) (-.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -3/16) (sqrt.f64 1/2)))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 1 (sqrt.f64 1/2)))) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -3/16))
(+.f64 1 (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -3/16) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (sqrt.f64 1/2)))))
2
(+.f64 2 (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 2 (*.f64 (pow.f64 x 2) -1/2))
(+.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 3/8 (pow.f64 x 4))))
(+.f64 2 (+.f64 (*.f64 (pow.f64 x 2) -1/2) (*.f64 3/8 (pow.f64 x 4))))
(+.f64 (*.f64 (pow.f64 x 2) -1/2) (+.f64 2 (*.f64 3/8 (pow.f64 x 4))))
(+.f64 (*.f64 -5/16 (pow.f64 x 6)) (+.f64 2 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 3/8 (pow.f64 x 4)))))
(+.f64 2 (+.f64 (+.f64 (*.f64 (pow.f64 x 2) -1/2) (*.f64 3/8 (pow.f64 x 4))) (*.f64 (pow.f64 x 6) -5/16)))
(+.f64 2 (+.f64 (*.f64 3/8 (pow.f64 x 4)) (+.f64 (*.f64 (pow.f64 x 2) -1/2) (*.f64 (pow.f64 x 6) -5/16))))
(+.f64 (*.f64 (pow.f64 x 2) -1/2) (+.f64 (*.f64 (pow.f64 x 6) -5/16) (+.f64 2 (*.f64 3/8 (pow.f64 x 4)))))
1
(+.f64 1 (/.f64 1 x))
(-.f64 (+.f64 1 (/.f64 1 x)) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(+.f64 1 (-.f64 (/.f64 1 x) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (+.f64 1 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5))))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(+.f64 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))) (-.f64 1 (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 1 x) (+.f64 (-.f64 (*.f64 3/8 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))) 1))
(+.f64 (-.f64 (/.f64 1 x) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))) (+.f64 1 (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))))
1
(-.f64 1 (/.f64 1 x))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))) (/.f64 1 x))
(+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (-.f64 1 (/.f64 1 x)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (/.f64 1 x)))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (-.f64 1 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5))))))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5))))))
(*.f64 (sqrt.f64 2) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (*.f64 (pow.f64 x 2) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) -1/4))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 x 2) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) -1/4)))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 x 2) (*.f64 -1/4 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2))) -1/4))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4))) (sqrt.f64 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (*.f64 (pow.f64 x 2) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) -1/4)) (*.f64 1/2 (/.f64 (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (*.f64 (pow.f64 x 4) (sqrt.f64 1/2))) (sqrt.f64 2))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (*.f64 (pow.f64 x 2) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) -1/4))))
(+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 (pow.f64 x 2) (*.f64 -1/4 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 4)) (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (sqrt.f64 2)))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2))) -1/4) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 4)) (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (sqrt.f64 2))))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4))) (sqrt.f64 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (pow.f64 x 6))) (sqrt.f64 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 2)) (sqrt.f64 2))) (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (*.f64 (pow.f64 x 4) (sqrt.f64 1/2))) (sqrt.f64 2))) (+.f64 (*.f64 (*.f64 (pow.f64 x 2) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))) -1/4) (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (*.f64 (pow.f64 x 6) (sqrt.f64 1/2))) (sqrt.f64 2))))))
(+.f64 (*.f64 (pow.f64 x 2) (*.f64 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)) -1/4)) (+.f64 (+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 6)) (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (sqrt.f64 2))))) (*.f64 1/2 (*.f64 (*.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 x 4)) (/.f64 (sqrt.f64 1/2) (sqrt.f64 2))))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (+.f64 (+.f64 (*.f64 (pow.f64 x 2) (*.f64 -1/4 (/.f64 (sqrt.f64 1/2) (sqrt.f64 2)))) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 4)) (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (sqrt.f64 2))))) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 6)) (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (sqrt.f64 2))))))
(+.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 1/2)) (+.f64 (+.f64 (*.f64 (*.f64 (sqrt.f64 1/2) (/.f64 (pow.f64 x 2) (sqrt.f64 2))) -1/4) (*.f64 1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 4)) (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (sqrt.f64 2))))) (*.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 1/2) (pow.f64 x 6)) (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (-.f64 3/8 (pow.f64 (/.f64 -1/4 (sqrt.f64 2)) 2)) (pow.f64 (sqrt.f64 2) 2))) 5/16) (sqrt.f64 2))))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (*.f64 -3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -3/16)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -3/16) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -3/16))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8))))
(+.f64 (+.f64 (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)) (+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 3/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8))))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 1 (*.f64 (pow.f64 x 2) -1/2))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 3/8 (pow.f64 x 4))))
(+.f64 1 (+.f64 (*.f64 (pow.f64 x 2) -1/2) (*.f64 3/8 (pow.f64 x 4))))
(+.f64 (*.f64 -5/16 (pow.f64 x 6)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 3/8 (pow.f64 x 4)))))
(+.f64 1 (+.f64 (+.f64 (*.f64 (pow.f64 x 2) -1/2) (*.f64 3/8 (pow.f64 x 4))) (*.f64 (pow.f64 x 6) -5/16)))
(+.f64 (+.f64 (*.f64 (pow.f64 x 2) -1/2) (*.f64 3/8 (pow.f64 x 4))) (+.f64 (*.f64 (pow.f64 x 6) -5/16) 1))
(+.f64 1 (+.f64 (*.f64 3/8 (pow.f64 x 4)) (+.f64 (*.f64 (pow.f64 x 2) -1/2) (*.f64 (pow.f64 x 6) -5/16))))
(+.f64 (*.f64 3/8 (pow.f64 x 4)) (+.f64 (+.f64 1 (*.f64 (pow.f64 x 2) -1/2)) (*.f64 (pow.f64 x 6) -5/16)))
(/.f64 1 x)
(-.f64 (/.f64 1 x) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 3/8 (/.f64 1 (pow.f64 x 5))) (-.f64 (/.f64 1 x) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (/.f64 1 x) (-.f64 (*.f64 3/8 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 5/16 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (*.f64 5/16 (/.f64 1 (pow.f64 x 7)))))
(+.f64 (/.f64 1 x) (-.f64 (*.f64 3/8 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (*.f64 5/16 (/.f64 1 (pow.f64 x 7))))))
(/.f64 -1 x)
(-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (/.f64 1 x))
(-.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))))
(-.f64 (+.f64 (*.f64 5/16 (/.f64 1 (pow.f64 x 7))) (*.f64 1/2 (/.f64 1 (pow.f64 x 3)))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (-.f64 (*.f64 5/16 (/.f64 1 (pow.f64 x 7))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 x 3))) (*.f64 5/16 (/.f64 1 (pow.f64 x 7)))) (+.f64 (/.f64 1 x) (*.f64 3/8 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 0)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 0 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)) -1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 1 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 -1 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2) 1/2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1) -1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 1/4)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))) 2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 4)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2) 2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1) -1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4) 4)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1)) -2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4)) 8)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 4))) 16)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))) 2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) -1))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(-.f64 (/.f64 1 (hypot.f64 1 x)) -1)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(-.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 0)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 1/2 (+.f64 2 (/.f64 2 (hypot.f64 1 x))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 1 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 1 (hypot.f64 1 x)) (+.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 1 (hypot.f64 1 x)) (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) 2)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (+.f64 1 (hypot.f64 1 x)) (/.f64 1 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 2 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 2 (hypot.f64 1 x)) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 2 (hypot.f64 1 x)) (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 4 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (/.f64 1/2 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 1/4)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (/.f64 2 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 1/4 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 1/4 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4) 4)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 1/4 (hypot.f64 1 x)) (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) 1/2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4) (/.f64 (/.f64 2 (hypot.f64 1 x)) 1/2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 1 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4)) (/.f64 2 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2) (/.f64 1/2 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2) 1/4)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2) (/.f64 1 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) 1/2) (/.f64 1/4 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (/.f64 (/.f64 2 (hypot.f64 1 x)) 1/2) (*.f64 (+.f64 1 (hypot.f64 1 x)) 1/4))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 1 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) 1/2)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 -1 (/.f64 (hypot.f64 1 x) (neg.f64 (+.f64 1 (hypot.f64 1 x)))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 1 (hypot.f64 1 x)) (hypot.f64 1 x))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 2 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 2 (+.f64 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 2 (/.f64 (*.f64 (hypot.f64 1 x) -2) (neg.f64 (+.f64 1 (hypot.f64 1 x)))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 4 (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 4 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 2)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (*.f64 (hypot.f64 1 x) 2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 8 (+.f64 (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 4 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 8 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 4)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (*.f64 1/2 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 (hypot.f64 1 x) 4))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4)) 8)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/4) 1/4)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (neg.f64 (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4)) (*.f64 2 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4))) 16)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 (hypot.f64 1 x) -2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 1/2) (*.f64 (hypot.f64 1 x) 2))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (/.f64 (+.f64 2 (/.f64 2 (hypot.f64 1 x))) 1/2) 4)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (/.f64 (*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 4) 1/2) 8)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) 1/2) (hypot.f64 1 x))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (hypot.f64 1 x)) 4)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x)) -1)
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (hypot.f64 1 x) 2)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (hypot.f64 1 x))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 (+.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (/.f64 (hypot.f64 1 x) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(neg.f64 (/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x)))
(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
(+.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 0)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(+.f64 0 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(-.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 0)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 1)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 2 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2) 1/2)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 4 (/.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 1/4)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))) 2)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 4)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 1)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 2) 2)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4) 4)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4)) 8)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))) 4))) 16)
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(+.f64 (/.f64 1 (hypot.f64 1 x)) 0)
(/.f64 1 (hypot.f64 1 x))
(+.f64 0 (/.f64 1 (hypot.f64 1 x)))
(/.f64 1 (hypot.f64 1 x))
(+.f64 (/.f64 1/2 (hypot.f64 1 x)) (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 1 (hypot.f64 1 x))
(-.f64 (/.f64 1 (hypot.f64 1 x)) 0)
(/.f64 1 (hypot.f64 1 x))
(*.f64 1 (/.f64 1 (hypot.f64 1 x)))
(/.f64 1 (hypot.f64 1 x))
(*.f64 1/2 (/.f64 2 (hypot.f64 1 x)))
(*.f64 (hypot.f64 1 x) (/.f64 1 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (/.f64 1 (hypot.f64 1 x)) 1)
(/.f64 1 (hypot.f64 1 x))
(*.f64 2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (*.f64 2 (hypot.f64 1 x)) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (hypot.f64 1 x) (*.f64 2 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 2 (*.f64 (hypot.f64 1 x) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 2))))
(*.f64 (*.f64 2 (hypot.f64 1 x)) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (hypot.f64 1 x) (*.f64 2 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 2 (*.f64 (hypot.f64 1 x) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (/.f64 2 (hypot.f64 1 x)) 1/2)
(*.f64 1/2 (/.f64 2 (hypot.f64 1 x)))
(*.f64 4 (/.f64 1/4 (hypot.f64 1 x)))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 1 x)) 4) 1/4)
(/.f64 1 (hypot.f64 1 x))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) 2)
(*.f64 2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 1/4 (*.f64 (/.f64 1 (hypot.f64 1 x)) 4))
(/.f64 1 (hypot.f64 1 x))
(*.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (hypot.f64 1 x))
(*.f64 (hypot.f64 1 x) (/.f64 1 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (/.f64 (/.f64 2 (hypot.f64 1 x)) (hypot.f64 1 x)) (*.f64 1/2 (hypot.f64 1 x)))
(*.f64 (*.f64 1/2 (hypot.f64 1 x)) (/.f64 2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (hypot.f64 1 x) (*.f64 (/.f64 2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) 1/2))
(*.f64 (hypot.f64 1 x) (*.f64 1/2 (/.f64 2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (/.f64 1/4 (hypot.f64 1 x)) 4)
(*.f64 4 (/.f64 1/4 (hypot.f64 1 x)))
(*.f64 (*.f64 1/2 (hypot.f64 1 x)) (/.f64 (/.f64 2 (hypot.f64 1 x)) (hypot.f64 1 x)))
(*.f64 (*.f64 1/2 (hypot.f64 1 x)) (/.f64 2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (hypot.f64 1 x) (*.f64 (/.f64 2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) 1/2))
(*.f64 (hypot.f64 1 x) (*.f64 1/2 (/.f64 2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (*.f64 (hypot.f64 1 x) 2))
(*.f64 (*.f64 2 (hypot.f64 1 x)) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (hypot.f64 1 x) (*.f64 2 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 2 (*.f64 (hypot.f64 1 x) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 2))) (*.f64 (hypot.f64 1 x) 2))
(*.f64 (*.f64 2 (hypot.f64 1 x)) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (hypot.f64 1 x) (*.f64 2 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 2 (*.f64 (hypot.f64 1 x) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(neg.f64 (/.f64 -1 (hypot.f64 1 x)))
(/.f64 1 (hypot.f64 1 x))

eval330.0ms (3.7%)

Compiler

Compiled 5880 to 5374 computations (8.6% saved)

prune74.0ms (0.8%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New2645269
Fresh000
Picked101
Done000
Total2655270
Error
14.0b
Counts
270 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
31.7b
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
31.8b
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x)))))
45.8b
(-.f64 1 (sqrt.f64 (*.f64 1/2 2)))
30.9b
(-.f64 1 (sqrt.f64 1/2))
Compiler

Compiled 90 to 84 computations (6.7% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1/2 (hypot.f64 1 x))
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
0.0b
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
2.1b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Compiler

Compiled 37 to 31 computations (16.2% saved)

series3.0ms (0%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@0
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
1.0ms
x
@inf
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
0.0ms
x
@-inf
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
0.0ms
x
@inf
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
0.0ms
x
@-inf
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))

rewrite85.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1386×rational.json-simplify-35
1252×bool.json-1
1252×bool.json-2
1212×rational.json-1
1212×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01184
111784
233484
370884
4148784
5387284
Stop Event
node limit
Counts
4 → 127
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 1/2 (hypot.f64 1 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (hypot.f64 1 x)) (/.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 1 x)) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (/.f64 1/4 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (/.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 (hypot.f64 1 x)) (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (+.f64 (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 4 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (*.f64 (hypot.f64 1 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (+.f64 (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 8 (+.f64 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 (hypot.f64 1 x) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 16 (+.f64 (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/4 (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (/.f64 (hypot.f64 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4)) (*.f64 2 (*.f64 (hypot.f64 1 x) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 2 (/.f64 (hypot.f64 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (hypot.f64 1 x) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 (hypot.f64 1 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 4) (/.f64 (+.f64 1 (hypot.f64 1 x)) 4)) (hypot.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x))))) (*.f64 2 (*.f64 2 (/.f64 (hypot.f64 1 x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x)) (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8)) (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))) (*.f64 2 (neg.f64 (*.f64 (hypot.f64 1 x) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (hypot.f64 1 x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (hypot.f64 1 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/2 (hypot.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1/4 (hypot.f64 1 x)) (/.f64 1/4 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1/2 (hypot.f64 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 1 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 1 x) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (hypot.f64 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 1/4 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (/.f64 1/2 (hypot.f64 1 x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 1 x) 4) (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 1 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1/2 (hypot.f64 1 x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (/.f64 1/2 (hypot.f64 1 x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 (hypot.f64 1 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (*.f64 (hypot.f64 1 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (hypot.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1/2 (hypot.f64 1 x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))) (*.f64 (hypot.f64 1 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 -1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (/.f64 1/2 (hypot.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x and (/.f64 1/2 (hypot.f64 1 x)) (/.f64 1/2 (hypot.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x or (/.f64 1/2 (hypot.f64 1 x)) (/.f64 1/2 (hypot.f64 1 x)))))))

simplify182.0ms (2%)

Algorithm
egg-herbie
Rules
1318×rational.json-simplify-51
1218×rational.json-simplify-35
1060×rational.json-simplify-2
990×rational.json-simplify-1
972×rational.json-simplify-44
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03515035
17865023
219945023
354365023
Stop Event
node limit
Counts
175 → 271
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))) (sqrt.f64 1/2))
1
(+.f64 1 (*.f64 -1/4 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (*.f64 3/16 (pow.f64 x 4))))
(+.f64 1 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (+.f64 (*.f64 -5/32 (pow.f64 x 6)) (*.f64 3/16 (pow.f64 x 4)))))
1/2
(+.f64 1/2 (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) 1/2) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 1/2 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
1/2
(-.f64 1/2 (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))))
1
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) 1)
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (*.f64 11/128 (pow.f64 x 4))))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 -69/1024 (pow.f64 x 6)) (+.f64 1 (*.f64 11/128 (pow.f64 x 4)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(sqrt.f64 1/2)
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
1/2
(+.f64 1/2 (*.f64 -1/4 (pow.f64 x 2)))
(+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (*.f64 3/16 (pow.f64 x 4))))
(+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (+.f64 (*.f64 -5/32 (pow.f64 x 6)) (*.f64 3/16 (pow.f64 x 4)))))
(/.f64 1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 5/32 (/.f64 1 (pow.f64 x 7)))))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 5/32 (/.f64 1 (pow.f64 x 7)))) (+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 0)
(+.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(+.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)) -1)
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(*.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2))
(*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 1)
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2) 1/2)
(*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1) -1)
(*.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 1/4)
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) 2)
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 4)
(/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2) 2)
(/.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1) -1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 4)
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))) 16)
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) 2)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4)))) 32)
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)))) 4)
(neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))
(-.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 0)
(*.f64 1 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))
(*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 1)
(*.f64 (+.f64 1 (hypot.f64 1 x)) (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 2 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))))
(*.f64 4 (/.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))
(*.f64 (/.f64 1 (hypot.f64 1 x)) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))
(*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/2)
(*.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (/.f64 1/4 (hypot.f64 1 x)))
(*.f64 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 1/4)
(*.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (/.f64 1 (hypot.f64 1 x)))
(*.f64 1/4 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))
(*.f64 (/.f64 1/4 (hypot.f64 1 x)) (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))
(*.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) 2)
(*.f64 (/.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 4)
(/.f64 1 (/.f64 1 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 1/2 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(/.f64 1/2 (+.f64 (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))))
(/.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 1)
(/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 2))
(/.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 4 (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(/.f64 4 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))))
(/.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 2)
(/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (*.f64 (hypot.f64 1 x) 4))
(/.f64 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 4)
(/.f64 8 (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x))))
(/.f64 8 (+.f64 (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(/.f64 8 (+.f64 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x)))))
(/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 (hypot.f64 1 x) 8))
(/.f64 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4)) 8)
(/.f64 16 (+.f64 (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x)))))
(/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x))
(/.f64 1/4 (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x))))
(/.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) 1/2)
(/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (/.f64 (hypot.f64 1 x) -1/2))
(/.f64 (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4)) (*.f64 2 (*.f64 (hypot.f64 1 x) 8)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))) 16)
(/.f64 (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 2 (/.f64 (hypot.f64 1 x) -1/2)))
(/.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x)) 4)
(/.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 1/2 (hypot.f64 1 x)))
(/.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8)) 1/4)
(/.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (hypot.f64 1 x) 4)))
(/.f64 (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (hypot.f64 1 x)))
(/.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 (hypot.f64 1 x) 2))
(/.f64 (+.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 4) (/.f64 (+.f64 1 (hypot.f64 1 x)) 4)) (hypot.f64 1 x))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4)))) 32)
(/.f64 (+.f64 (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x))))) (*.f64 2 (*.f64 2 (/.f64 (hypot.f64 1 x) -1/2))))
(/.f64 (+.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x)) (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x))) 8)
(/.f64 (+.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8)) (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8))) 1/2)
(/.f64 (+.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))) (*.f64 2 (neg.f64 (*.f64 (hypot.f64 1 x) 4))))
(/.f64 (+.f64 (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (hypot.f64 1 x) -2))
(/.f64 (+.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (hypot.f64 1 x) 4))
(+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 0)
(+.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(-.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 0)
(*.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2))
(*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 1)
(*.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2) 1/2)
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))
(*.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2)
(*.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 4)
(/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4)))) 32)
(+.f64 (/.f64 1/2 (hypot.f64 1 x)) 0)
(+.f64 0 (/.f64 1/2 (hypot.f64 1 x)))
(+.f64 (/.f64 1/4 (hypot.f64 1 x)) (/.f64 1/4 (hypot.f64 1 x)))
(-.f64 (/.f64 1/2 (hypot.f64 1 x)) 0)
(*.f64 1 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 1/2 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (hypot.f64 1 x) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) 1)
(*.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 2 (/.f64 1/4 (hypot.f64 1 x)))
(*.f64 4 (/.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))))
(*.f64 4 (/.f64 (/.f64 1/2 (hypot.f64 1 x)) 4))
(*.f64 (*.f64 (hypot.f64 1 x) 4) (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))))
(*.f64 (/.f64 1 (hypot.f64 1 x)) 1/2)
(*.f64 (*.f64 (/.f64 1/2 (hypot.f64 1 x)) 4) 1/4)
(*.f64 1/4 (*.f64 (/.f64 1/2 (hypot.f64 1 x)) 4))
(*.f64 (/.f64 1/4 (hypot.f64 1 x)) 2)
(*.f64 (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (*.f64 (hypot.f64 1 x) 2))
(*.f64 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (hypot.f64 1 x))
(*.f64 (/.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))) 4)
(*.f64 (/.f64 (/.f64 1/2 (hypot.f64 1 x)) 4) 4)
(*.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))) (*.f64 (hypot.f64 1 x) 4))
(neg.f64 (/.f64 -1/2 (hypot.f64 1 x)))
Outputs
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6))))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 1/8 (pow.f64 x 2))))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 69/1024 (pow.f64 x 6))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (*.f64 -11/128 (pow.f64 x 4)))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 -1843/32768 (pow.f64 x 8)))))
(+.f64 (*.f64 -1843/32768 (pow.f64 x 8)) (+.f64 (*.f64 -11/128 (pow.f64 x 4)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 1/8 (pow.f64 x 2)))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 -11/128 (pow.f64 x 4)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -1843/32768 (pow.f64 x 8)))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2))))))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x))))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))) (-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 (+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))))))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)))) (+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2))))))))
(+.f64 1 (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (-.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2)))))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 1 (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3))))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3))))))
(+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (sqrt.f64 1/2))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))) (sqrt.f64 1/2))
(-.f64 (+.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (sqrt.f64 1/2))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))))))
(+.f64 1 (+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (sqrt.f64 1/2))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))
1
(+.f64 1 (*.f64 -1/4 (pow.f64 x 2)))
(+.f64 1 (*.f64 (pow.f64 x 2) -1/4))
(+.f64 1 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (*.f64 3/16 (pow.f64 x 4))))
(+.f64 1 (+.f64 (*.f64 (pow.f64 x 2) -1/4) (*.f64 (pow.f64 x 4) 3/16)))
(+.f64 (*.f64 (pow.f64 x 2) -1/4) (+.f64 1 (*.f64 (pow.f64 x 4) 3/16)))
(+.f64 (+.f64 1 (*.f64 (pow.f64 x 2) -1/4)) (*.f64 (pow.f64 x 4) 3/16))
(+.f64 1 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (+.f64 (*.f64 -5/32 (pow.f64 x 6)) (*.f64 3/16 (pow.f64 x 4)))))
(+.f64 1 (+.f64 (*.f64 (pow.f64 x 2) -1/4) (+.f64 (*.f64 (pow.f64 x 4) 3/16) (*.f64 (pow.f64 x 6) -5/32))))
(+.f64 (*.f64 (pow.f64 x 6) -5/32) (+.f64 (*.f64 (pow.f64 x 2) -1/4) (+.f64 1 (*.f64 (pow.f64 x 4) 3/16))))
(+.f64 (*.f64 (pow.f64 x 2) -1/4) (+.f64 (*.f64 (pow.f64 x 4) 3/16) (+.f64 1 (*.f64 (pow.f64 x 6) -5/32))))
(+.f64 (*.f64 (pow.f64 x 2) -1/4) (+.f64 1 (+.f64 (*.f64 (pow.f64 x 4) 3/16) (*.f64 (pow.f64 x 6) -5/32))))
1/2
(+.f64 1/2 (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) 1/2) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(+.f64 1/2 (-.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (-.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 1/2 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(+.f64 (+.f64 1/2 (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))) (-.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (-.f64 (+.f64 1/2 (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))))
(+.f64 1/2 (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))))
(+.f64 1/2 (+.f64 (*.f64 1/2 (/.f64 1 x)) (-.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))))
1/2
(-.f64 1/2 (*.f64 1/2 (/.f64 1 x)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (-.f64 1/2 (*.f64 1/2 (/.f64 1 x))))
(+.f64 1/2 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x))))
(-.f64 (+.f64 1/2 (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))))
(+.f64 1/2 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5))))))
1
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) 1)
(+.f64 1 (*.f64 (pow.f64 x 2) -1/8))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 1 (*.f64 11/128 (pow.f64 x 4))))
(+.f64 1 (+.f64 (*.f64 (pow.f64 x 4) 11/128) (*.f64 (pow.f64 x 2) -1/8)))
(+.f64 (*.f64 (pow.f64 x 4) 11/128) (+.f64 1 (*.f64 (pow.f64 x 2) -1/8)))
(+.f64 1 (+.f64 (*.f64 (pow.f64 x 2) -1/8) (*.f64 (pow.f64 x 4) 11/128)))
(+.f64 (*.f64 -1/8 (pow.f64 x 2)) (+.f64 (*.f64 -69/1024 (pow.f64 x 6)) (+.f64 1 (*.f64 11/128 (pow.f64 x 4)))))
(+.f64 (*.f64 (pow.f64 x 2) -1/8) (+.f64 (+.f64 1 (*.f64 (pow.f64 x 4) 11/128)) (*.f64 (pow.f64 x 6) -69/1024)))
(+.f64 1 (+.f64 (+.f64 (*.f64 (pow.f64 x 4) 11/128) (*.f64 (pow.f64 x 6) -69/1024)) (*.f64 (pow.f64 x 2) -1/8)))
(+.f64 1 (+.f64 (*.f64 (pow.f64 x 2) -1/8) (+.f64 (*.f64 (pow.f64 x 4) 11/128) (*.f64 (pow.f64 x 6) -69/1024))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (-.f64 (sqrt.f64 1/2) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3))))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3))))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(-.f64 (+.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2))))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))))))
(sqrt.f64 1/2)
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))))
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)))
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 x 2) (pow.f64 (sqrt.f64 1/2) 3)))))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 x (sqrt.f64 1/2)))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 4))) 1/4) (*.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))))))
1/2
(+.f64 1/2 (*.f64 -1/4 (pow.f64 x 2)))
(+.f64 1/2 (*.f64 (pow.f64 x 2) -1/4))
(+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (*.f64 3/16 (pow.f64 x 4))))
(+.f64 1/2 (+.f64 (*.f64 (pow.f64 x 2) -1/4) (*.f64 (pow.f64 x 4) 3/16)))
(+.f64 (*.f64 (pow.f64 x 4) 3/16) (+.f64 1/2 (*.f64 (pow.f64 x 2) -1/4)))
(+.f64 1/2 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (+.f64 (*.f64 -5/32 (pow.f64 x 6)) (*.f64 3/16 (pow.f64 x 4)))))
(+.f64 1/2 (+.f64 (*.f64 (pow.f64 x 2) -1/4) (+.f64 (*.f64 (pow.f64 x 4) 3/16) (*.f64 (pow.f64 x 6) -5/32))))
(+.f64 (+.f64 (*.f64 (pow.f64 x 4) 3/16) (*.f64 (pow.f64 x 6) -5/32)) (+.f64 1/2 (*.f64 (pow.f64 x 2) -1/4)))
(+.f64 (*.f64 (pow.f64 x 4) 3/16) (+.f64 1/2 (+.f64 (*.f64 (pow.f64 x 2) -1/4) (*.f64 (pow.f64 x 6) -5/32))))
(/.f64 1/2 x)
(-.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (-.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))))
(+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (-.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/4 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 5/32 (/.f64 1 (pow.f64 x 7)))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (-.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 5/32 (/.f64 1 (pow.f64 x 7))))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 5/32 (/.f64 1 (pow.f64 x 7)))))
(/.f64 -1/2 x)
(-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5)))))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (*.f64 5/32 (/.f64 1 (pow.f64 x 7)))) (+.f64 (*.f64 3/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 5/32 (/.f64 1 (pow.f64 x 7))) (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5))))))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 3))) (-.f64 (*.f64 5/32 (/.f64 1 (pow.f64 x 7))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 3/16 (/.f64 1 (pow.f64 x 5))))))
(+.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 0)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2) 1/2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 1/4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)) -2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4)) 8)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) -4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))) 16)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 4)))) 32)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1)))) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) -1))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(-.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 0)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 1 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 1)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (+.f64 1 (hypot.f64 1 x)) (/.f64 1/2 (hypot.f64 1 x)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 2 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 4 (/.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (/.f64 1 (hypot.f64 1 x)) (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 1/2)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (/.f64 1/4 (hypot.f64 1 x)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 1/4)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (/.f64 1 (hypot.f64 1 x)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 1/4 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (/.f64 1/4 (hypot.f64 1 x)) (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) 2)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(*.f64 (/.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 4)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 1 (/.f64 1 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 1/2 (/.f64 1 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 1/2 (+.f64 (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x)))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 1)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 2))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 4 (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 4 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 1 (/.f64 1 (hypot.f64 1 x))) 2)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (*.f64 (hypot.f64 1 x) 4))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4) 4)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 8 (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 8 (+.f64 (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) (*.f64 2 (/.f64 2 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 8 (+.f64 (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 (hypot.f64 1 x) 8) (+.f64 1 (hypot.f64 1 x)))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 (hypot.f64 1 x) 8))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4)) 8)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 16 (+.f64 (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x))) (/.f64 (*.f64 2 (*.f64 (hypot.f64 1 x) 8)) (+.f64 1 (hypot.f64 1 x)))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))) (hypot.f64 1 x))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 1/4 (/.f64 (*.f64 1/2 (hypot.f64 1 x)) (+.f64 1 (hypot.f64 1 x))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 1/4 (/.f64 1/4 (hypot.f64 1 x))) 1/2)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))) (/.f64 (hypot.f64 1 x) -1/2))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 (+.f64 1 (hypot.f64 1 x)) 4)) (*.f64 2 (*.f64 (hypot.f64 1 x) 8)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))) 16)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 2 (/.f64 (hypot.f64 1 x) -1/2)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x)) 4)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 4) (*.f64 1/2 (hypot.f64 1 x)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8)) 1/4)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (hypot.f64 1 x) 4)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (hypot.f64 1 x)))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 (hypot.f64 1 x) 2))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) 4) (/.f64 (+.f64 1 (hypot.f64 1 x)) 4)) (hypot.f64 1 x))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))) 4)))) 32)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (*.f64 2 (neg.f64 (+.f64 1 (hypot.f64 1 x))))) (*.f64 2 (*.f64 2 (/.f64 (hypot.f64 1 x) -1/2))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x)) (/.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2) (hypot.f64 1 x))) 8)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8)) (/.f64 (+.f64 1 (hypot.f64 1 x)) (*.f64 (hypot.f64 1 x) 8))) 1/2)
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2)) (neg.f64 (*.f64 (+.f64 1 (hypot.f64 1 x)) 2))) (*.f64 2 (neg.f64 (*.f64 (hypot.f64 1 x) 4))))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (*.f64 1/2 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (hypot.f64 1 x) -2))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 (+.f64 (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x)))) (neg.f64 (neg.f64 (+.f64 1 (hypot.f64 1 x))))) (*.f64 (hypot.f64 1 x) 4))
(+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))
(+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 0)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(+.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(-.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 0)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 1)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2) 1/2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 1/4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))) 2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(*.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 1)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 2) 2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4) 4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4)) 8)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))) 16)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))) 4)))) 32)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))
(+.f64 (/.f64 1/2 (hypot.f64 1 x)) 0)
(/.f64 1/2 (hypot.f64 1 x))
(+.f64 0 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 1/2 (hypot.f64 1 x))
(+.f64 (/.f64 1/4 (hypot.f64 1 x)) (/.f64 1/4 (hypot.f64 1 x)))
(-.f64 (/.f64 1/2 (hypot.f64 1 x)) 0)
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 1 (/.f64 1/2 (hypot.f64 1 x)))
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 1/2 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (hypot.f64 1 x) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (/.f64 1/2 (hypot.f64 1 x)) 1)
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 (*.f64 (hypot.f64 1 x) 2) (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (*.f64 2 (hypot.f64 1 x)) (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 2 (*.f64 (/.f64 (/.f64 1/4 (hypot.f64 1 x)) (hypot.f64 1 x)) (hypot.f64 1 x)))
(*.f64 2 (*.f64 (hypot.f64 1 x) (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (hypot.f64 1 x) (*.f64 2 (/.f64 (/.f64 1/4 (hypot.f64 1 x)) (hypot.f64 1 x))))
(*.f64 2 (/.f64 1/4 (hypot.f64 1 x)))
(*.f64 4 (/.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))))
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 4 (/.f64 (/.f64 1/2 (hypot.f64 1 x)) 4))
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 (*.f64 (hypot.f64 1 x) 4) (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))))
(*.f64 (*.f64 4 (hypot.f64 1 x)) (/.f64 (/.f64 1 (hypot.f64 1 x)) (*.f64 8 (hypot.f64 1 x))))
(*.f64 (*.f64 4 (hypot.f64 1 x)) (/.f64 (/.f64 1/8 (hypot.f64 1 x)) (hypot.f64 1 x)))
(*.f64 4 (*.f64 (hypot.f64 1 x) (/.f64 1/8 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (hypot.f64 1 x) (*.f64 4 (/.f64 (/.f64 1/8 (hypot.f64 1 x)) (hypot.f64 1 x))))
(*.f64 (/.f64 1 (hypot.f64 1 x)) 1/2)
(*.f64 1/2 (/.f64 1 (hypot.f64 1 x)))
(*.f64 (*.f64 (/.f64 1/2 (hypot.f64 1 x)) 4) 1/4)
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 1/4 (*.f64 (/.f64 1/2 (hypot.f64 1 x)) 4))
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 (/.f64 1/4 (hypot.f64 1 x)) 2)
(*.f64 2 (/.f64 1/4 (hypot.f64 1 x)))
(*.f64 (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (*.f64 (hypot.f64 1 x) 2))
(*.f64 (*.f64 2 (hypot.f64 1 x)) (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 2 (*.f64 (/.f64 (/.f64 1/4 (hypot.f64 1 x)) (hypot.f64 1 x)) (hypot.f64 1 x)))
(*.f64 2 (*.f64 (hypot.f64 1 x) (/.f64 1/4 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (hypot.f64 1 x) (*.f64 2 (/.f64 (/.f64 1/4 (hypot.f64 1 x)) (hypot.f64 1 x))))
(*.f64 (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))) (hypot.f64 1 x))
(*.f64 (hypot.f64 1 x) (/.f64 1/2 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x))))
(*.f64 (/.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))) 4)
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 (/.f64 (/.f64 1/2 (hypot.f64 1 x)) 4) 4)
(/.f64 1/2 (hypot.f64 1 x))
(*.f64 (/.f64 1 (*.f64 (hypot.f64 1 x) (*.f64 (hypot.f64 1 x) 8))) (*.f64 (hypot.f64 1 x) 4))
(*.f64 (*.f64 4 (hypot.f64 1 x)) (/.f64 (/.f64 1 (hypot.f64 1 x)) (*.f64 8 (hypot.f64 1 x))))
(*.f64 (*.f64 4 (hypot.f64 1 x)) (/.f64 (/.f64 1/8 (hypot.f64 1 x)) (hypot.f64 1 x)))
(*.f64 4 (*.f64 (hypot.f64 1 x) (/.f64 1/8 (*.f64 (hypot.f64 1 x) (hypot.f64 1 x)))))
(*.f64 (hypot.f64 1 x) (*.f64 4 (/.f64 (/.f64 1/8 (hypot.f64 1 x)) (hypot.f64 1 x))))
(neg.f64 (/.f64 -1/2 (hypot.f64 1 x)))
(/.f64 1/2 (hypot.f64 1 x))

localize4.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.0b
(-.f64 1 (sqrt.f64 1/2))
Compiler

Compiled 9 to 9 computations (0% saved)

series0.0ms (0%)

Counts
1 → 0

rewrite97.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1838×bool.json-1
1838×bool.json-2
1112×rational.json-1
1112×rational.json-2
1112×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
17511
222311
343411
482611
5174511
6414811
7731511
Stop Event
node limit
Counts
1 → 36
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (sqrt.f64 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (neg.f64 (+.f64 (sqrt.f64 1/2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (sqrt.f64 1/2) -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2) (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (-.f64 1 (+.f64 (sqrt.f64 1/2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (sqrt.f64 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 1/2) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (sqrt.f64 1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (sqrt.f64 1/2) -1)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (sqrt.f64 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 1/2) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (sqrt.f64 1/2) -1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (sqrt.f64 1/2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 1 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 1 (sqrt.f64 1/2)) (-.f64 1 (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 1 (sqrt.f64 1/2)) (-.f64 1 (sqrt.f64 1/2)))))))

simplify334.0ms (3.7%)

Algorithm
egg-herbie
Rules
2922×rational.json-simplify-52
2026×rational.json-simplify-35
1702×rational.json-simplify-1
1246×rational.json-simplify-41
1070×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
076396
1165396
2344396
3941396
42041396
53384396
63545396
73725396
83878396
94076396
104436396
116090396
126569396
136875396
147047396
157243396
167243396
Stop Event
node limit
Counts
36 → 37
Calls
Call 1
Inputs
(+.f64 (-.f64 1 (sqrt.f64 1/2)) 0)
(+.f64 0 (-.f64 1 (sqrt.f64 1/2)))
(+.f64 -1 (neg.f64 (+.f64 (sqrt.f64 1/2) -2)))
(+.f64 (neg.f64 (+.f64 (sqrt.f64 1/2) -2)) -1)
(+.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2) (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2))
(+.f64 -2 (-.f64 1 (+.f64 (sqrt.f64 1/2) -2)))
(*.f64 1 (-.f64 1 (sqrt.f64 1/2)))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2))
(*.f64 (-.f64 1 (sqrt.f64 1/2)) 1)
(*.f64 2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2))
(*.f64 4 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 1/4))
(*.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2) 1/2)
(*.f64 (+.f64 (sqrt.f64 1/2) -1) -1)
(*.f64 -1 (+.f64 (sqrt.f64 1/2) -1))
(*.f64 -1 (*.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 1/2) 2))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4) 1/4)
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8) 1/8)
(*.f64 (*.f64 2 (+.f64 (sqrt.f64 1/2) -1)) -1/2)
(*.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2) 2)
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4))
(*.f64 -2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 1/2))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 1/4) 4)
(/.f64 (-.f64 1 (sqrt.f64 1/2)) 1)
(/.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2) 2)
(/.f64 (+.f64 (sqrt.f64 1/2) -1) -1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4) 4)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8) 8)
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 1/2) -1)) -2)
(/.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4) -4)
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8))) 32)
(/.f64 (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) 4)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8)))) 64)
(/.f64 (+.f64 (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4))) 8)
(neg.f64 (+.f64 (sqrt.f64 1/2) -1))
Outputs
(+.f64 (-.f64 1 (sqrt.f64 1/2)) 0)
(-.f64 1 (sqrt.f64 1/2))
(+.f64 0 (-.f64 1 (sqrt.f64 1/2)))
(-.f64 1 (sqrt.f64 1/2))
(+.f64 -1 (neg.f64 (+.f64 (sqrt.f64 1/2) -2)))
(-.f64 1 (sqrt.f64 1/2))
(+.f64 (neg.f64 (+.f64 (sqrt.f64 1/2) -2)) -1)
(-.f64 1 (sqrt.f64 1/2))
(+.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2) (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2))
(-.f64 1 (sqrt.f64 1/2))
(+.f64 -2 (-.f64 1 (+.f64 (sqrt.f64 1/2) -2)))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 1 (-.f64 1 (sqrt.f64 1/2)))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 1/2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 (-.f64 1 (sqrt.f64 1/2)) 1)
(-.f64 1 (sqrt.f64 1/2))
(*.f64 2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 4 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 1/4))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2) 1/2)
(-.f64 1 (sqrt.f64 1/2))
(*.f64 (+.f64 (sqrt.f64 1/2) -1) -1)
(-.f64 1 (sqrt.f64 1/2))
(*.f64 -1 (+.f64 (sqrt.f64 1/2) -1))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 -1 (*.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 1/2) 2))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4) 1/4)
(-.f64 1 (sqrt.f64 1/2))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8) 1/8)
(-.f64 1 (sqrt.f64 1/2))
(*.f64 (*.f64 2 (+.f64 (sqrt.f64 1/2) -1)) -1/2)
(-.f64 1 (sqrt.f64 1/2))
(*.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -1/2) 2)
(-.f64 1 (sqrt.f64 1/2))
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 -2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 1/2))
(-.f64 1 (sqrt.f64 1/2))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 1/4) 4)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (-.f64 1 (sqrt.f64 1/2)) 1)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) -2) 2)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (+.f64 (sqrt.f64 1/2) -1) -1)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 4) 4)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8) 8)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 1/2) -1)) -2)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4) -4)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8)) 16)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (*.f64 2 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) -8)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8))) 32)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) 4)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 1/2)) 8)))) 64)
(-.f64 1 (sqrt.f64 1/2))
(/.f64 (+.f64 (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4)) (neg.f64 (*.f64 (+.f64 (sqrt.f64 1/2) -1) 4))) 8)
(-.f64 1 (sqrt.f64 1/2))
(neg.f64 (+.f64 (sqrt.f64 1/2) -1))
(-.f64 1 (sqrt.f64 1/2))

localize7.0ms (0.1%)

Compiler

Compiled 17 to 17 computations (0% saved)

localize16.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x))))
0.5b
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x)))))
Compiler

Compiled 37 to 31 computations (16.2% saved)

series2.0ms (0%)

Counts
2 → 16
Calls

6 calls:

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

rewrite67.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1296×bool.json-1
1296×bool.json-2
1256×rational.json-1
1256×rational.json-2
1256×rational.json-4
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01152
112052
234552
371152
4150852
5410240
Stop Event
node limit
Counts
2 → 45
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x)))))
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))))

simplify372.0ms (4.2%)

Algorithm
egg-herbie
Rules
2354×rational.json-simplify-2
2298×rational.json-simplify-35
1640×rational.json-simplify-1
1556×rational.json-simplify-52
692×rational.json-simplify-48
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01111649
12221649
25311649
312391649
424281649
531761649
634781649
738121649
842641649
946941649
1052931649
1157951649
1265591649
1367911649
1473241649
1573411649
1673421649
1773421649
Stop Event
node limit
Counts
61 → 76
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (sqrt.f64 1/2))
(-.f64 (+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (sqrt.f64 1/2))
(-.f64 (+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))))
(+.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 0)
(+.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(+.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -1)
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(*.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2))
(*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)
(*.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 1/2)
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 1/4)
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) 2)
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)
(/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 2)
(/.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)) 8)
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) 16)
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) 2)
(neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))
(+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)
(+.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(-.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)
(*.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2))
(*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)
(*.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 1/2)
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))
(*.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2)
(*.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)
(/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) 16)
Outputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 1 (-.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 1 (-.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (sqrt.f64 1/2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (sqrt.f64 1/2))))
(-.f64 (+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(+.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (-.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (-.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (sqrt.f64 1/2))))
(+.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (sqrt.f64 1/2)))) (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))
(+.f64 1 (+.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (-.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (-.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (sqrt.f64 1/2)))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 1 (-.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 1 (-.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (sqrt.f64 1/2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (sqrt.f64 1/2))))
(-.f64 (+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(+.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))) (-.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (sqrt.f64 1/2)))
(+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 1 (-.f64 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (sqrt.f64 1/2))))
(+.f64 (+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (sqrt.f64 1/2)))) (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))
(+.f64 1 (+.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (-.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (-.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (sqrt.f64 1/2)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (sqrt.f64 1/2) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16))))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (sqrt.f64 1/2) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (+.f64 (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16))))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) 1/16))))
(+.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 0)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 1/2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 1/4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)) 8)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) 16)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(+.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(-.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 1/2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 1/4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)) 8)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) 16)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))

localize15.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
0.5b
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
Compiler

Compiled 37 to 31 computations (16.2% saved)

series1.0ms (0%)

Counts
2 → 16
Calls

6 calls:

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

rewrite102.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
2048×bool.json-1
1118×rational.json-simplify-35
1024×bool.json-2
986×rational.json-1
986×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01152
111552
232152
366652
4134752
5327052
6795552
Stop Event
node limit
Counts
2 → 49
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) 4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))))

simplify345.0ms (3.8%)

Algorithm
egg-herbie
Rules
2398×rational.json-simplify-2
1908×rational.json-simplify-35
1832×rational.json-simplify-1
1316×rational.json-simplify-52
662×rational.json-simplify-26
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222029
12432029
26052029
316132029
427742029
535152029
637302029
739822029
842662029
945852029
1053852029
1160562029
1267642029
1373372029
1473782029
1573782029
Stop Event
node limit
Counts
65 → 77
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))) (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))) (sqrt.f64 1/2))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(+.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 0)
(+.f64 0 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))
(+.f64 -1 (neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -2)))
(+.f64 (neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -2)) -1)
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))
(*.f64 1 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2))
(*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 1)
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2) 1/2)
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4))
(*.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) -1)
(*.f64 -1 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 1/4)
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))) 2)
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 4)
(/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2) 2)
(/.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) -1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 4)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8) 8)
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1)) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8)) 16)
(/.f64 (*.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) 4) -4)
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))) 2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8))) 32)
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1)))) 4)
(neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))
(+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 0)
(+.f64 0 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))
(-.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 0)
(*.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2))
(*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 1)
(*.f64 2 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))
(*.f64 4 (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2) 1/2)
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4))
(*.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2)
(*.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 4)
(/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 1)
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 4)
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8))) 32)
Outputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2))))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 1 (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (sqrt.f64 1/2))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 1 (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 1 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (sqrt.f64 1/2))))
(+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))))))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (-.f64 1 (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 1/2 (/.f64 (sqrt.f64 1/2) x)) (-.f64 (+.f64 (*.f64 1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))) (*.f64 1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)))) (sqrt.f64 1/2))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (sqrt.f64 1/2)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(+.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -1/16)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -1/16)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -1/16))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)))
(+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (sqrt.f64 1/2)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)))
(+.f64 (*.f64 -1/16 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/2 (/.f64 (sqrt.f64 1/2) x)) (*.f64 -1/8 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2))))))
(+.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -1/16)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (+.f64 (+.f64 (sqrt.f64 1/2) (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2)) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -1/16)))
(+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) x) -1/2) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 2)) -1/8) (*.f64 (/.f64 (sqrt.f64 1/2) (pow.f64 x 3)) -1/16))))
(+.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 0)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(+.f64 0 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(+.f64 -1 (neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -2)))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(+.f64 (neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -2)) -1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 1 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2) 1/2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) -1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 -1 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 1/4)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))) 2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 4)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2) 2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) -1)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 4) 4)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8) 8)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1)) -2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8)) 16)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (*.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1) 4) -4)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))) 2)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 8))) 32)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1)))) 4)
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(neg.f64 (+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) -1))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(+.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 0)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(+.f64 0 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(+.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(-.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 0)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 1/2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2))
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 1)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 2 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))))
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 4 (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4))
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2) 1/2)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 1/4)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4))
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 (*.f64 1/2 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))) 2)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 4)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(/.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 1)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 2) 2)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 4) 4)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(/.f64 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8) 8)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8)) 16)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))) 8))) 32)
(sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x))))

eval180.0ms (2%)

Compiler

Compiled 8129 to 7386 computations (9.1% saved)

prune173.0ms (1.9%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New4556461
Fresh000
Picked101
Done224
Total4588466
Error
0.5b
Counts
466 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
31.8b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
31.7b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
45.8b
(-.f64 1 (sqrt.f64 1))
30.9b
(-.f64 1 (sqrt.f64 1/2))
32.5b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
32.8b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
32.2b
(*.f64 1/8 (pow.f64 x 2))
Compiler

Compiled 134 to 117 computations (12.7% saved)

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
0.5b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
Compiler

Compiled 27 to 22 computations (18.5% saved)

series2.0ms (0%)

Counts
2 → 16
Calls

6 calls:

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

rewrite66.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
1200×rational.json-simplify-35
1098×bool.json-1
1098×bool.json-2
1058×rational.json-1
1058×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01140
111640
232940
367840
4144540
5343640
Stop Event
node limit
Counts
2 → 49
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) 4) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))))

simplify185.0ms (2.1%)

Algorithm
egg-herbie
Rules
2028×rational.json-simplify-35
1158×rational.json-simplify-54
1104×rational.json-simplify-2
998×rational.json-simplify-1
766×rational.json-simplify-46
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01211951
12431951
26171951
316681951
428941951
537551951
641221951
747221951
864651951
Stop Event
node limit
Counts
65 → 85
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))) (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))) (sqrt.f64 1/2))
(sqrt.f64 1/2)
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))))
(sqrt.f64 1/2)
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))))
(+.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 0)
(+.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))
(+.f64 -1 (neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -2)))
(+.f64 (neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -2)) -1)
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))
(*.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2))
(*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 1)
(*.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2) 1/2)
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) -1)
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 1/4)
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))) 2)
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 4)
(/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2) 2)
(/.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) -1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 4)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8) 8)
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1)) -2)
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) 4) -4)
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8)) 16)
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))) 2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8))) 32)
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1)))) 4)
(neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))
(+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 0)
(+.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))
(-.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 0)
(*.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2))
(*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 1)
(*.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2) 1/2)
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4))
(*.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2)
(*.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 4)
(/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 4)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8)) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8))) 32)
Outputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(+.f64 1 (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))))
(+.f64 1 (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(+.f64 1 (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (sqrt.f64 1/2))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))))))
(+.f64 1 (+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (-.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (-.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (sqrt.f64 1/2)))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 (+.f64 1 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (sqrt.f64 1/2))
(+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(+.f64 1 (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))))
(+.f64 1 (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (sqrt.f64 1/2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(+.f64 1 (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (sqrt.f64 1/2))))
(-.f64 (+.f64 1 (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))) (sqrt.f64 1/2))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))))) (-.f64 1 (sqrt.f64 1/2)))
(+.f64 (-.f64 1 (sqrt.f64 1/2)) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))))))
(+.f64 1 (+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (-.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (sqrt.f64 1/2))))
(+.f64 1 (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (-.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (sqrt.f64 1/2)))))
(+.f64 1 (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (sqrt.f64 1/2)))))
(sqrt.f64 1/2)
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))))))
(sqrt.f64 1/2)
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))
(-.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 x) (sqrt.f64 1/2))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))))))
(+.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 0)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(+.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(+.f64 -1 (neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -2)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(+.f64 (neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -2)) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2) 1/2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 1/4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 4) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8) 8)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1)) -2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1) 4) -4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8)) 16)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8)) (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 8))) 32)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1)))) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) -1))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 0)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(+.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(-.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 0)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2))
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 1)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4))
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2) 1/2)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 1/4)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4))
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) 2)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(*.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 4)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 1)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 2) 2)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 4) 4)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8) 8)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8)) 16)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8)) (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))) 8))) 32)
(sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))

localize4.0ms (0%)

Compiler

Compiled 8 to 8 computations (0% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 1/8 (pow.f64 x 2))
Compiler

Compiled 12 to 9 computations (25% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

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

rewrite88.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1570×bool.json-1
1570×bool.json-2
1514×rational.json-1
1514×rational.json-2
1514×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
16913
218713
337213
474313
5157813
6360713
7629713
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/8 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/8 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 2) 1/16) (*.f64 (pow.f64 x 2) 1/16))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/8 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 x 2) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/8 (pow.f64 x 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 x 2)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 2) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 2) 4) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 2) 1/2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 2) 8) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 8)) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 2) 8))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 1/8 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 1/8 (pow.f64 x 2)) (*.f64 1/8 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 1/8 (pow.f64 x 2)) (*.f64 1/8 (pow.f64 x 2)))))))

simplify639.0ms (7.1%)

Algorithm
egg-herbie
Rules
8130×rational.json-simplify-41
2604×rational.json-simplify-35
1356×rational.json-simplify-2
1356×rational.json-simplify-49
700×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040169
195169
2173169
3375169
4905169
52246169
62842169
72920169
82963169
92995169
103023169
113050169
123076169
133102169
143128169
153154169
163180169
173206169
183232169
193258169
203284169
214152169
224231169
234309169
244382169
254453169
264524169
274815169
284868169
294919169
304968169
314968169
325017169
335066169
345115169
355164169
Stop Event
node limit
Counts
13 → 14
Calls
Call 1
Inputs
(+.f64 (*.f64 1/8 (pow.f64 x 2)) 0)
(+.f64 0 (*.f64 1/8 (pow.f64 x 2)))
(+.f64 (*.f64 (pow.f64 x 2) 1/16) (*.f64 (pow.f64 x 2) 1/16))
(-.f64 (*.f64 1/8 (pow.f64 x 2)) 0)
(/.f64 (pow.f64 x 2) 8)
(/.f64 (*.f64 1/8 (pow.f64 x 2)) 1)
(/.f64 (*.f64 2 (pow.f64 x 2)) 16)
(/.f64 (*.f64 (pow.f64 x 2) 1/4) 2)
(/.f64 (*.f64 (pow.f64 x 2) 4) 32)
(/.f64 (*.f64 (pow.f64 x 2) 1/2) 4)
(/.f64 (*.f64 (pow.f64 x 2) 8) 64)
(/.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 8)) 128)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 2) 8))) 256)
Outputs
(+.f64 (*.f64 1/8 (pow.f64 x 2)) 0)
(*.f64 1/8 (pow.f64 x 2))
(+.f64 0 (*.f64 1/8 (pow.f64 x 2)))
(*.f64 1/8 (pow.f64 x 2))
(+.f64 (*.f64 (pow.f64 x 2) 1/16) (*.f64 (pow.f64 x 2) 1/16))
(*.f64 1/8 (pow.f64 x 2))
(-.f64 (*.f64 1/8 (pow.f64 x 2)) 0)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (pow.f64 x 2) 8)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (*.f64 1/8 (pow.f64 x 2)) 1)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (*.f64 2 (pow.f64 x 2)) 16)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (*.f64 (pow.f64 x 2) 1/4) 2)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (*.f64 (pow.f64 x 2) 4) 32)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (*.f64 (pow.f64 x 2) 1/2) 4)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (*.f64 (pow.f64 x 2) 8) 64)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (*.f64 2 (*.f64 (pow.f64 x 2) 8)) 128)
(*.f64 1/8 (pow.f64 x 2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 2) 8))) 256)
(*.f64 1/8 (pow.f64 x 2))

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
0.5b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
Compiler

Compiled 26 to 21 computations (19.2% saved)

series1.0ms (0%)

Counts
2 → 16
Calls

6 calls:

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

rewrite80.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1332×rational.json-simplify-35
1202×bool.json-1
1202×bool.json-2
1162×rational.json-1
1162×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01040
110840
231540
367140
4141040
5370340
Stop Event
node limit
Counts
2 → 49
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))))

simplify147.0ms (1.6%)

Algorithm
egg-herbie
Rules
1758×rational.json-simplify-35
1674×rational.json-simplify-38
1132×rational.json-simplify-61
1060×rational.json-simplify-2
896×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01171951
12311951
25681951
313741951
428351951
538361951
643441951
751811951
868721951
Stop Event
node limit
Counts
65 → 82
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(+.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 0)
(+.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(+.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -1)
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(*.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2))
(*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 1/2)
(*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)
(*.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 1/4)
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) 2)
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)
(/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 2)
(/.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) 16)
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) -4)
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) 2)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)))) 32)
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))) 4)
(neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))
(+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)
(+.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(-.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)
(*.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2))
(*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)
(*.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 1/2)
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))
(*.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2)
(*.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)
(/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 2)
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)))) 32)
Outputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (-.f64 1 (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 5)) (pow.f64 x 3)))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 5)) (pow.f64 x 3)))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (+.f64 (sqrt.f64 1/2) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))))
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (-.f64 1 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)))))
(-.f64 (+.f64 1 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))))
(+.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (-.f64 1 (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 5)) (pow.f64 x 3)))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 5)) (pow.f64 x 3)))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))))
(+.f64 1 (-.f64 (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))) (+.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (+.f64 (sqrt.f64 1/2) (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3))))))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 5)) (pow.f64 x 3)))) (-.f64 (sqrt.f64 1/2) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(+.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 5)) (pow.f64 x 3)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))))))
(+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))))))
(sqrt.f64 1/2)
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))
(+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3)))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))))
(+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(-.f64 (+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2)))))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 5)) (pow.f64 x 3)))) (-.f64 (sqrt.f64 1/2) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(+.f64 (sqrt.f64 1/2) (-.f64 (+.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/128 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 5)) (pow.f64 x 3)))) (*.f64 1/32 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 3) (pow.f64 x 2))))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (sqrt.f64 1/2) 3))))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))))))
(+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (-.f64 (+.f64 (sqrt.f64 1/2) (*.f64 1/4 (/.f64 1 (*.f64 (sqrt.f64 1/2) x)))) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2)))))
(+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 1/2) 5) (pow.f64 x 3)))) (+.f64 (sqrt.f64 1/2) (-.f64 (*.f64 1/4 (/.f64 (/.f64 1 (sqrt.f64 1/2)) x)) (*.f64 1/32 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 1/2) 3)) (pow.f64 x 2))))))
(+.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 0)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 0 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 -1 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 (-.f64 1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 1 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 1/2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 2 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 4 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 1/2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 -1 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 1/4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 1/4 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (*.f64 1/2 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(*.f64 (/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1) -1)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)) -2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)) 8)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) 16)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) -4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) 2)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4))) (*.f64 2 (*.f64 2 (*.f64 (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 4)))) 32)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))) (neg.f64 (*.f64 2 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1)))) 4)
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(neg.f64 (+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) -1))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(+.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(+.f64 0 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(+.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(-.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 0)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 2 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 4 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 1/2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 1/4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 1/4 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (*.f64 1/2 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))) 2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(*.f64 (/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 1)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 2) 2)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4) 4)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)) 8)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) 16)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))) 4)))) 32)
(sqrt.f64 (+.f64 1/2 (/.f64 1/2 x)))

localize32.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 -11/128 (pow.f64 x 4))
0.2b
(*.f64 1/8 (pow.f64 x 2))
17.0b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
Compiler

Compiled 33 to 26 computations (21.2% saved)

series2.0ms (0%)

Counts
2 → 3
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
0.0ms
x
@0
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
0.0ms
x
@inf
(*.f64 -11/128 (pow.f64 x 4))
0.0ms
x
@0
(*.f64 -11/128 (pow.f64 x 4))
0.0ms
x
@-inf
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))

rewrite118.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
1880×bool.json-1
1880×bool.json-2
1352×rational.json-simplify-35
1198×rational.json-1
1198×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01244
111644
227744
352844
4107944
5236044
6480644
7766244
Stop Event
node limit
Counts
2 → 32
Calls
Call 1
Inputs
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 x 2) 1/16) (*.f64 (pow.f64 x 4) -11/256)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (+.f64 (*.f64 (pow.f64 x 2) 1/2) (*.f64 (pow.f64 x 4) -11/32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (pow.f64 x 4) -11/64) (*.f64 (pow.f64 x 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -11/128 (pow.f64 x 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 4) -11/256) (*.f64 (pow.f64 x 4) -11/256))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -11/128 (pow.f64 x 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -11/128 (pow.f64 x 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 4) -11/64) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 4) -11/32) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32))))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 -11/128 (pow.f64 x 4)) (*.f64 -11/128 (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 -11/128 (pow.f64 x 4)) (*.f64 -11/128 (pow.f64 x 4)))))))

simplify257.0ms (2.9%)

Algorithm
egg-herbie
Rules
3764×rational.json-simplify-41
3214×rational.json-simplify-51
2198×rational.json-simplify-35
1640×rational.json-simplify-49
814×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
077839
1161839
2371839
3983839
41809839
52271839
62378839
72460839
82525839
92588839
102650839
112712839
122774839
132836839
142898839
152960839
163022839
173084839
183146839
194294839
Stop Event
node limit
Counts
35 → 35
Calls
Call 1
Inputs
(*.f64 1/8 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 0)
(*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1/2))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 2) 1/16) (*.f64 (pow.f64 x 4) -11/256)))
(*.f64 4 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 4))
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1)
(*.f64 1 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 1/2)
(*.f64 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 1/4)
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 2) 1/2) (*.f64 (pow.f64 x 4) -11/32)))
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 4) -11/64) (*.f64 (pow.f64 x 2) 1/4)))
(*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1/2) 2)
(*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 4) 4)
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1)
(/.f64 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 2)
(/.f64 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 4)
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8)))) 64)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) 0)
(+.f64 0 (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 (pow.f64 x 4) -11/256) (*.f64 (pow.f64 x 4) -11/256))
(-.f64 (*.f64 -11/128 (pow.f64 x 4)) 0)
(/.f64 (*.f64 -11/128 (pow.f64 x 4)) 1)
(/.f64 (*.f64 (pow.f64 x 4) -11/64) 2)
(/.f64 (*.f64 (pow.f64 x 4) -11/32) 4)
(/.f64 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32))) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32))))) 64)
Outputs
(*.f64 1/8 (pow.f64 x 2))
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 -11/128 (pow.f64 x 4))
(-.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 0)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1/2))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 2) 1/16) (*.f64 (pow.f64 x 4) -11/256)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 4 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 4))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 1 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 1/2)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 1/4)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 1/4 (+.f64 (*.f64 (pow.f64 x 2) 1/2) (*.f64 (pow.f64 x 4) -11/32)))
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 4) -11/64) (*.f64 (pow.f64 x 2) 1/4)))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1/2) 2)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 4) 4)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(/.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 1)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(/.f64 (*.f64 2 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 2)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(/.f64 (*.f64 4 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))) 4)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(/.f64 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8) 8)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8)) 16)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8))) 32)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) 8)))) 64)
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) 0)
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 0 (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 -11/128 (pow.f64 x 4))
(+.f64 (*.f64 (pow.f64 x 4) -11/256) (*.f64 (pow.f64 x 4) -11/256))
(*.f64 -11/128 (pow.f64 x 4))
(-.f64 (*.f64 -11/128 (pow.f64 x 4)) 0)
(*.f64 -11/128 (pow.f64 x 4))
(/.f64 (*.f64 -11/128 (pow.f64 x 4)) 1)
(*.f64 -11/128 (pow.f64 x 4))
(/.f64 (*.f64 (pow.f64 x 4) -11/64) 2)
(*.f64 -11/128 (pow.f64 x 4))
(/.f64 (*.f64 (pow.f64 x 4) -11/32) 4)
(*.f64 -11/128 (pow.f64 x 4))
(/.f64 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)) 8)
(*.f64 -11/128 (pow.f64 x 4))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32))) 16)
(*.f64 -11/128 (pow.f64 x 4))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)))) 32)
(*.f64 -11/128 (pow.f64 x 4))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (pow.f64 x 4) -11/32))))) 64)
(*.f64 -11/128 (pow.f64 x 4))

eval160.0ms (1.8%)

Compiler

Compiled 3890 to 3526 computations (9.4% saved)

prune31.0ms (0.3%)

Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New2300230
Fresh011
Picked011
Done066
Total2308238
Error
0.5b
Counts
238 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
31.8b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
31.7b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
45.8b
(-.f64 1 (sqrt.f64 1))
30.9b
(-.f64 1 (sqrt.f64 1/2))
32.5b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
32.8b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
32.2b
(*.f64 1/8 (pow.f64 x 2))
Compiler

Compiled 75 to 66 computations (12% saved)

localize27.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 69/1024 (pow.f64 x 6))
0.1b
(*.f64 -11/128 (pow.f64 x 4))
0.2b
(*.f64 1/8 (pow.f64 x 2))
20.3b
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
Compiler

Compiled 60 to 48 computations (20% saved)

series3.0ms (0%)

Counts
2 → 3
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@0
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
0.0ms
x
@inf
(*.f64 69/1024 (pow.f64 x 6))
0.0ms
x
@inf
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
0.0ms
x
@0
(*.f64 69/1024 (pow.f64 x 6))
0.0ms
x
@-inf
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))

rewrite110.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1896×bool.json-1
1380×rational.json-simplify-35
1276×bool.json-2
1218×rational.json-1
1218×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01244
111644
227844
353744
4109444
5237244
6485644
7771044
Stop Event
node limit
Counts
2 → 31
Calls
Call 1
Inputs
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))
(*.f64 69/1024 (pow.f64 x 6))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 (*.f64 (pow.f64 x 6) 69/2048) (*.f64 (pow.f64 x 4) -11/256)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (*.f64 (pow.f64 x 4) -11/64) (*.f64 (pow.f64 x 6) 69/512)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 69/1024 (pow.f64 x 6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 6) 69/2048) (*.f64 (pow.f64 x 6) 69/2048))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 69/1024 (pow.f64 x 6)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 69/1024 (pow.f64 x 6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 6) 69/512) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 6) 69/256) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 69/1024 (pow.f64 x 6))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 69/1024 (pow.f64 x 6)) (*.f64 69/1024 (pow.f64 x 6)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 69/1024 (pow.f64 x 6)) (*.f64 69/1024 (pow.f64 x 6)))))))

simplify218.0ms (2.4%)

Algorithm
egg-herbie
Rules
3674×rational.json-simplify-41
2888×rational.json-simplify-51
2090×rational.json-simplify-35
948×rational.json-simplify-2
566×rational.json-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
076808
1157808
2391808
31099808
42166808
52736808
62941808
73048808
83134808
93219808
103304808
113387808
123469808
133551808
143633808
153633808
Stop Event
node limit
Counts
34 → 34
Calls
Call 1
Inputs
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 6))
(*.f64 69/1024 (pow.f64 x 6))
(-.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 0)
(*.f64 4 (/.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 4))
(*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1)
(*.f64 1 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1/2))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 6) 69/2048) (*.f64 (pow.f64 x 4) -11/256)))
(*.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2) 1/2)
(*.f64 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))) 1/4)
(*.f64 1/2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 4) -11/64) (*.f64 (pow.f64 x 6) 69/512)))
(*.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1/2) 2)
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))))
(*.f64 (/.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 4) 4)
(/.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2) 2)
(/.f64 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))) 4)
(/.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8)))) 64)
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) 0)
(+.f64 0 (*.f64 69/1024 (pow.f64 x 6)))
(+.f64 (*.f64 (pow.f64 x 6) 69/2048) (*.f64 (pow.f64 x 6) 69/2048))
(-.f64 (*.f64 69/1024 (pow.f64 x 6)) 0)
(/.f64 (*.f64 69/1024 (pow.f64 x 6)) 1)
(/.f64 (*.f64 (pow.f64 x 6) 69/512) 2)
(/.f64 (*.f64 (pow.f64 x 6) 69/256) 4)
(/.f64 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8))) 32)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8)))) 64)
Outputs
(*.f64 -11/128 (pow.f64 x 4))
(*.f64 69/1024 (pow.f64 x 6))
(*.f64 69/1024 (pow.f64 x 6))
(-.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 0)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 4 (/.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 4))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 1 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1/2))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 2 (+.f64 (*.f64 (pow.f64 x 6) 69/2048) (*.f64 (pow.f64 x 4) -11/256)))
(*.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2) 1/2)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))) 1/4)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 1/2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 1/2 (+.f64 (*.f64 (pow.f64 x 4) -11/64) (*.f64 (pow.f64 x 6) 69/512)))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1/2) 2)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))))
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 (/.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 4) 4)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(/.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 1)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(/.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 2) 2)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(/.f64 (*.f64 4 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))) 4)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(/.f64 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8) 8)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8)) 16)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8))) 32)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))) 8)))) 64)
(+.f64 (*.f64 -11/128 (pow.f64 x 4)) (*.f64 69/1024 (pow.f64 x 6)))
(+.f64 (*.f64 69/1024 (pow.f64 x 6)) 0)
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 0 (*.f64 69/1024 (pow.f64 x 6)))
(*.f64 69/1024 (pow.f64 x 6))
(+.f64 (*.f64 (pow.f64 x 6) 69/2048) (*.f64 (pow.f64 x 6) 69/2048))
(*.f64 69/1024 (pow.f64 x 6))
(-.f64 (*.f64 69/1024 (pow.f64 x 6)) 0)
(*.f64 69/1024 (pow.f64 x 6))
(/.f64 (*.f64 69/1024 (pow.f64 x 6)) 1)
(*.f64 69/1024 (pow.f64 x 6))
(/.f64 (*.f64 (pow.f64 x 6) 69/512) 2)
(*.f64 69/1024 (pow.f64 x 6))
(/.f64 (*.f64 (pow.f64 x 6) 69/256) 4)
(*.f64 69/1024 (pow.f64 x 6))
(/.f64 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8) 8)
(*.f64 69/1024 (pow.f64 x 6))
(/.f64 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8)) 16)
(*.f64 69/1024 (pow.f64 x 6))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8))) 32)
(*.f64 69/1024 (pow.f64 x 6))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 69/1024 (pow.f64 x 6)) 8)))) 64)
(*.f64 69/1024 (pow.f64 x 6))

eval25.0ms (0.3%)

Compiler

Compiled 1234 to 1052 computations (14.7% saved)

prune11.0ms (0.1%)

Pruning

8 alts after pruning (0 fresh and 8 done)

PrunedKeptTotal
New59059
Fresh000
Picked011
Done077
Total59867
Error
0.5b
Counts
67 → 8
Alt Table
Click to see full alt table
StatusErrorProgram
14.2b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
31.8b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
31.7b
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
45.8b
(-.f64 1 (sqrt.f64 1))
30.9b
(-.f64 1 (sqrt.f64 1/2))
32.5b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
32.8b
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
32.2b
(*.f64 1/8 (pow.f64 x 2))
Compiler

Compiled 75 to 66 computations (12% saved)

regimes57.0ms (0.6%)

Counts
12 → 2
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1))
(*.f64 1/8 (pow.f64 x 2))
(-.f64 1 (sqrt.f64 (*.f64 1/2 2)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
Outputs
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Calls

7 calls:

19.0ms
x
11.0ms
(/.f64 1 (hypot.f64 1 x))
6.0ms
(hypot.f64 1 x)
5.0ms
(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
4.0ms
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Results
ErrorSegmentsBranch
0.5b3x
0.5b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.5b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.5b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.5b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.5b2(/.f64 1 (hypot.f64 1 x))
0.5b2(hypot.f64 1 x)
Compiler

Compiled 160 to 141 computations (11.9% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000009000141723
5.423202959157459
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes59.0ms (0.7%)

Counts
11 → 2
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1))
(*.f64 1/8 (pow.f64 x 2))
(-.f64 1 (sqrt.f64 (*.f64 1/2 2)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
Outputs
(+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Calls

7 calls:

18.0ms
x
11.0ms
(/.f64 1 (hypot.f64 1 x))
9.0ms
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
6.0ms
(hypot.f64 1 x)
4.0ms
(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
Results
ErrorSegmentsBranch
0.6b3x
0.6b2(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))))
0.6b2(sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x)))))
0.6b2(*.f64 1/2 (+.f64 1 (/.f64 1 (hypot.f64 1 x))))
0.6b2(+.f64 1 (/.f64 1 (hypot.f64 1 x)))
0.6b2(/.f64 1 (hypot.f64 1 x))
0.6b2(hypot.f64 1 x)
Compiler

Compiled 143 to 127 computations (11.2% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0000009000141723
5.423202959157459
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes25.0ms (0.3%)

Counts
9 → 2
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1))
(*.f64 1/8 (pow.f64 x 2))
(-.f64 1 (sqrt.f64 (*.f64 1/2 2)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Outputs
(*.f64 1/8 (pow.f64 x 2))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x)))))
Calls

2 calls:

18.0ms
x
5.0ms
(hypot.f64 1 x)
Results
ErrorSegmentsBranch
0.7b3x
0.7b2(hypot.f64 1 x)
Compiler

Compiled 72 to 64 computations (11.1% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
1.0000001058822416
Compiler

Compiled 17 to 15 computations (11.8% saved)

regimes18.0ms (0.2%)

Counts
8 → 3
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1))
(*.f64 1/8 (pow.f64 x 2))
(-.f64 1 (sqrt.f64 (*.f64 1/2 2)))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (+.f64 1 (/.f64 1 x)))))
(-.f64 1 (sqrt.f64 (*.f64 1/2 (-.f64 1 (/.f64 1 x)))))
Outputs
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x))))
(*.f64 1/8 (pow.f64 x 2))
(-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))
Calls

1 calls:

16.0ms
x
Results
ErrorSegmentsBranch
0.9b3x
Compiler

Compiled 58 to 52 computations (10.3% saved)

bsearch36.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
0.0013416516518188085
4272502997283.437
16.0ms
-5.3302092206792615
-0.00046017876368571135
Results
31.0ms288×body256valid
Compiler

Compiled 323 to 285 computations (11.8% saved)

regimes13.0ms (0.1%)

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

1 calls:

11.0ms
x
Results
ErrorSegmentsBranch
1.0b3x
Compiler

Compiled 30 to 27 computations (10% saved)

bsearch36.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
0.0013416516518188085
4272502997283.437
16.0ms
-5.3302092206792615
-0.00046017876368571135
Results
32.0ms288×body256valid
Compiler

Compiled 283 to 255 computations (9.9% saved)

regimes11.0ms (0.1%)

Counts
4 → 3
Calls
Call 1
Inputs
(-.f64 1 (sqrt.f64 1/2))
(-.f64 1 (sqrt.f64 1))
(*.f64 1/8 (pow.f64 x 2))
(-.f64 1 (sqrt.f64 (*.f64 1/2 2)))
Outputs
(-.f64 1 (sqrt.f64 1/2))
(*.f64 1/8 (pow.f64 x 2))
(-.f64 1 (sqrt.f64 1/2))
Calls

1 calls:

10.0ms
x
Results
ErrorSegmentsBranch
1.2b3x
Compiler

Compiled 22 to 20 computations (9.1% saved)

bsearch79.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
0.0013416516518188085
4272502997283.437
59.0ms
-5.3302092206792615
-0.00046017876368571135
Results
75.0ms288×body256valid
Compiler

Compiled 251 to 231 computations (8% saved)

regimes9.0ms (0.1%)

Accuracy

Total -47.2b remaining (-320%)

Threshold costs -47.2b (-320%)

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

1 calls:

8.0ms
x
Results
ErrorSegmentsBranch
14.7b3x
Compiler

Compiled 11 to 10 computations (9.1% saved)

bsearch139.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
40.0ms
8.715575710335696e-80
1.2964643794522185e-74
99.0ms
-2.0912232154374042e-57
-7.645891873640257e-79
Results
131.0ms304×body1024valid
3.0ms16×body512valid
Compiler

Compiled 257 to 255 computations (0.8% saved)

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067472
Stop Event
done
saturated
Calls
Call 1
Inputs
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 (hypot.f64 1 x) 1) (*.f64 1/8 (pow.f64 x 2)) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 x -5/4) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (if (<=.f64 x 5404319552844595/4503599627370496) (*.f64 1/8 (pow.f64 x 2)) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(if (<=.f64 x -5/4) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (if (<=.f64 x 3/2) (*.f64 1/8 (pow.f64 x 2)) (-.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -3/2) (-.f64 1 (sqrt.f64 1/2)) (if (<=.f64 x 3/2) (*.f64 1/8 (pow.f64 x 2)) (-.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -5736293309357913/260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128) (-.f64 1 (sqrt.f64 1/2)) (if (<=.f64 x 5736293309357913/260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128) (-.f64 1 (sqrt.f64 1)) (-.f64 1 (sqrt.f64 1/2))))
(-.f64 1 (sqrt.f64 1/2))
Outputs
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (+.f64 (*.f64 69/1024 (pow.f64 x 6)) (*.f64 -11/128 (pow.f64 x 4)))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 (hypot.f64 1 x) 2) (+.f64 (*.f64 1/8 (pow.f64 x 2)) (*.f64 -11/128 (pow.f64 x 4))) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 (hypot.f64 1 x) 1) (*.f64 1/8 (pow.f64 x 2)) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 (hypot.f64 1 x))))))
(if (<=.f64 x -5/4) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (if (<=.f64 x 5404319552844595/4503599627370496) (*.f64 1/8 (pow.f64 x 2)) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 1/2 x))))))
(if (<=.f64 x -5/4) (-.f64 1 (sqrt.f64 (+.f64 1/2 (/.f64 -1/2 x)))) (if (<=.f64 x 3/2) (*.f64 1/8 (pow.f64 x 2)) (-.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -3/2) (-.f64 1 (sqrt.f64 1/2)) (if (<=.f64 x 3/2) (*.f64 1/8 (pow.f64 x 2)) (-.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -5736293309357913/260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128) (-.f64 1 (sqrt.f64 1/2)) (if (<=.f64 x 5736293309357913/260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128) (-.f64 1 (sqrt.f64 1)) (-.f64 1 (sqrt.f64 1/2))))
(if (<=.f64 x -5736293309357913/260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128) (-.f64 1 (sqrt.f64 1/2)) (if (<=.f64 x 5736293309357913/260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128) 0 (-.f64 1 (sqrt.f64 1/2))))
(-.f64 1 (sqrt.f64 1/2))
Compiler

Compiled 185 to 159 computations (14.1% saved)

soundness299.0ms (3.3%)

Algorithm
egg-herbie
Rules
1370×rational.json-simplify-59
1370×rational.json-simplify-59
1260×rational.json-simplify-35
1260×rational.json-simplify-35
1122×rational.json-simplify-53
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03555577
18165577
222505319
349585319
03555577
18165577
222505319
349585319
Stop Event
node limit
node limit
Compiler

Compiled 394 to 348 computations (11.7% saved)

end206.0ms (2.3%)

Compiler

Compiled 178 to 152 computations (14.6% saved)

Profiling

Loading profile data...