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
VirtualMachine
Guides
Virtual Machine Package
Symbols
VirtualMachineAdd
VirtualMachineDefinition
VirtualMachineExecute
VirtualMachineList
VirtualMachine
VirtualMachineObject
VirtualMachineObjectQ
$VirtualMachines
Other
Intel4004
MOS6502
NFA
PDP1
PDP8
RegisterMachine
Wolfram`VirtualMachine`
V
i
r
t
u
a
l
M
a
c
h
i
n
e
O
b
j
e
c
t
V
i
r
t
u
a
l
M
a
c
h
i
n
e
O
b
j
e
c
t
[
.
.
.
]
r
e
p
r
e
s
e
n
t
s
a
v
i
r
t
u
a
l
m
a
c
h
i
n
e
i
n
s
t
a
n
c
e
c
r
e
a
t
e
d
b
y
V
i
r
t
u
a
l
M
a
c
h
i
n
e
.
D
e
t
a
i
l
s
a
n
d
O
p
t
i
o
n
s
Examples
(
4
)
Basic Examples
(
1
)
Create a "DFA" (deterministic finite automaton) with
V
i
r
t
u
a
l
M
a
c
h
i
n
e
:
I
n
[
1
]
:
=
d
f
a
=
V
i
r
t
u
a
l
M
a
c
h
i
n
e
[
"
D
F
A
"
,
"
T
r
a
n
s
i
t
i
o
n
F
u
n
c
t
i
o
n
"
{
{
q
0
,
0
}
q
1
,
{
q
0
,
1
}
q
1
,
{
q
1
,
0
}
q
2
,
{
q
1
,
1
}
q
1
,
{
q
2
,
0
}
q
2
,
{
q
2
,
1
}
q
1
}
,
"
I
n
i
t
i
a
l
S
t
a
t
e
"
q
0
,
"
A
c
c
e
p
t
i
n
g
S
t
a
t
e
s
"
{
q
2
}
]
O
u
t
[
1
]
=
V
i
r
t
u
a
l
M
a
c
h
i
n
e
O
b
j
e
c
t
M
a
c
h
i
n
e
:
D
F
A
S
t
e
p
C
o
u
n
t
:
0
S
t
a
t
u
s
:
W
a
i
t
i
n
g
I
n
p
u
t
:
{
}
Get a table representing the transition function:
I
n
[
2
]
:
=
d
f
a
[
"
T
r
a
n
s
i
t
i
o
n
T
a
b
l
e
"
]
O
u
t
[
2
]
/
/
T
a
b
l
e
F
o
r
m
=
0
1
⟶
q
0
q
1
q
1
q
1
q
2
q
1
*
q
2
q
2
q
1
Push a list of inputs into the DFA:
I
n
[
3
]
:
=
V
i
r
t
u
a
l
M
a
c
h
i
n
e
E
x
e
c
u
t
e
[
d
f
a
,
"
P
u
s
h
I
n
p
u
t
"
,
{
1
,
1
,
1
,
0
}
]
O
u
t
[
3
]
=
V
i
r
t
u
a
l
M
a
c
h
i
n
e
O
b
j
e
c
t
M
a
c
h
i
n
e
:
D
F
A
S
t
e
p
C
o
u
n
t
:
0
S
t
a
t
u
s
:
W
a
i
t
i
n
g
I
n
p
u
t
:
{
1
,
1
,
1
,
0
}
Run the DFA until it halts:
I
n
[
4
]
:
=
V
i
r
t
u
a
l
M
a
c
h
i
n
e
E
x
e
c
u
t
e
[
d
f
a
,
"
R
u
n
"
,
I
n
f
i
n
i
t
y
]
O
u
t
[
4
]
=
V
i
r
t
u
a
l
M
a
c
h
i
n
e
O
b
j
e
c
t
M
a
c
h
i
n
e
:
D
F
A
S
t
e
p
C
o
u
n
t
:
4
S
t
a
t
u
s
:
H
a
l
t
e
d
(
I
n
p
u
t
A
c
c
e
p
t
e
d
)
I
n
p
u
t
:
{
}
S
c
o
p
e
(
1
)
P
r
o
p
e
r
t
i
e
s
&
R
e
l
a
t
i
o
n
s
(
2
)
S
e
e
A
l
s
o
V
i
r
t
u
a
l
M
a
c
h
i
n
e
▪
V
i
r
t
u
a
l
M
a
c
h
i
n
e
E
x
e
c
u
t
e
▪
V
i
r
t
u
a
l
M
a
c
h
i
n
e
O
b
j
e
c
t
Q
R
e
l
a
t
e
d
G
u
i
d
e
s
▪
V
i
r
t
u
a
l
M
a
c
h
i
n
e
P
a
c
k
a
g
e
"
"