Let us walk on the 3-isogeny graph
Loading...
Searching...
No Matches
fp_sqrt2047m6l194.c File Reference
#include "mulx/fp.h"
Include dependency graph for fp_sqrt2047m6l194.c:

Go to the source code of this file.

Functions

bool fp_issquare (fp x)

Function Documentation

◆ fp_issquare()

bool fp_issquare ( fp x)

Definition at line 12 of file fp_sqrt2047m6l194.c.

13{
14 fp origx;
15 fp_copy(origx,x);
16 fp r0;
17 fp_copy(r0,x);
18 fp r1;
19 fp_sqr(r1,r0);
20 fp r2;
21 fp_mul(r2,r0,r1);
22 fp_mul(r2,r2,r1);
23 fp r3;
24 fp_mul(r3,r1,r2);
25 fp r4;
26 fp_mul(r4,r1,r3);
27 fp_mul(r4,r4,r1);
28 fp r5;
29 fp_mul(r5,r1,r4);
30 fp r6;
31 fp_mul(r6,r1,r5);
32 fp r7;
33 fp_mul(r7,r1,r6);
34 fp r8;
35 fp_mul(r8,r1,r7);
36 fp r9;
37 fp_mul(r9,r1,r8);
38 fp r10;
39 fp_mul(r10,r1,r9);
40 fp r11;
41 fp_mul(r11,r1,r10);
42 fp r12;
43 fp_mul(r12,r1,r11);
44 fp r13;
45 fp_mul(r13,r1,r12);
46 fp r14;
47 fp_mul(r14,r1,r13);
48 fp r15;
49 fp_mul(r15,r1,r14);
50 fp r16;
51 fp_mul(r16,r1,r15);
52 fp r17;
53 fp_mul(r17,r1,r16);
54 fp r18;
55 fp_mul(r18,r1,r17);
56 fp r19;
57 fp_mul(r19,r1,r18);
58 fp r20;
59 fp_mul(r20,r1,r19);
60 fp r21;
61 fp_mul(r21,r1,r20);
62 fp r22;
63 fp_mul(r22,r1,r21);
64 fp r23;
65 fp_mul(r23,r1,r22);
66 fp r24;
67 fp_mul(r24,r1,r23);
68 fp r25;
69 fp_mul(r25,r1,r24);
70 fp r26;
71 fp_mul(r26,r1,r25);
72 fp r27;
73 fp_mul(r27,r1,r26);
74 fp r28;
75 fp_mul(r28,r1,r27);
76 fp r29;
77 fp_mul(r29,r1,r28);
78 fp r30;
79 fp_mul(r30,r1,r29);
80 fp r31;
81 fp_mul(r31,r1,r30);
82 fp r32;
83 fp_mul(r32,r1,r31);
84 fp r33;
85 fp_mul(r33,r1,r32);
86 fp r34;
87 fp_mul(r34,r1,r33);
88 fp r35;
89 fp_mul(r35,r1,r34);
90 fp_mul(r1,r1,r35);
91 fp r36;
92 fp_sqr(r36,r21);
93 fp_mul(r36,r36,r22);
94 fp_sq1_rep(r36,9);
95 fp_mul(r36,r36,r11);
96 fp_sq1_rep(r36,6);
97 fp_mul(r36,r36,r10);
98 fp_sq1_rep(r36,11);
99 fp_mul(r36,r36,r26);
100 fp_sq1_rep(r36,7);
101 fp_mul(r36,r36,r33);
102 fp_sq1_rep(r36,6);
103 fp_mul(r36,r36,r5);
104 fp_sq1_rep(r36,7);
105 fp_mul(r36,r36,r35);
106 fp_sq1_rep(r36,6);
107 fp_mul(r36,r36,r16);
108 fp_sq1_rep(r36,16);
109 fp_mul(r36,r36,r7);
110 fp_sq1_rep(r36,9);
111 fp_mul(r36,r36,r28);
112 fp_sq1_rep(r36,6);
113 fp_mul(r36,r36,r25);
114 fp_sq1_rep(r36,9);
115 fp_mul(r36,r36,r32);
116 fp_sq1_rep(r36,6);
117 fp_mul(r36,r36,r29);
118 fp_sq1_rep(r36,6);
119 fp_mul(r36,r36,r24);
120 fp_sq1_rep(r36,7);
121 fp_mul(r36,r36,r28);
122 fp_sq1_rep(r36,6);
123 fp_mul(r36,r36,r17);
124 fp_sq1_rep(r36,8);
125 fp_mul(r36,r36,r26);
126 fp_sq1_rep(r36,7);
127 fp_mul(r36,r36,r17);
128 fp_sq1_rep(r36,7);
129 fp_mul(r36,r36,r8);
130 fp_sq1_rep(r36,6);
131 fp_mul(r36,r36,r28);
132 fp_sq1_rep(r36,9);
133 fp_mul(r36,r36,r2);
134 fp_sq1_rep(r36,10);
135 fp_mul(r36,r36,r5);
136 fp_sq1_rep(r36,11);
137 fp_mul(r36,r36,r18);
138 fp_sq1_rep(r36,7);
139 fp_mul(r36,r36,r18);
140 fp_sq1_rep(r36,9);
141 fp_mul(r36,r36,r29);
142 fp_sq1_rep(r36,8);
143 fp_mul(r36,r36,r32);
144 fp_sq1_rep(r36,6);
145 fp_mul(r36,r36,r14);
146 fp_sq1_rep(r36,12);
147 fp_mul(r36,r36,r24);
148 fp_sq1_rep(r36,9);
149 fp_mul(r36,r36,r1);
150 fp_sq1_rep(r36,7);
151 fp_mul(r36,r36,r2);
152 fp_sq1_rep(r36,8);
153 fp_mul(r36,r36,r14);
154 fp_sq1_rep(r36,7);
155 fp_mul(r36,r36,r7);
156 fp_sq1_rep(r36,7);
157 fp_mul(r36,r36,r26);
158 fp_sq1_rep(r36,7);
159 fp_mul(r36,r36,r9);
160 fp_sq1_rep(r36,7);
161 fp_mul(r3,r3,r36);
162 fp_sq1_rep(r3,10);
163 fp_mul(r3,r3,r1);
164 fp_sq1_rep(r3,8);
165 fp_mul(r3,r3,r0);
166 fp_sq1_rep(r3,8);
167 fp_mul(r3,r3,r12);
168 fp_sq1_rep(r3,7);
169 fp_mul(r3,r3,r9);
170 fp_sq1_rep(r3,7);
171 fp_mul(r3,r3,r11);
172 fp_sq1_rep(r3,7);
173 fp_mul(r3,r3,r10);
174 fp_sq1_rep(r3,6);
175 fp_mul(r3,r3,r24);
176 fp_sq1_rep(r3,9);
177 fp_mul(r3,r3,r33);
178 fp_sq1_rep(r3,6);
179 fp_mul(r3,r3,r15);
180 fp_sq1_rep(r3,6);
181 fp_mul(r3,r3,r12);
182 fp_sq1_rep(r3,6);
183 fp_mul(r3,r3,r29);
184 fp_sq1_rep(r3,10);
185 fp_mul(r3,r3,r19);
186 fp_sq1_rep(r3,8);
187 fp_mul(r3,r3,r10);
188 fp_sq1_rep(r3,6);
189 fp_mul(r3,r3,r20);
190 fp_sq1_rep(r3,9);
191 fp_mul(r3,r3,r27);
192 fp_sq1_rep(r3,6);
193 fp_mul(r3,r3,r23);
194 fp_sq1_rep(r3,7);
195 fp_mul(r3,r3,r5);
196 fp_sq1_rep(r3,8);
197 fp_mul(r3,r3,r30);
198 fp_sq1_rep(r3,9);
199 fp_mul(r3,r3,r35);
200 fp_sq1_rep(r3,8);
201 fp_mul(r3,r3,r32);
202 fp_sq1_rep(r3,7);
203 fp_mul(r3,r3,r29);
204 fp_sq1_rep(r3,13);
205 fp_mul(r3,r3,r23);
206 fp_sq1_rep(r3,6);
207 fp_mul(r3,r3,r24);
208 fp_sq1_rep(r3,7);
209 fp_mul(r3,r3,r35);
210 fp_sq1_rep(r3,7);
211 fp_mul(r3,r3,r23);
212 fp_sq1_rep(r3,6);
213 fp_mul(r3,r3,r11);
214 fp_sq1_rep(r3,9);
215 fp_mul(r3,r3,r5);
216 fp_sq1_rep(r3,7);
217 fp_mul(r3,r3,r34);
218 fp_sq1_rep(r3,8);
219 fp_mul(r3,r3,r15);
220 fp_sq1_rep(r3,11);
221 fp_mul(r3,r3,r13);
222 fp_sq1_rep(r3,6);
223 fp_mul(r3,r3,r15);
224 fp_sq1_rep(r3,7);
225 fp_mul(r3,r3,r22);
226 fp_sq1_rep(r3,6);
227 fp_mul(r3,r3,r10);
228 fp_sq1_rep(r3,7);
229 fp_mul(r3,r3,r25);
230 fp_sq1_rep(r3,6);
231 fp_mul(r3,r3,r7);
232 fp_sq1_rep(r3,10);
233 fp_mul(r3,r3,r22);
234 fp_sq1_rep(r3,6);
235 fp_mul(r3,r3,r15);
236 fp_sq1_rep(r3,8);
237 fp_mul(r3,r3,r26);
238 fp_sq1_rep(r3,6);
239 fp_mul(r3,r3,r10);
240 fp_sq1_rep(r3,6);
241 fp_mul(r3,r3,r5);
242 fp_sq1_rep(r3,10);
243 fp_mul(r3,r3,r24);
244 fp_sq1_rep(r3,7);
245 fp_mul(r3,r3,r5);
246 fp_sq1_rep(r3,6);
247 fp_mul(r3,r3,r22);
248 fp_sq1_rep(r3,7);
249 fp_mul(r3,r3,r11);
250 fp_sq1_rep(r3,7);
251 fp_mul(r3,r3,r28);
252 fp_sq1_rep(r3,8);
253 fp_mul(r3,r3,r32);
254 fp_sq1_rep(r3,6);
255 fp_mul(r3,r3,r16);
256 fp_sq1_rep(r3,6);
257 fp_mul(r3,r3,r23);
258 fp_sq1_rep(r3,7);
259 fp_mul(r3,r3,r25);
260 fp_sq1_rep(r3,7);
261 fp_mul(r3,r3,r27);
262 fp_sq1_rep(r3,8);
263 fp_mul(r3,r3,r34);
264 fp_sq1_rep(r3,8);
265 fp_mul(r3,r3,r27);
266 fp_sq1_rep(r3,7);
267 fp_mul(r3,r3,r25);
268 fp_sq1_rep(r3,7);
269 fp_mul(r3,r3,r20);
270 fp_sq1_rep(r3,9);
271 fp_mul(r3,r3,r25);
272 fp_sq1_rep(r3,6);
273 fp_mul(r3,r3,r24);
274 fp_sq1_rep(r3,6);
275 fp_mul(r3,r3,r28);
276 fp_sq1_rep(r3,7);
277 fp_mul(r3,r3,r9);
278 fp_sq1_rep(r3,6);
279 fp_mul(r3,r3,r21);
280 fp_sq1_rep(r3,7);
281 fp_mul(r3,r3,r5);
282 fp_sq1_rep(r3,9);
283 fp_mul(r3,r3,r17);
284 fp_sq1_rep(r3,8);
285 fp_mul(r3,r3,r28);
286 fp_sq1_rep(r3,6);
287 fp_mul(r3,r3,r11);
288 fp_sq1_rep(r3,7);
289 fp_mul(r3,r3,r5);
290 fp_sq1_rep(r3,6);
291 fp_mul(r3,r3,r16);
292 fp_sq1_rep(r3,10);
293 fp_mul(r3,r3,r2);
294 fp_sq1_rep(r3,6);
295 fp_mul(r3,r3,r8);
296 fp_sq1_rep(r3,6);
297 fp_mul(r3,r3,r17);
298 fp_sq1_rep(r3,6);
299 fp_mul(r3,r3,r23);
300 fp_sq1_rep(r3,6);
301 fp_mul(r3,r3,r27);
302 fp_sq1_rep(r3,6);
303 fp_mul(r3,r3,r21);
304 fp_sq1_rep(r3,6);
305 fp_mul(r3,r3,r28);
306 fp_sq1_rep(r3,6);
307 fp_mul(r3,r3,r15);
308 fp_sq1_rep(r3,6);
309 fp_mul(r3,r3,r17);
310 fp_sq1_rep(r3,6);
311 fp_mul(r3,r3,r23);
312 fp_sq1_rep(r3,10);
313 fp_mul(r3,r3,r2);
314 fp_sq1_rep(r3,8);
315 fp_mul(r3,r3,r13);
316 fp_sq1_rep(r3,7);
317 fp_mul(r3,r3,r28);
318 fp_sq1_rep(r3,6);
319 fp_mul(r3,r3,r24);
320 fp_sq1_rep(r3,6);
321 fp_mul(r3,r3,r6);
322 fp_sq1_rep(r3,6);
323 fp_mul(r3,r3,r18);
324 fp_sq1_rep(r3,6);
325 fp_mul(r3,r3,r10);
326 fp_sq1_rep(r3,8);
327 fp_mul(r3,r3,r28);
328 fp_sq1_rep(r3,6);
329 fp_mul(r3,r3,r27);
330 fp_sq1_rep(r3,6);
331 fp_mul(r3,r3,r29);
332 fp_sq1_rep(r3,7);
333 fp_mul(r3,r3,r2);
334 fp_sq1_rep(r3,12);
335 fp_mul(r3,r3,r22);
336 fp_sq1_rep(r3,7);
337 fp_mul(r3,r3,r5);
338 fp_sq1_rep(r3,7);
339 fp_mul(r3,r3,r33);
340 fp_sq1_rep(r3,6);
341 fp_mul(r3,r3,r23);
342 fp_sq1_rep(r3,6);
343 fp_mul(r3,r3,r8);
344 fp_sq1_rep(r3,6);
345 fp_mul(r3,r3,r17);
346 fp_sq1_rep(r3,6);
347 fp_mul(r3,r3,r21);
348 fp_sq1_rep(r3,6);
349 fp_mul(r3,r3,r6);
350 fp_sq1_rep(r3,6);
351 fp_mul(r3,r3,r21);
352 fp_sq1_rep(r3,12);
353 fp_mul(r3,r3,r32);
354 fp_sq1_rep(r3,11);
355 fp_mul(r3,r3,r4);
356 fp_sq1_rep(r3,6);
357 fp_mul(r3,r3,r12);
358 fp_sq1_rep(r3,6);
359 fp_mul(r3,r3,r23);
360 fp_sq1_rep(r3,12);
361 fp_mul(r3,r3,r2);
362 fp_sq1_rep(r3,6);
363 fp_mul(r3,r3,r19);
364 fp_sq1_rep(r3,7);
365 fp_mul(r3,r3,r0);
366 fp_sq1_rep(r3,8);
367 fp_mul(r3,r3,r34);
368 fp_sq1_rep(r3,7);
369 fp_mul(r3,r3,r35);
370 fp_sq1_rep(r3,6);
371 fp_mul(r3,r3,r28);
372 fp_sq1_rep(r3,6);
373 fp_mul(r3,r3,r23);
374 fp_sq1_rep(r3,7);
375 fp_mul(r3,r3,r32);
376 fp_sq1_rep(r3,7);
377 fp_mul(r3,r3,r15);
378 fp_sq1_rep(r3,6);
379 fp_mul(r3,r3,r21);
380 fp_sq1_rep(r3,7);
381 fp_mul(r3,r3,r1);
382 fp_sq1_rep(r3,6);
383 fp_mul(r3,r3,r14);
384 fp_sq1_rep(r3,8);
385 fp_mul(r3,r3,r9);
386 fp_sq1_rep(r3,7);
387 fp_mul(r3,r3,r23);
388 fp_sq1_rep(r3,9);
389 fp_mul(r3,r3,r21);
390 fp_sq1_rep(r3,6);
391 fp_mul(r3,r3,r7);
392 fp_sq1_rep(r3,6);
393 fp_mul(r3,r3,r7);
394 fp_sq1_rep(r3,6);
395 fp_mul(r3,r3,r14);
396 fp_sq1_rep(r3,8);
397 fp_mul(r3,r3,r4);
398 fp_sq1_rep(r3,9);
399 fp_mul(r3,r3,r15);
400 fp_sq1_rep(r3,7);
401 fp_mul(r3,r3,r22);
402 fp_sq1_rep(r3,8);
403 fp_mul(r3,r3,r16);
404 fp_sq1_rep(r3,6);
405 fp_mul(r3,r3,r25);
406 fp_sq1_rep(r3,8);
407 fp_mul(r3,r3,r27);
408 fp_sq1_rep(r3,8);
409 fp_mul(r3,r3,r7);
410 fp_sq1_rep(r3,7);
411 fp_mul(r3,r3,r31);
412 fp_sq1_rep(r3,7);
413 fp_mul(r3,r3,r18);
414 fp_sq1_rep(r3,6);
415 fp_mul(r3,r3,r21);
416 fp_sq1_rep(r3,11);
417 fp_mul(r3,r3,r34);
418 fp_sq1_rep(r3,8);
419 fp_mul(r3,r3,r10);
420 fp_sq1_rep(r3,7);
421 fp_mul(r3,r3,r24);
422 fp_sq1_rep(r3,6);
423 fp_mul(r3,r3,r28);
424 fp_sq1_rep(r3,6);
425 fp_mul(r3,r3,r24);
426 fp_sq1_rep(r3,7);
427 fp_mul(r3,r3,r33);
428 fp_sq1_rep(r3,6);
429 fp_mul(r3,r3,r30);
430 fp_sq1_rep(r3,9);
431 fp_mul(r3,r3,r29);
432 fp_sq1_rep(r3,7);
433 fp_mul(r3,r3,r11);
434 fp_sq1_rep(r3,7);
435 fp_mul(r3,r3,r33);
436 fp_sq1_rep(r3,8);
437 fp_mul(r3,r3,r28);
438 fp_sq1_rep(r3,6);
439 fp_mul(r3,r3,r26);
440 fp_sq1_rep(r3,8);
441 fp_mul(r3,r3,r22);
442 fp_sq1_rep(r3,7);
443 fp_mul(r3,r3,r30);
444 fp_sq1_rep(r3,6);
445 fp_mul(r3,r3,r7);
446 fp_sq1_rep(r3,6);
447 fp_mul(r3,r3,r12);
448 fp_sq1_rep(r3,6);
449 fp_mul(r3,r3,r9);
450 fp_sq1_rep(r3,8);
451 fp_mul(r3,r3,r34);
452 fp_sq1_rep(r3,7);
453 fp_mul(r3,r3,r13);
454 fp_sq1_rep(r3,9);
455 fp_mul(r1,r1,r3);
456 fp_sq1_rep(r1,6);
457 fp_mul(r1,r1,r20);
458 fp_sq1_rep(r1,9);
459 fp_mul(r1,r1,r33);
460 fp_sq1_rep(r1,6);
461 fp_mul(r1,r1,r24);
462 fp_sq1_rep(r1,6);
463 fp_mul(r1,r1,r15);
464 fp_sq1_rep(r1,8);
465 fp_mul(r1,r1,r20);
466 fp_sq1_rep(r1,6);
467 fp_mul(r1,r1,r24);
468 fp_sq1_rep(r1,12);
469 fp_mul(r1,r1,r5);
470 fp_sq1_rep(r1,8);
471 fp_mul(r1,r1,r26);
472 fp_sq1_rep(r1,8);
473 fp_mul(r1,r1,r12);
474 fp_sq1_rep(r1,7);
475 fp_mul(r1,r1,r34);
476 fp_sq1_rep(r1,12);
477 fp_mul(r1,r1,r8);
478 fp_sq1_rep(r1,7);
479 fp_mul(r1,r1,r28);
480 fp_sq1_rep(r1,7);
481 fp_mul(r1,r1,r24);
482 fp_sq1_rep(r1,6);
483 fp_mul(r1,r1,r27);
484 fp_sq1_rep(r1,6);
485 fp_mul(r1,r1,r21);
486 fp_sq1_rep(r1,12);
487 fp_mul(r1,r1,r5);
488 fp_sq1_rep(r1,7);
489 fp_mul(r1,r1,r13);
490 fp_sq1_rep(r1,11);
491 fp_mul(r1,r1,r22);
492 fp_sq1_rep(r1,6);
493 fp_mul(r1,r1,r24);
494 fp_sq1_rep(r1,8);
495 fp_mul(r1,r1,r31);
496 fp_sq1_rep(r1,6);
497 fp_mul(r1,r1,r27);
498 fp_sq1_rep(r1,11);
499 fp_mul(r1,r1,r33);
500 fp_sq1_rep(r1,9);
501 fp_mul(r1,r1,r21);
502 fp_sq1_rep(r1,8);
503 fp_mul(r1,r1,r17);
504 fp_sq1_rep(r1,7);
505 fp_mul(r1,r1,r24);
506 fp_sq1_rep(r1,6);
507 fp_mul(r1,r1,r23);
508 fp_sq1_rep(r1,7);
509 fp_mul(r1,r1,r31);
510 fp_sq1_rep(r1,8);
511 fp_mul(r1,r1,r11);
512 fp_sq1_rep(r1,9);
513 fp_mul(r1,r1,r10);
514 fp_sq1_rep(r1,9);
515 fp_mul(r1,r1,r31);
516 fp_sq1_rep(r1,7);
517 fp_mul(r1,r1,r22);
518 fp_sq1_rep(r1,9);
519 fp_mul(r1,r1,r2);
520 fp_sq1_rep(r1,6);
521 fp_mul(r1,r1,r28);
522 fp_sq1_rep(r1,6);
523 fp_mul(r1,r1,r16);
524 fp_sq1_rep(r1,7);
525 fp_mul(r1,r1,r27);
526 fp_sq1_rep(r1,9);
527 fp_mul(r1,r1,r7);
528 fp_sq1_rep(r1,7);
529 fp_mul(r1,r1,r22);
530 fp_sq1_rep(r1,6);
531 fp_mul(r1,r1,r5);
532 fp_sq1_rep(r1,6);
533 fp_mul(r1,r1,r29);
534 fp_sq1_rep(r1,15);
535 fp_mul(r0,r0,r1);
536 fp_sq1_rep(r0,6);
537 fp_mul(r0,r0,r22);
538 fp_sq1_rep(r0,385);
539 fp_copy(x,r0);
540 fp check;
541 fp_sqr(check,x);
542 return fp_isequal(check,origx);
543}
#define fp_sqr
Definition fp-gmp.h:73
uint64_t fp[NUMBER_OF_WORDS]
Definition fp-gmp.h:22
#define fp_mul
Definition fp-gmp.h:70
#define fp_copy
Definition fp-gmp.h:79

References fp_copy, fp_mul, and fp_sqr.