add exponentiation
add shortcut boolean evaluation test