⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testpoly.c

📁 这是一个C的源代码
💻 C
字号:
#include "pbc.h"#include "pbc_fp.h"int main(void){    field_t zp, rx, fp2;    mpz_t prime;    element_t a;    element_t f, g;    mpz_init(prime);    mpz_set_ui(prime, 100000);    mpz_setbit(prime, 33);    mpz_nextprime(prime, prime);    element_printf("prime = %Z\n", prime);    field_init_fp(zp, prime);    field_init_poly(rx, zp);    element_init(f, rx);    element_init(g, rx);    element_init(a, zp);    element_set_si(a, 1);    poly_set_coeff(f, a, 2);    poly_set_coeff(f, a, 0);    element_out_str(stdout, 0, f);    if (poly_is_irred(f)) {	printf(" is irreducible\n");    } else {	printf(" is not irreducible\n");    }    {	unsigned char *data;	int i;	int n = element_length_in_bytes(f);	printf("serialized f =");	data = (unsigned char *) pbc_malloc(n);	element_to_bytes(data, f);	for (i=0; i<n; i++) {	    printf(" %02X", data[i]);	}	printf("\n");	printf("deserialize check = ");	element_from_bytes(f, data);	element_out_str(stdout, 10, f);	printf("\n");    }    field_init_polymod(fp2, f);    element_clear(f);    element_clear(g);    element_init(f, fp2);    element_init(g, fp2);    element_random(f);    element_random(g);    element_printf("f: %B, g: %B\n", f, g);    element_invert(g, f);    element_printf("inv f: %B\n", g);    element_mul(g, f, g);    element_printf("prod: %B\n", g);    {	do {	    element_random(f);	} while (!element_is_sqr(f));	element_printf("random square f: %B\n", f);	element_sqrt(f, f);	element_printf("sqrt f: %B\n", f);	element_mul(f, f, f);	element_printf("f: %B\n", f);    }    {	unsigned char *data;	int i;	int n = element_length_in_bytes(f);	printf("serialized f =");	data = (unsigned char *) pbc_malloc(n);	element_to_bytes(data, f);	for (i=0; i<n; i++) {	    printf(" %02X", data[i]);	}	printf("\n");	printf("deserialize check = ");	element_random(f);	element_from_bytes(f, data);	element_out_str(stdout, 10, f);	printf("\n");    }    element_clear(f);    element_clear(g);    return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -