Never mind, I figured it out! If anyone else wants this the solution I found that is working is using the studentsMustReduceUnions flag. Here is a working example:
###########################
# Initialization
DOCUMENT();
loadMacros(
"PGstandard.pl",
"MathObjects.pl",
"PGML.pl",
);
TEXT(beginproblem());
##########################
# Setup
Context("Interval");
$a = Interval("{1}U(2,5)U{6}");
BEGIN_PGML
the interval [`[$a]`] is [_]{($a)->cmp(studentsMustReduceUnions => 0)}
END_PGML
COMMENT('Uses PGML.');
ENDDOCUMENT();
###########################
# Initialization
DOCUMENT();
loadMacros(
"PGstandard.pl",
"MathObjects.pl",
"PGML.pl",
);
TEXT(beginproblem());
##########################
# Setup
Context("Interval");
$a = Interval("{1}U(2,5)U{6}");
BEGIN_PGML
the interval [`[$a]`] is [_]{($a)->cmp(studentsMustReduceUnions => 0)}
END_PGML
COMMENT('Uses PGML.');
ENDDOCUMENT();