Details

Time bar (total: 26.5s)

analyze5.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%100%0%0%0%0%2
0%0%50%0%0%50%0%3
50%25%25%0%0%50%0%4
75%37.5%12.5%0%0%50%0%5
87.5%43.7%6.2%0%0%50%0%6
93.8%46.9%3.1%0%0%50%0%7
96.9%48.4%1.6%0%0%50%0%8
98.4%49.2%0.8%0%0%50%0%9
99.2%49.6%0.4%0%0%50%0%10
99.6%49.8%0.2%0%0%50%0%11
99.8%49.9%0.1%0%0%50%0%12
Compiler

Compiled 15 to 14 computations (6.7% saved)

sample15.5s (58.6%)

Results
10.7s2016×body512valid
4.1s4156×body1024valid
462.0ms457×body2048valid
314.0ms1627×body256valid
0.0msbody256invalid
Bogosity

preprocess3.9s (14.7%)

Algorithm
egg-herbie
Rules
20798×rational.json-simplify-41
2308×rational.json-simplify-1
1296×rational.json-simplify-35
rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01541
12241
22841
33841
45641
510341
623841
761141
877441
978041
1078641
1179241
1279841
1380441
1481041
1581641
1682241
1782841
1883441
1984041
2084641
2185241
2285841
23271041
24271641
25272241
26272841
27273441
28274041
29353341
30353941
31354541
32355141
33355741
34356341
35356941
36357541
37358141
38358741
39359341
40359941
41360541
42361141
43361741
44362341
45362941
46363541
47364141
48364741
49365341
50365941
51366541
52367141
53367741
54368341
55368941
56369541
57370141
58370741
59371341
60371941
61372541
62373141
63373741
64374341
65374941
66375541
67376141
68376741
69377341
70377941
71378541
72379141
73379741
74380341
75380941
76381541
77382141
78382741
79383341
80383941
81384541
82385141
83385741
84386341
85386941
86387541
87388141
88388741
89389341
90389941
91390541
92391141
93391741
94392341
95392941
96393541
97394141
98394741
99395341
100395941
101396541
102397141
103397741
104398341
105398941
106399541
107400141
108400741
109401341
110401941
111402541
112403141
113403741
114404341
115404941
116405541
117406141
118406741
119407341
120407941
121408541
122409141
123409741
124410341
125410941
126411541
127412141
128412741
129413341
130413941
131414541
132415141
133415741
134416341
135416941
136417541
137418141
138418741
139419341
140419941
141420541
142421141
143421741
144422341
145422941
146423541
147424141
148424741
149425341
150425941
151426541
152427141
153427741
154428341
155428941
156429541
157430141
158430741
159431341
160431941
161432541
162433141
163433741
164434341
165434941
166435541
167436141
168436741
169437341
170437941
171438541
172439141
173439741
174440341
175440941
176441541
177442141
178442741
179443341
180443941
181444541
182445141
183445741
184446341
185446941
186447541
187448141
188448741
189449341
190449941
191450541
192451141
193451741
194452341
195452941
196453541
197454141
198454741
199455341
200455941
201456541
202457141
203457741
204458341
205458941
206459541
207460141
208460741
209461341
210461941
211462541
212463141
213463741
214464341
215464941
216465541
217466141
218466741
219467341
220467941
221468541
222469141
223469741
224470341
225470941
226471541
227472141
228472741
229473341
230473941
231474541
232475141
233475741
234476341
235476941
236477541
237478141
238478741
239479341
240479941
241480541
242481141
243481741
244482341
245482941
246483541
247484141
248484741
249485341
250485941
251486541
252487141
253487741
254488341
255488941
256489541
257490141
258490741
259491341
260491941
261492541
262493141
263493741
264494341
265494941
266495541
267496141
268496741
269497341
270497941
271498541
272499141
273499741
274500341
275500941
276501541
277502141
278502741
279503341
280503941
281504541
282505141
283505741
284506341
285506941
286507541
287508141
288508741
289509341
290509941
291510541
292511141
293511741
294512341
295512941
296513541
297514141
298514741
299515341
300515941
301516541
302517141
303517741
304518341
305518941
306519541
307520141
308520741
309521341
310521941
311522541
312523141
313523741
314524341
315524941
316525541
317526141
318526741
319527341
320527941
321528541
322529141
323529741
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
Outputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
Compiler

Compiled 15 to 14 computations (6.7% saved)

simplify5.0s (18.8%)

Algorithm
egg-herbie
Rules
20798×rational.json-simplify-41
2308×rational.json-simplify-1
1296×rational.json-simplify-35
rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01541
12241
22841
33841
45641
510341
623841
761141
877441
978041
1078641
1179241
1279841
1380441
1481041
1581641
1682241
1782841
1883441
1984041
2084641
2185241
2285841
23271041
24271641
25272241
26272841
27273441
28274041
29353341
30353941
31354541
32355141
33355741
34356341
35356941
36357541
37358141
38358741
39359341
40359941
41360541
42361141
43361741
44362341
45362941
46363541
47364141
48364741
49365341
50365941
51366541
52367141
53367741
54368341
55368941
56369541
57370141
58370741
59371341
60371941
61372541
62373141
63373741
64374341
65374941
66375541
67376141
68376741
69377341
70377941
71378541
72379141
73379741
74380341
75380941
76381541
77382141
78382741
79383341
80383941
81384541
82385141
83385741
84386341
85386941
86387541
87388141
88388741
89389341
90389941
91390541
92391141
93391741
94392341
95392941
96393541
97394141
98394741
99395341
100395941
101396541
102397141
103397741
104398341
105398941
106399541
107400141
108400741
109401341
110401941
111402541
112403141
113403741
114404341
115404941
116405541
117406141
118406741
119407341
120407941
121408541
122409141
123409741
124410341
125410941
126411541
127412141
128412741
129413341
130413941
131414541
132415141
133415741
134416341
135416941
136417541
137418141
138418741
139419341
140419941
141420541
142421141
143421741
144422341
145422941
146423541
147424141
148424741
149425341
150425941
151426541
152427141
153427741
154428341
155428941
156429541
157430141
158430741
159431341
160431941
161432541
162433141
163433741
164434341
165434941
166435541
167436141
168436741
169437341
170437941
171438541
172439141
173439741
174440341
175440941
176441541
177442141
178442741
179443341
180443941
181444541
182445141
183445741
184446341
185446941
186447541
187448141
188448741
189449341
190449941
191450541
192451141
193451741
194452341
195452941
196453541
197454141
198454741
199455341
200455941
201456541
202457141
203457741
204458341
205458941
206459541
207460141
208460741
209461341
210461941
211462541
212463141
213463741
214464341
215464941
216465541
217466141
218466741
219467341
220467941
221468541
222469141
223469741
224470341
225470941
226471541
227472141
228472741
229473341
230473941
231474541
232475141
233475741
234476341
235476941
236477541
237478141
238478741
239479341
240479941
241480541
242481141
243481741
244482341
245482941
246483541
247484141
248484741
249485341
250485941
251486541
252487141
253487741
254488341
255488941
256489541
257490141
258490741
259491341
260491941
261492541
262493141
263493741
264494341
265494941
266495541
267496141
268496741
269497341
270497941
271498541
272499141
273499741
274500341
275500941
276501541
277502141
278502741
279503341
280503941
281504541
282505141
283505741
284506341
285506941
286507541
287508141
288508741
289509341
290509941
291510541
292511141
293511741
294512341
295512941
296513541
297514141
298514741
299515341
300515941
301516541
302517141
303517741
304518341
305518941
306519541
307520141
308520741
309521341
310521941
311522541
312523141
313523741
314524341
315524941
316525541
317526141
318526741
319527341
320527941
321528541
322529141
323529741
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
Outputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))

eval0.0ms (0%)

Compiler

Compiled 14 to 13 computations (7.1% saved)

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 14 to 13 computations (7.1% saved)

localize30.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (/.f64 (-.f64 1 x) 2))
1.0b
(asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))
4.2b
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
Compiler

Compiled 51 to 42 computations (17.6% saved)

series3.0ms (0%)

Counts
3 → 28
Calls

9 calls:

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

rewrite98.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1632×bool.json-1
1632×bool.json-2
1580×rational.json-1
1580×rational.json-2
1580×rational.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01579
115079
238079
373279
4147279
5333579
6638479
Stop Event
node limit
Counts
3 → 76
Calls
Call 1
Inputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
(asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))
(sqrt.f64 (/.f64 (-.f64 1 x) 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) 1/2) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) (*.f64 (PI.f64) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (PI.f64) 1/4) (-.f64 (*.f64 (PI.f64) 1/4) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (-.f64 (*.f64 (PI.f64) 1/8) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (-.f64 (*.f64 (PI.f64) 2) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x or (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4)))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))

simplify253.0ms (1%)

Algorithm
egg-herbie
Rules
2046×rational.json-simplify-1
1910×rational.json-simplify-35
1174×rational.json-simplify-48
1172×rational.json-simplify-2
1074×rational.json-simplify-52
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01663354
13133258
27633238
317493222
431863222
541093222
647363222
759193222
870653222
974533222
1074623222
Stop Event
node limit
Counts
104 → 100
Calls
Call 1
Inputs
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 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 (*.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 (PI.f64) 1/2) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))
(+.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 0)
(+.f64 0 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))
(+.f64 -1 (+.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))
(+.f64 (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) (*.f64 (PI.f64) 1/2))
(+.f64 (*.f64 (PI.f64) 1/4) (-.f64 (*.f64 (PI.f64) 1/4) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))
(+.f64 (+.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))) -1)
(+.f64 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))
(*.f64 2 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))
(*.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))
(*.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 1)
(*.f64 4 (/.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 8))
(*.f64 4 (-.f64 (*.f64 (PI.f64) 1/8) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2)))
(*.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 1/2)
(*.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)) -1)
(*.f64 1/2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))
(*.f64 -1 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))
(*.f64 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))) 1/4)
(*.f64 1/4 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))
(*.f64 1/4 (-.f64 (*.f64 (PI.f64) 2) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8)))
(*.f64 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 2)
(*.f64 (/.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 8) 4)
(/.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 1)
(/.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 2)
(/.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)) -1)
(/.f64 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))) 4)
(/.f64 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))) 8)
(/.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2))) -2)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))) 16)
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) -4)
(/.f64 (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) 2)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))))) 32)
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2))))) 4)
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))
(+.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 0)
(+.f64 0 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))
(+.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2))
(-.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 0)
(*.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2))
(*.f64 1 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))
(*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1)
(*.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 1/2)
(*.f64 4 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/4))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4) 1/4)
(*.f64 1/2 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8) 1/8)
(*.f64 1/4 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2) 2)
(*.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/4) 4)
(*.f64 1/8 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8))
(/.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1)
(/.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 2)
(/.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4) 4)
(/.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8) 8)
(/.f64 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8))) 32)
(+.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 0)
(+.f64 0 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2))
(-.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 0)
(*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2))
(*.f64 1 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1)
(*.f64 4 (/.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2)
(*.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 1/4)
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))
(*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2) 2)
(*.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 4)
(/.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1)
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 2)
(/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4)) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4)))) 32)
Outputs
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))))
(-.f64 (*.f64 1/2 (PI.f64)) (*.f64 2 (asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 x))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (+.f64 1 (*.f64 -1 x)))))
(asin.f64 (*.f64 (sqrt.f64 1/2) (sqrt.f64 (-.f64 1 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 (sqrt.f64 1/2) (*.f64 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 (sqrt.f64 1/2) (+.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x -1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 x 2) -1/8))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x -1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 -1/8 (pow.f64 x 2)))))
(+.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (pow.f64 x 2)) (*.f64 x -1/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 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x -1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 x 2) -1/8))) (*.f64 (sqrt.f64 1/2) (*.f64 (pow.f64 x 3) -1/16))))
(+.f64 (sqrt.f64 1/2) (+.f64 (+.f64 (*.f64 (sqrt.f64 1/2) (*.f64 x -1/2)) (*.f64 (sqrt.f64 1/2) (*.f64 -1/8 (pow.f64 x 2)))) (*.f64 (sqrt.f64 1/2) (*.f64 -1/16 (pow.f64 x 3)))))
(+.f64 (sqrt.f64 1/2) (+.f64 (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/8 (pow.f64 x 2)) (*.f64 x -1/2))) (*.f64 (sqrt.f64 1/2) (*.f64 -1/16 (pow.f64 x 3)))))
(+.f64 (sqrt.f64 1/2) (*.f64 (sqrt.f64 1/2) (+.f64 (*.f64 -1/16 (pow.f64 x 3)) (+.f64 (*.f64 -1/8 (pow.f64 x 2)) (*.f64 x -1/2)))))
(+.f64 (*.f64 (PI.f64) 1/2) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(+.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 0)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(+.f64 0 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(+.f64 -1 (+.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(+.f64 (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) (*.f64 (PI.f64) 1/2))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(+.f64 (*.f64 (PI.f64) 1/4) (-.f64 (*.f64 (PI.f64) 1/4) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))
(+.f64 (*.f64 (PI.f64) 1/4) (-.f64 (*.f64 (PI.f64) 1/4) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(*.f64 1/4 (+.f64 (PI.f64) (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) 8))))
(+.f64 (+.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))) -1)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(+.f64 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 2 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 1 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 1)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 4 (/.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 8))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 4 (-.f64 (*.f64 (PI.f64) 1/8) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2)))
(*.f64 4 (-.f64 (*.f64 (PI.f64) 1/8) (*.f64 1/2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(*.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 1/2)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)) -1)
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))) (/.f64 (PI.f64) -2)))
(*.f64 1/2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 -1 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))) (/.f64 (PI.f64) -2)))
(*.f64 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))) 1/4)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 1/4 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 1/4 (-.f64 (*.f64 (PI.f64) 2) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8)))
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 (-.f64 (*.f64 (PI.f64) 1/4) (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 2)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(*.f64 (/.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 8) 4)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(/.f64 (-.f64 (*.f64 (PI.f64) 1/2) (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))) 1)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(/.f64 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)) 2)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(/.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)) -1)
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))) (/.f64 (PI.f64) -2)))
(/.f64 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))) 4)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(/.f64 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))) 8)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(/.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2))) -2)
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))) (/.f64 (PI.f64) -2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))) 16)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(/.f64 (*.f64 2 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) -4)
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))) (/.f64 (PI.f64) -2)))
(/.f64 (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) 2)
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))) (/.f64 (PI.f64) -2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))))) (*.f64 2 (*.f64 2 (*.f64 2 (-.f64 (PI.f64) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4)))))) 32)
(+.f64 (*.f64 1/2 (PI.f64)) (neg.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))))))
(+.f64 (*.f64 1/2 (PI.f64)) (*.f64 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x)))) -2))
(/.f64 (+.f64 (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))) (neg.f64 (*.f64 2 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2))))) 4)
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))) (/.f64 (PI.f64) -2)))
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) (/.f64 (PI.f64) -2)))
(neg.f64 (+.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))) (/.f64 (PI.f64) -2)))
(+.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 0)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(+.f64 0 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(+.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2) (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2))
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(-.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 0)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2))
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 1 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 1/2)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 4 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/4))
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4) 1/4)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 1/2 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))))
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8) 1/8)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 1/4 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4))
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2) 2)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/4) 4)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(*.f64 1/8 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8))
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(/.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(/.f64 (*.f64 2 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))) 2)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(/.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 4) 4)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(/.f64 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8) 8)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8)) 16)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 8))) 32)
(asin.f64 (sqrt.f64 (*.f64 1/2 (-.f64 1 x))))
(+.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 0)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(+.f64 0 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2) (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2))
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(-.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 0)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2))
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 1 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)))
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 4 (/.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 1/2)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 1/2 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))))
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 1/4)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 1/4 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1/2) 2)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 4)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 1)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2))) 2)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(/.f64 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4) 4)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4)) 8)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))) 16)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4))) (*.f64 2 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (-.f64 1 x) 1/2)) 4)))) 32)
(sqrt.f64 (*.f64 1/2 (-.f64 1 x)))

eval39.0ms (0.1%)

Compiler

Compiled 1776 to 1552 computations (12.6% saved)

prune88.0ms (0.3%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New991100
Fresh000
Picked011
Done000
Total992101
Error
59.6b
Counts
101 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
59.6b
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
61.5b
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 1/2))))
Compiler

Compiled 24 to 23 computations (4.2% saved)

localize496.0ms (1.9%)

Local error

Found 1 expressions with local error:

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

Compiled 26 to 24 computations (7.7% saved)

series0.0ms (0%)

Counts
1 → 0

rewrite122.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
1964×bool.json-1
1654×rational.json-simplify-35
1330×bool.json-2
1292×rational.json-1
1292×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
059
1519
21609
33309
46449
513279
630459
755999
879669
Stop Event
node limit
Counts
1 → 24
Calls
Call 1
Inputs
(asin.f64 (sqrt.f64 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (asin.f64 (sqrt.f64 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (asin.f64 (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))) (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (asin.f64 (sqrt.f64 1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (asin.f64 (sqrt.f64 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (asin.f64 (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (asin.f64 (sqrt.f64 1/2)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (asin.f64 (sqrt.f64 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (asin.f64 (sqrt.f64 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (asin.f64 (sqrt.f64 1/2)) (asin.f64 (sqrt.f64 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (asin.f64 (sqrt.f64 1/2)) (asin.f64 (sqrt.f64 1/2)))))))

simplify860.0ms (3.2%)

Algorithm
egg-herbie
Rules
4920×rational.json-simplify-51
2968×rational.json-simplify-35
1076×rational.json-simplify-49
930×rational.json-simplify-1
912×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
050216
1100216
2364216
3844216
41329216
51983216
62337216
72414216
82465216
92497216
102528216
112559216
122590216
132621216
142652216
152683216
162714216
172745216
182776216
193519216
203583216
213645216
223705216
233763216
243820216
254048216
264105216
274162216
284219216
294219216
304276216
314333216
324390216
334447216
344504216
357805216
367857216
377886216
387915216
397944216
407973216
Stop Event
node limit
Counts
24 → 25
Calls
Call 1
Inputs
(+.f64 (asin.f64 (sqrt.f64 1/2)) 0)
(+.f64 0 (asin.f64 (sqrt.f64 1/2)))
(+.f64 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))) (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))))
(-.f64 (asin.f64 (sqrt.f64 1/2)) 0)
(*.f64 1/2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2))
(*.f64 (asin.f64 (sqrt.f64 1/2)) 1)
(*.f64 1 (asin.f64 (sqrt.f64 1/2)))
(*.f64 2 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2) 1/2)
(*.f64 4 (*.f64 (asin.f64 (sqrt.f64 1/2)) 1/4))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4) 1/4)
(*.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8) 1/8)
(*.f64 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))) 2)
(*.f64 1/4 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 1/4) 4)
(*.f64 1/8 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))
(/.f64 (asin.f64 (sqrt.f64 1/2)) 1)
(/.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2) 2)
(/.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4) 4)
(/.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8) 8)
(/.f64 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)) 16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))) 32)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)))) 64)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))))) 128)
Outputs
(+.f64 (asin.f64 (sqrt.f64 1/2)) 0)
(asin.f64 (sqrt.f64 1/2))
(+.f64 0 (asin.f64 (sqrt.f64 1/2)))
(asin.f64 (sqrt.f64 1/2))
(+.f64 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))) (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))))
(asin.f64 (sqrt.f64 1/2))
(-.f64 (asin.f64 (sqrt.f64 1/2)) 0)
(asin.f64 (sqrt.f64 1/2))
(*.f64 1/2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2))
(asin.f64 (sqrt.f64 1/2))
(*.f64 (asin.f64 (sqrt.f64 1/2)) 1)
(asin.f64 (sqrt.f64 1/2))
(*.f64 1 (asin.f64 (sqrt.f64 1/2)))
(asin.f64 (sqrt.f64 1/2))
(*.f64 2 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))))
(asin.f64 (sqrt.f64 1/2))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2) 1/2)
(asin.f64 (sqrt.f64 1/2))
(*.f64 4 (*.f64 (asin.f64 (sqrt.f64 1/2)) 1/4))
(asin.f64 (sqrt.f64 1/2))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4) 1/4)
(asin.f64 (sqrt.f64 1/2))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8) 1/8)
(asin.f64 (sqrt.f64 1/2))
(*.f64 (*.f64 1/2 (asin.f64 (sqrt.f64 1/2))) 2)
(asin.f64 (sqrt.f64 1/2))
(*.f64 1/4 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4))
(asin.f64 (sqrt.f64 1/2))
(*.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 1/4) 4)
(asin.f64 (sqrt.f64 1/2))
(*.f64 1/8 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))
(asin.f64 (sqrt.f64 1/2))
(/.f64 (asin.f64 (sqrt.f64 1/2)) 1)
(asin.f64 (sqrt.f64 1/2))
(/.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 2) 2)
(asin.f64 (sqrt.f64 1/2))
(/.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 4) 4)
(asin.f64 (sqrt.f64 1/2))
(/.f64 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8) 8)
(asin.f64 (sqrt.f64 1/2))
(/.f64 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)) 16)
(asin.f64 (sqrt.f64 1/2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))) 32)
(asin.f64 (sqrt.f64 1/2))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)))) 64)
(asin.f64 (sqrt.f64 1/2))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8)))) (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (asin.f64 (sqrt.f64 1/2)) 8))))) 128)
(asin.f64 (sqrt.f64 1/2))

eval10.0ms (0%)

Compiler

Compiled 344 to 320 computations (7% saved)

prune4.0ms (0%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New25025
Fresh000
Picked011
Done011
Total25227
Error
59.6b
Counts
27 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
59.6b
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
61.5b
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 1/2))))
Compiler

Compiled 24 to 23 computations (4.2% saved)

regimes58.0ms (0.2%)

Accuracy

Total -1.9b remaining (-3.2%)

Threshold costs -1.9b (-3.2%)

Counts
2 → 1
Calls
Call 1
Inputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 1/2))))
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
Outputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
Calls

7 calls:

44.0ms
(asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))
3.0ms
x
2.0ms
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
2.0ms
(*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2))))
2.0ms
(/.f64 (-.f64 1 x) 2)
Results
ErrorSegmentsBranch
59.6b1x
59.6b1(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
59.6b1(*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2))))
59.6b1(asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))
59.6b1(sqrt.f64 (/.f64 (-.f64 1 x) 2))
59.6b1(/.f64 (-.f64 1 x) 2)
59.6b1(-.f64 1 x)
Compiler

Compiled 74 to 65 computations (12.2% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02070
Stop Event
done
saturated
Calls
Call 1
Inputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 1/2))))
Outputs
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 (/.f64 (-.f64 1 x) 2)))))
(-.f64 (/.f64 (PI.f64) 2) (*.f64 2 (asin.f64 (sqrt.f64 1/2))))
Compiler

Compiled 24 to 23 computations (4.2% saved)

soundness0.0ms (0%)

end22.0ms (0.1%)

Compiler

Compiled 23 to 21 computations (8.7% saved)

Profiling

Loading profile data...