Section FiniteCase.
Variable N : nat.
Let K_is_large := exists s, [/\ uniq s, {subset s <= K} & N < size s].
Let cyclic_or_large (z : L) : z != 0 -> K_is_large \/ exists a, z ^+ a.+1 = 1.
End FiniteCase.
Hypothesis sepKy : separable_element K y.
End PrimitiveElementTheorem.
Definition separable U W : bool :=
all (separable_element U) (vbasis W).
Definition purely_inseparable U W : bool :=
all (purely_inseparable_element U) (vbasis W).

Lemma separableP {K E} :
reflect (forall y, y \in E -> separable_element K y) (separable K E).