Wolfram Language
Paclet Repository
Community-contributed installable additions to the Wolfram Language
Primary Navigation
Categories
Cloud & Deployment
Core Language & Structure
Data Manipulation & Analysis
Engineering Data & Computation
External Interfaces & Connections
Financial Data & Computation
Geographic Data & Computation
Geometry
Graphs & Networks
Higher Mathematical Computation
Images
Knowledge Representation & Natural Language
Machine Learning
Notebook Documents & Presentation
Scientific and Medical Data & Computation
Social, Cultural & Linguistic Data
Strings & Text
Symbolic & Numeric Computation
System Operation & Setup
Time-Related Computation
User Interface Construction
Visualization & Graphics
Random Paclet
Alphabetical List
Using Paclets
Create a Paclet
Get Started
Download Definition Notebook
Learn More about
Wolfram Language
CodeEquivalenceUtilities
Guides
Code Equivalence Utilities
Tech Notes
Adding New Transformation Rules
Symbols
CodeEquivalentQ
EquivalenceTestData
FromCanonicalForm
MakeCanonicalForm
ToCanonicalForm
TransformHold
TransformRelease
$AllowedEvaluationPatterns
Wolfram`CodeEquivalenceUtilities`
$
A
l
l
o
w
e
d
E
v
a
l
u
a
t
i
o
n
P
a
t
t
e
r
n
s
$
A
l
l
o
w
e
d
E
v
a
l
u
a
t
i
o
n
P
a
t
t
e
r
n
s
r
e
p
r
e
s
e
n
t
s
a
s
e
t
o
f
d
e
f
a
u
l
t
p
a
t
t
e
r
n
s
t
o
a
l
l
o
w
d
u
r
i
n
g
s
a
n
d
b
o
x
e
v
a
l
u
a
t
i
o
n
.
Examples
(
6
)
Basic Examples
(
2
)
Enable messaging for sandbox events:
I
n
[
1
]
:
=
O
n
[
E
v
a
l
u
a
t
e
S
a
f
e
l
y
:
:
u
n
s
a
f
e
]
;
By default, sandbox rules will prevent some evaluations that would otherwise give equivalent outputs::
I
n
[
2
]
:
=
P
u
t
[
R
a
n
g
e
[
1
0
]
,
"
d
a
t
a
.
w
l
"
]
;
I
n
[
3
]
:
=
C
o
d
e
E
q
u
i
v
a
l
e
n
t
Q
[
G
e
t
[
"
d
a
t
a
.
w
l
"
]
,
R
a
n
g
e
[
1
0
]
]
E
v
a
l
u
a
t
e
S
a
f
e
l
y
:
:
u
n
s
a
f
e
:
S
a
n
d
b
o
x
e
d
t
h
e
f
o
l
l
o
w
i
n
g
e
x
p
r
e
s
s
i
o
n
s
:
H
o
l
d
C
o
m
p
l
e
t
e
[
<
<
d
a
t
a
.
w
l
]
O
u
t
[
3
]
=
F
a
l
s
e
Allow an evaluation pattern:
I
n
[
4
]
:
=
$
A
l
l
o
w
e
d
E
v
a
l
u
a
t
i
o
n
P
a
t
t
e
r
n
s
=
H
o
l
d
P
a
t
t
e
r
n
[
G
e
t
[
"
d
a
t
a
.
w
l
"
]
]
;
I
n
[
5
]
:
=
C
o
d
e
E
q
u
i
v
a
l
e
n
t
Q
[
G
e
t
[
"
d
a
t
a
.
w
l
"
]
,
R
a
n
g
e
[
1
0
]
]
O
u
t
[
5
]
=
T
r
u
e
Restore the default value:
I
n
[
6
]
:
=
$
A
l
l
o
w
e
d
E
v
a
l
u
a
t
i
o
n
P
a
t
t
e
r
n
s
=
.
I
n
[
7
]
:
=
C
o
d
e
E
q
u
i
v
a
l
e
n
t
Q
[
G
e
t
[
"
d
a
t
a
.
w
l
"
]
,
R
a
n
g
e
[
1
0
]
]
E
v
a
l
u
a
t
e
S
a
f
e
l
y
:
:
u
n
s
a
f
e
:
S
a
n
d
b
o
x
e
d
t
h
e
f
o
l
l
o
w
i
n
g
e
x
p
r
e
s
s
i
o
n
s
:
H
o
l
d
C
o
m
p
l
e
t
e
[
<
<
d
a
t
a
.
w
l
]
O
u
t
[
7
]
=
F
a
l
s
e
Give a list of patterns:
I
n
[
1
]
:
=
$
A
l
l
o
w
e
d
E
v
a
l
u
a
t
i
o
n
P
a
t
t
e
r
n
s
=
{
_
G
e
t
,
_
P
u
t
}
;
I
n
[
2
]
:
=
C
o
d
e
E
q
u
i
v
a
l
e
n
t
Q
[
(
P
u
t
[
R
a
n
g
e
[
1
0
]
,
"
d
a
t
a
.
w
l
"
]
;
G
e
t
[
"
d
a
t
a
.
w
l
"
]
)
,
R
a
n
g
e
[
1
0
]
]
O
u
t
[
2
]
=
T
r
u
e
I
n
[
3
]
:
=
$
A
l
l
o
w
e
d
E
v
a
l
u
a
t
i
o
n
P
a
t
t
e
r
n
s
=
.
P
r
o
p
e
r
t
i
e
s
&
R
e
l
a
t
i
o
n
s
(
3
)
P
o
s
s
i
b
l
e
I
s
s
u
e
s
(
1
)
S
e
e
A
l
s
o
C
o
d
e
E
q
u
i
v
a
l
e
n
t
Q
"
"