local a = BinaryOperation.POWEXP({Integer(8), Integer(1) / Integer(2)})
local b = BinaryOperation.POWEXP({Integer(27), Integer(1) / Integer(3)})
local c = BinaryOperation.POWEXP({Integer(36), Integer(1) / Integer(2)})
local d = BinaryOperation.POWEXP({Integer(36264691), Integer(1) / Integer(2)})
local e = BinaryOperation.POWEXP({Integer(357911), Integer(1) / Integer(2)})
local f = BinaryOperation.ADDEXP({BinaryOperation.POWEXP({Integer(8), Integer(1) / Integer(2)}), BinaryOperation.POWEXP({Integer(32), Integer(1) / Integer(2)})})

starttest("rational powers")
testeq(a:autosimplify(), "(2 * (2 ^ 1/2))", a)
testeq(b:autosimplify(), "3", b)
testeq(c:autosimplify(), "6", c)
testeq(d:autosimplify(), "(331 * (331 ^ 1/2))", d)
testeq(e:autosimplify(), "(71 * (71 ^ 1/2))", e)
testeq(f:autosimplify(), "(6 * (2 ^ 1/2))", f)
endtest()