17 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			17 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
|  | #include "rs_common.h"
 | ||
|  | #include "field.h"
 | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 | ||
|  | polynomial_t polynomial_create(uint16_t order); | ||
|  | void polynomial_destroy(polynomial_t polynomial); | ||
|  | void polynomial_mul(field_t field, polynomial_t l, polynomial_t r, polynomial_t res); | ||
|  | void polynomial_mod(field_t field, polynomial_t dividend, polynomial_t divisor, polynomial_t mod); | ||
|  | void polynomial_formal_derivative(field_t field, polynomial_t poly, polynomial_t der); | ||
|  | field_element_t polynomial_eval(field_t field, polynomial_t poly, field_element_t val); | ||
|  | field_element_t polynomial_eval_lut(field_t field, polynomial_t poly, const field_logarithm_t *val_exp); | ||
|  | field_element_t polynomial_eval_log_lut(field_t field, polynomial_t poly_log, const field_logarithm_t *val_exp); | ||
|  | void polynomial_build_exp_lut(field_t field, field_element_t val, uint16_t order, field_logarithm_t *val_exp); | ||
|  | polynomial_t polynomial_init_from_roots(field_t field, uint16_t nroots, field_element_t *roots, polynomial_t poly, polynomial_t *scratch); | ||
|  | polynomial_t polynomial_create_from_roots(field_t field, uint16_t nroots, field_element_t *roots); |