WolframAlpha.com
WolframCloud.com
All Sites & Public Resources...
Products & Services
WolframOne
Mathematica
Development Platform
Programming Lab
Data Science Platform
Finance Platform
SystemModeler
Enterprise Private Cloud
Enterprise Mathematica
WolframAlpha Appliance
Enterprise Solutions
Corporate Consulting
Technical Services
WolframAlpha Business Solutions
Products for Education
WolframAlpha
WolframAlpha Pro
Problem Generator
API
Data Drop
Data Repository
Mobile Apps
Wolfram Cloud App
WolframAlpha for Mobile
WolframAlphaPowered Apps
Services
Paid Project Support
Training
Summer Programs
All Products & Services »
Technologies
Wolfram Language
Revolutionary knowledgebased programming language.
Wolfram Cloud
Central infrastructure for Wolfram's cloud products & services.
Wolfram Science
Technologyenabling science of the computational universe.
Computable Document Format
Computationpowered interactive documents.
Wolfram Engine
Software engine implementing the Wolfram Language.
Wolfram Natural Language Understanding System
Knowledgebased broadly deployed natural language.
Wolfram Data Framework
Semantic framework for realworld data.
Wolfram Universal Deployment System
Instant deployment across cloud, desktop, mobile, and more.
Wolfram Knowledgebase
Curated computable knowledge powering WolframAlpha.
All Technologies »
Solutions
Engineering, R&D
Aerospace & Defense
Chemical Engineering
Control Systems
Electrical Engineering
Image Processing
Industrial Engineering
Mechanical Engineering
Operations Research
More...
Education
All Solutions for Education
Web & Software
Authoring & Publishing
Interface Development
Software Engineering
Web Development
Finance, Statistics & Business Analysis
Actuarial Sciences
Bioinformatics
Data Science
Econometrics
Financial Risk Management
Statistics
More...
Sciences
Astronomy
Biology
Chemistry
More...
Trends
Internet of Things
HighPerformance Computing
Hackathons
All Solutions »
Support & Learning
Learning
Wolfram Language Documentation
Fast Introduction for Programmers
Training
Videos & Screencasts
Wolfram Language Introductory Book
Virtual Workshops
Summer Programs
Books
Need Help?
Support FAQ
Wolfram Community
Contact Support
Premium Support
Premier Service
Technical Services
All Support & Learning »
Company
About
Company Background
Wolfram Blog
Announcements
Events
Contact Us
Work with Us
Careers at Wolfram
Internships
Other Wolfram Language Jobs
Initiatives
Wolfram Foundation
MathWorld
ComputerBased Math
A New Kind of Science
Wolfram Technology for Hackathons
Student Ambassador Program
Wolfram for Startups
Demonstrations Project
Wolfram Innovator Awards
Wolfram + Raspberry Pi
Summer Programs
More...
All Company »
Search
This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.2)
Mathematica
>
Mathematics and Algorithms
>
Formula Manipulation
>
FullSimplify
>
BUILTIN MATHEMATICA SYMBOL
Simplifying Algebraic Expressions
Simplification
Using Assumptions
Working with Special Functions
Tutorials »

Simplify
Factor
Expand
PowerExpand
ComplexExpand
TrigExpand
Element
FunctionExpand
Assuming
RootReduce
TrigFactor
TrigReduce
See Also »

Algebraic Numbers
Algebraic Transformations
Assumptions and Domains
Formula Manipulation
Mathematical Data
Prime Numbers
Trigonometric Functions
New in 6.0: Symbolic Computation
New in 6.0: Mathematics & Algorithms
More About »
FullSimplify
FullSimplify
[
expr
]
tries a wide range of transformations on
expr
involving elementary and special functions, and returns the simplest form it finds.
FullSimplify
does simplification using assumptions.
MORE INFORMATION
FullSimplify
will always yield at least as simple a form as
Simplify
, but may take substantially longer.
The following options can be given:
Assumptions
$Assumptions
default assumptions to append to
assum
ComplexityFunction
Automatic
how to assess the complexity of each form generated
ExcludedForms
{}
patterns specifying forms of subexpression that should not be touched
TimeConstraint
Infinity
for how many seconds to try doing any particular transformation
TransformationFunctions
Automatic
functions to try in transforming the expression
FullSimplify
uses
RootReduce
on expressions that involve
Root
objects.
FullSimplify
does transformations on most kinds of special functions.
With assumptions of the form
ForAll
,
FullSimplify
can simplify expressions and equations involving symbolic functions.
»
You can specify default assumptions for
FullSimplify
using
Assuming
.
EXAMPLES
CLOSE ALL
Basic Examples
(3)
Simplify an expression involving special functions:
Simplify using assumptions:
Prove a simple theorem from the assumption of associativity:
Simplify an expression involving special functions:
In[1]:=
Out[1]=
Simplify using assumptions:
In[1]:=
Out[1]=
Prove a simple theorem from the assumption of associativity:
In[1]:=
Out[1]=
Scope
(8)
Simplify polynomials:
Simplify a hyperbolic expression to an exponential form:
Simplify an exponential expression to a trigonometric form:
Simplify an algebraic number:
Simplify transcendental numbers:
Simplify expressions involving special functions:
Simplify expressions using assumptions:
Prove theorems based on axiom systems:
Any expression can be used as a variable:
Variables not quantified in the axioms are treated as constants:
Prove existence of right inverses assuming left identity and left inverses exist:
Options
(8)
Assumptions
can be given both as an argument and as an option value:
The default value of the
Assumptions
option is
$Assumptions
:
When assumptions are given as an argument,
$Assumptions
are used as well:
Specifying assumptions as an option value prevents
FullSimplify
from using
$Assumptions
:
By default this expression is not simplified:
This complexity function makes
ChebyshevT
more expensive than other functions:
This gives a result in terms of
Arg
[
x
]
:
This specifies that
Log
should not be transformed:
This takes a long time due to expansion of trigonometric functions:
The most timeconsuming transformation is not the one that does the simplification:
With transformations restricted to 100 ms the simplification does not happen:
By default
FullSimplify
does not use
Reduce
:
This makes
FullSimplify
use
Reduce
with respect to
x
over the real domain:
By default
FullSimplify
uses trigonometric identities:
With
Trig
>
False
,
FullSimplify
does not use trigonometric identities:
Applications
(6)
Prove that a solution satisfies its equations:
Simplify expressions involving
Mod
:
Prove that an operation
with associativity, left neutral element and left inverse defines a group:
Prove commutativity from Wolfram's minimal axiom for Boolean algebra:
Prove that a fixed point combinator exists:
Prove a theorem about meet (
) and join (
):
Properties & Relations
(7)
The output is generically equivalent to the input:
FullSimplify
uses a wider range of transformations than
Simplify
:
FullSimplify
uses several expansion transformations, including
Expand
:
TrigExpand
:
PiecewiseExpand
:
FunctionExpand
:
LogicalExpand
:
PowerExpand
makes special assumptions on input and is not used by
FullSimplify
:
ComplexExpand
assumes variables to be real and is also not used by
FullSimplify
:
FullSimplify
uses several factoring transformations, including
Factor
:
FactorSquareFree
:
TrigFactor
:
For algebraic numbers,
RootReduce
and
ToRadicals
are used:
For rational functions,
Together
and
Apart
are used:
Possible Issues
(2)
Some of the transformations used by
FullSimplify
are only generically correct:
Results of simplification of singular expressions are uncertain:
This result is caused by automatic evaluation:
Neat Examples
(1)
FullSimplify
knows about Fermat's last theorem:
SEE ALSO
Simplify
Factor
Expand
PowerExpand
ComplexExpand
TrigExpand
Element
FunctionExpand
Assuming
RootReduce
TrigFactor
TrigReduce
TUTORIALS
Simplifying Algebraic Expressions
Simplification
Using Assumptions
Working with Special Functions
MORE ABOUT
Algebraic Numbers
Algebraic Transformations
Assumptions and Domains
Formula Manipulation
Mathematical Data
Prime Numbers
Trigonometric Functions
New in 6.0: Symbolic Computation
New in 6.0: Mathematics & Algorithms
RELATED LINKS
Implementation notes: Algebra and Calculus
NKSOnline
(
A New Kind of Science
)
New in 3  Last modified in 6
Enable JavaScript to interact with content and submit forms on Wolfram websites.
Learn how »