Niven’s theorem asserts that
$\{\cos (r\pi ) \mid r\in \mathbb {Q}\}\cap \mathbb {Q}=\{0,\pm 1,\pm 1/2\}.$
In this paper, we use elementary techniques and results from arithmetic dynamics to obtain an algorithm for classifying all values in the set
$\{\cos (r\pi ) \mid r\in \mathbb {Q}\}\cap K$
, where K is an arbitrary number field.