-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexample.py
More file actions
58 lines (57 loc) · 1.37 KB
/
example.py
File metadata and controls
58 lines (57 loc) · 1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
from automaton import FiniteStateMachine
a = FiniteStateMachine(
{"a", "b"},
{1, 2, 3, 4, 5},
{1, 5},
{4},
{
(1, "b", 2), (1, "b", 4), (2, "a", 3), (2, "b", 3), (3, "a", 2),
(3, "b", 2), (3, "b", 4), (5, "a", 5), (5, "b", 5), (5, "a", 4)
},
)
b = FiniteStateMachine(
{"0", "1"},
{1, 2},
{1},
{1},
{(1, "1", 1), (1, "0", 2), (2, "1", 2), (2, "0", 1)}
)
c = FiniteStateMachine(
{"a", "b"},
{1, 2, 3},
{1},
{3},
{(1, "b", 2), (2, "a", 2), (2, "b", 2), (2, "a", 3), (3, "a", 3),
(1, "b", 3), (3, "a", 1)}
)
d = FiniteStateMachine(
{"a", "b"},
{1, 2, 3, 4},
{1, 4},
{3, 4},
{(1, "b", 2), (2, "a", 2), (2, "b", 2), (2, "a", 3), (3, "a", 3),
(1, "b", 3), (3, "a", 1), (3, "b", 2), (3, "b", 3)}
)
e = FiniteStateMachine(
{"a", "b"},
{(1, 1), (2, 2), (3, 3)},
{(1, 1)},
{(3, 3)},
{((1, 1), "b", (2, 2)), ((2, 2), "a", (2, 2)), ((2, 2), "b", (2, 2)),
((2, 2), "a", (3, 3)), ((3, 3), "a", (3, 3)), ((1, 1), "b", (3, 3)),
((3, 3), "a", (1, 1))}
)
a1 = FiniteStateMachine(
{"a", "b"},
{1, 2, 3},
{1, 3},
{2},
{(1, "b", 1), (1, "a", 2), (1, "a", 3), (3, "a", 1), (3, "b", 2), (2, "b", 2)}
)
a2 = FiniteStateMachine(
{"a", "b"},
{"X", "Y"},
{"X"},
{"Y"},
{("X", "b", "X"), ("X", "a", "Y"), ("Y", "b", "Y"), ("Y", "a", "X")}
)