@@ -330,6 +330,62 @@ gap> FoldLeft([1..3], \-);
330330gap> FoldLeft([1..3], \- , 0);
331331-6
332332
333+ #############################################################################
334+ #
335+ # ForAllX
336+ #
337+ gap> ForAllX([1..2], [3..4], function(i,j) Display([i,j]); return true; end);
338+ [ 1, 3 ]
339+ [ 1, 4 ]
340+ [ 2, 3 ]
341+ [ 2, 4 ]
342+ true
343+ gap> # verify short circuit works
344+ gap> ForAllX([1..2], [3..4], function(i,j) Display([i,j]); return false; end);
345+ [ 1, 3 ]
346+ false
347+
348+ #############################################################################
349+ #
350+ # ForAnyX
351+ #
352+ gap> ForAnyX([1..2], [3..4], function(i,j) Display([i,j]); return false; end);
353+ [ 1, 3 ]
354+ [ 1, 4 ]
355+ [ 2, 3 ]
356+ [ 2, 4 ]
357+ false
358+ gap> # verify short circuit works
359+ gap> ForAnyX([1..2], [3..4], function(i,j) Display([i,j]); return true; end);
360+ [ 1, 3 ]
361+ true
362+
363+ #############################################################################
364+ #
365+ # FilteredX
366+ #
367+ gap> FilteredX([1..4], IsEvenInt);
368+ [ [ 2 ], [ 4 ] ]
369+ gap> FilteredX([1..4], [1..4], \= );
370+ [ [ 1, 1 ], [ 2, 2 ], [ 3, 3 ], [ 4, 4 ] ]
371+ gap> FilteredX([1..6],[1..6],[1..6], {a,b,c} -> a+b+c<=4);
372+ [ [ 1, 1, 1 ], [ 1, 1, 2 ], [ 1, 2, 1 ], [ 2, 1, 1 ] ]
373+
374+ #############################################################################
375+ #
376+ # NumberX
377+ #
378+ gap> NumberX([1..4], IsEvenInt);
379+ gap> NumberX([1..4], [1..4], \= );
380+ gap> NumberX([1..6],[1..6],[1..6], {a,b,c} -> a+b+c<=4);
381+
382+ #############################################################################
383+ #
384+ # PerformX
385+ #
386+ gap> PerformX([1..2], [3..4], Print); Print("\n ");
387+ 13142324
388+
333389#############################################################################
334390#
335391# List
0 commit comments