({{, (RefLink[InverseFunctions, paclet:ref/InverseFunctions])
is an option for (RefLink[Solve, paclet:ref/Solve]) and related functions that specifies whether inverse functions should be used. }})

OpenersNotesSection(Spacer1)Details

Settings for (RefLink[InverseFunctions, paclet:ref/InverseFunctions]) are:

Inverse functions provide a way to get some, but not in general all, solutions to equations that involve functions which are more complicated than polynomials.

(RefLink[Solve, paclet:ref/Solve])[x+E^x==a,x,InverseFunctions->(RefLink[True, paclet:ref/True])]⟶{{x->a-ProductLog[E^a]}} gives a single solution in terms of (RefLink[ProductLog, paclet:ref/ProductLog]). In fact, there is an infinite number of solutions to the equation, corresponding to different branches of (RefLink[ProductLog, paclet:ref/ProductLog]). (RefLink[Solve, paclet:ref/Solve]) gives only one of these solutions.

When there are several simultaneous equations to be solved in terms of inverse functions, (RefLink[Solve, paclet:ref/Solve]) may fail to find any solutions, even when one exists.

When inverse functions are allowed, (RefLink[Solve, paclet:ref/Solve]) solves for f[expr] first, then applies (RefLink[InverseFunction, paclet:ref/InverseFunction])[f] to the result, equates it to expr, and continues trying to solve for the remainder of the variables.

OpenersPrimaryExamplesSection(Spacer1)Examples  (3)

OpenersExampleSection0(Spacer1)Basic Examples  (3)

By default, (RefLink[Solve, paclet:ref/Solve]) uses inverse functions but prints warning messages:

Solve[f[x]==0,x]

Solve[x+E^x==1,x]

For symbols with the (RefLink[NumericFunction, paclet:ref/NumericFunction]) attribute, symbolic inverses are not used:

Solve[Gamma[x]==a,x]

With (RefLink[InverseFunctions, paclet:ref/InverseFunctions])->(RefLink[True, paclet:ref/True]), (RefLink[Solve, paclet:ref/Solve]) does not print inverse function warning messages:

Solve[f[x]==0,x,InverseFunctions->True]

Solve[x+E^x==1,x,InverseFunctions->True]

Symbolic inverses are used for all symbols:

Solve[Gamma[x]==a,x,InverseFunctions->True]

With (RefLink[InverseFunctions, paclet:ref/InverseFunctions])->(RefLink[False, paclet:ref/False]), (RefLink[Solve, paclet:ref/Solve]) does not use inverse functions:

Solve[f[x]==0,x,InverseFunctions->False]

Here, a method based on (RefLink[Reduce, paclet:ref/Reduce]) is used, as it does not require using inverse functions:

Solve[x+E^x==1,x,InverseFunctions->False]

Solving algebraic equations does not require using inverse functions:

Solve[x^2+1==0,x,InverseFunctions->False]

({{DocumentationFooterIconsRelatedFunction.png, ({{See Also}, {(RefLink[FindRoot, paclet:ref/FindRoot])}})}})

({{DocumentationFooterIconsRelatedTutorial.png, ({{Tutorials}, {▪(RefLinkPlain[Equations in One Variable, paclet:tutorial/EquationsInOneVariable])}})}})