# Revision history [back]

### can't make an obvious simplification

These two functions are inverses, and when I print them, simplifying the first composition to x is obvious. And Sage resolves the second composition to x easily, But Sage simplify or simplify_full doesn't work on the first, which simplifies to x just on inspection, and a boolean test claims they aren't equal. Is there a way to simplify such an obvious function?

a(x)=(2*x-3)^(1/3)+4
b(x)=((x-4)^3+3)/2
print(a(b(x)))
print(b(a(x)))


((x - 4)^3)^(1/3) + 4

x

h(x)=a(b(x))
print(h(x).simplify_full())


(x^3 - 12x^2 + 48x - 64)^(1/3) + 4

bool(((x - 4)^3)^(1/3) + 4 == x)


False

### can't make an obvious simplification

These two functions are inverses, and when I print them, simplifying the first composition to x is obvious. And Sage resolves the second composition to x easily, But Sage simplify or simplify_full doesn't work on the first, which simplifies to x just on inspection, and a boolean test claims they aren't equal. Is there a way to simplify such an obvious function?function? The cube root of a cube should simplify easily.

a(x)=(2*x-3)^(1/3)+4
b(x)=((x-4)^3+3)/2
print(a(b(x)))
print(b(a(x)))


((x - 4)^3)^(1/3) + 4

x

h(x)=a(b(x))
print(h(x).simplify_full())


(x^3 - 12x^2 + 48x - 64)^(1/3) + 4

bool(((x - 4)^3)^(1/3) + 4 == x)


False