showInSum :: Expr -> String
-- If an expression consists of an addition with NO coefficient and no power then it is included in the original set of parentheses defined by 'show (Add x y)'
-- If the coeff of the second term is negative then a minus sign is shown as the connector
showInSum (Atom 1 (Add x y@(Atom c _ _)) 1)
    | c < 0    = showInSum x ++ " - " ++ showInSum (Expr.Add.negate y)     -- Since we are showing a "-" sign we negate the second argument before we show it
    | otherwise = showInSum x ++ " + " ++ showInSum y