When the characteristic of a finite field is not 2, the squares take on exactly half of the non zero values.

If F is a finite field, not of characteristic 2 then 2 #{x^{2}| x∊F∧x≠0} = #F

For characteristic 2 we have p

(define f (let ((fft (fileVal "finiteField")) (dol ((fileVal "Do") 'DoL))) (lambda (q) (let ((GFp (fft 2))(2q (expt 2 q))) (let ((p->i (GFp 'p->i)) (i->p (GFp 'i->p)) (* (((GFp 'fops) ((GFp 'gsip) q)) 'f*))) (dol 2q (lambda (i) (let ((p (i->p i))) (p->i (* p p))))))))))(f 4) => (0 1 4 5 3 2 7 6 12 13 8 9 15 14 11 10)