# ConditionalExpression

ConditionalExpression[expr,cond]

is a symbolic construct that represents the expression expr when the condition cond is True.

# Details • ConditionalExpression[expr,True] evaluates to expr.
• ConditionalExpression[expr,False] evaluates to Undefined.
• ConditionalExpression is automatically propagated from the arguments of mathematical functions, equations and inequalities, and Boolean operators, i.e. h[ConditionalExpression[e1,c1],ConditionalExpression[e2,c2],] is transformed to ConditionalExpression[h[e1,e2,],c1&&c2&&].
• If a function takes assumptions, then the conditional part of ConditionalExpression arguments gets added to the assumptions.
• Algebraic transformation functions applied to a conditional expression apply to the first argument.

# Examples

open allclose all

## Basic Examples(2)

There is a solution only when :

The answer is valid when the condition is satisfied:

## Scope(16)

Conditional solutions:

Parametrized solutions:

Conditionally valid integration results:

Conditionally valid summation results:

Conditionally valid Fourier series:

ConditionalExpression with True or False conditions:

Mathematical functions with ConditionalExpression arguments:

Boolean combinations of equations and inequalities involving ConditionalExpression:

Inverse of a function with a restricted domain:

Simplify a conditional expression:

Find solutions of equations involving conditional expressions:

Plot a function with a restricted domain:

Piecewise function involving conditional expressions:

Transform a conditionally valid expression:

Conditionally valid expressions in calculus functions:

## Properties & Relations(4)

ConditionalExpression with True condition evaluates to its first argument:

ConditionalExpression with False condition evaluates to Undefined:

ConditionalExpression is propagated from the arguments of mathematical functions:

ConditionalExpression is propagated from the arguments of equations and inequalities:

ConditionalExpression is propagated from the arguments of Boolean functions:

For functions taking the Assumptions option, argument conditions are used as assumptions:

Refine, Simplify, and FullSimplify use the conditions to transform the values:

## Possible Issues(1)

For functions taking the Assumptions option, argument conditions are used as assumptions:

ConditionalExpression subexpressions that are not arguments are not used: