% A three-argument intersection.
\providecommand*{\intersectthree}[3]{ \intersect{\intersect{#1}{#2}}{#3} }
+
+% An indexed arbitrary binary operation such as the union or
+% intersection of an infinite number of sets. The first argument is
+% the operator symbol to use, such as \cup for a union. The second
+% argument is the lower index, for example k=1. The third argument is
+% the upper index, such as \infty. Finally the fourth argument should
+% contain the things (e.g. indexed sets) to be operated on.
+\providecommand*{\binopmany}[4]{
+ \mathchoice
+ { \underset{#2}{\overset{#3}{#1}}{#4} }
+ { {#1}_{#2}^{#3}{#4} }
+ { {#1}_{#2}^{#3}{#4} }
+ { {#1}_{#2}^{#3}{#4} }
+}
+
+\providecommand*{\unionmany}[3]{ \binopmany{\cup}{#1}{#2}{#3} }
+\providecommand*{\intersectmany}[3]{ \binopmany{\cap}{#1}{#2}{#3} }