# Refine

Refine[expr,assum]

gives the form of expr that would be obtained if symbols in it were replaced by explicit numerical expressions satisfying the assumptions assum.

Refine[expr]

uses default assumptions specified by any enclosing Assuming constructs.

# Details and Options • Assumptions can consist of equations, inequalities, domain specifications such as xIntegers, and logical combinations of these.
• Refine can be used on equations, inequalities, and domain specifications.
• Quantities that appear algebraically in inequalities are always assumed to be real.
• Refine is one of the transformations tried by Simplify.
• The following options can be given:
•  Assumptions \$Assumptions default assumptions to append to assum TimeConstraint 30 for how many seconds to try doing any particular transformation

# Examples

open allclose all

## Basic Examples(2) cannot be simplified for arbitrary complex :

For explicit positive numeric expressions, evaluates to :

Refine evaluates to when a symbolic expression is assumed to be positive:

Weaker assumptions may result in a weaker simplification:

Use Assuming to specify the same assumptions for several Refine calls:

## Scope(9)

Nested powers:

Product of powers:

Logarithms:

Trigonometric functions:

Equations and inequalities:

Element statements:

Mod:

Re, Im, Abs, Arg, Conjugate, and Sign:

## Options(4)

### Assumptions(3)

Assumptions can be given both as an argument and as an option value:

The default value of the Assumptions option is \$Assumptions:

When Assumptions is given as an argument, \$Assumptions is used as well:

Specifying Assumptions as an option value prevents Refine from using \$Assumptions:

### TimeConstraint(1)

Checking whether a condition follows from assumptions may take a long time:

If a condition does not follow from assumptions, checking this may still take a long time:

The time spent on a single condition check is restricted by the value of TimeConstraint:

With a time constraint of 1 second, Refine cannot prove that :

## Applications(1)

Write code that uses assumptions; find the number of real roots of :

## Properties & Relations(4)

Refine rules correspond to automatic simplification rules for numeric expressions:

Use Assuming to propagate assumptions:

Use Simplify for more simplification rules:

Use FullSimplify for special function simplification:

## Possible Issues(1)

Expressions appearing algebraically in inequality assumptions are assumed to be real: