fact: Definition selectdivf : forall a : Term A n, ~ zeroP (A:=A) A0 eqA (n:=n) a -> forall Q : list (poly A0 eqA ltM), {q : list (Term A n) | exists b : Term A n, (exists p : list (Term A n), divP A A0 eqA multA divA n a b /\ inPolySet A A0 eqA n ltM q Q /\ q = pX b p)} + {(forall (b : Term A n) (q : list (Term A n)), inPolySet A A0 eqA n ltM (pX b q) Q -> ~ divP A A0 eqA multA divA n a b)}.