I think the problem here is that enumerating over a disjoint union of an 
infinite set and a finite set will never reach the elements in the finite 
set. There is this comment in the documentation of 
DisjointUnionEnumeratedSets

   Possible extensions: the current enumeration order is not suitable
>    for unions of infinite enumerated sets (except possibly for the
>    last one). One could add options to specify alternative enumeration
>    orders (anti-diagonal, round robin, ...) to handle this case.


so the workaround is to first enumerate over the finite set and then the 
infinite set, as the last enumerated set in the union will determine 
whether the disjoint union is finite or not:

sage: DisjointUnionEnumeratedSets([NonNegativeIntegers(), Family('x')]) in 
FiniteSets()
True
sage: DisjointUnionEnumeratedSets([Family('x'), NonNegativeIntegers()]) in 
FiniteSets()
False

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/aeb3c3ba-c804-428d-9119-2629950be6cbo%40googlegroups.com.

Reply via email to