The Repetition Thresold for Rote Sequences

Authors

Nicolas Ollinger

Jeffrey Shallit

Published

June 25, 2024

Abstract

This is a companion notebook to the paper. It contains all the Walnut code used to produce the results in the paper. It is provided both in HTML format with copyable Walnut code and as Jupyter Notebook to be used in conjonction with JupyWalnut.

We investigate the infinite morphic word \({\bf q}\) defined as follows.

Let \(h\) be the morphism defined by \(h(a) = ab\), \(h(b) = cb\), \(h(c) = a\). This morphism has an infinite fixed point \[{\bf p} = abcbacbabacbabcbabacb \cdots\] Next, define another morphism as follows: \(g(a) = 011\), \(g(b) = 0\), and \(g(c) = 01\). The Rote word we are interested in is \({\bf q} := g({\bf p})\). \[{\bf q} = 0110010011010011001101001100100110011010 \cdots\]

1 The numeration system

Using the licofage tool, we derive a numeration system for \({\bf q}\). To avoid too many dependencies, we directly provide below the numeration system files for inclusion in Walnut. As the addition file is particularily long, you have to click below to display it.

Click here to display the numeration system files
%%file ../Custom Bases/msd_mor.txt
{0, 1, 2, 3}

0 1
0 -> 0
1 -> 1
2 -> 1
3 -> 2

1 1

2 1
0 -> 3
1 -> 1
3 -> 2

3 1
0 -> 0
1 -> 1
2 -> 1
Created file '/home/jovyan/Custom Bases/msd_mor.txt'.
%%file ../Custom Bases/msd_mor_addition.txt
{0, 1, 2, 3} {0, 1, 2, 3} {0, 1, 2, 3}

0 1
0 0 3 -> 36
3 0 3 -> 128
0 3 3 -> 131
0 0 0 -> 0
1 2 3 -> 105
2 1 3 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
2 0 2 -> 105
1 1 2 -> 105

1 0
3 3 0 -> 135

2 1
3 3 1 -> 105
3 0 0 -> 5
3 3 0 -> 76
0 3 0 -> 42
3 1 0 -> 105
1 3 0 -> 105

3 0
3 3 1 -> 105
3 0 0 -> 5
3 3 0 -> 76
0 3 0 -> 35
3 1 0 -> 105
2 3 0 -> 105

4 0
3 3 1 -> 105
3 0 0 -> 51
3 3 0 -> 29
0 3 0 -> 54
1 3 0 -> 105
3 2 0 -> 105

5 0
3 0 0 -> 1

6 1
3 0 0 -> 139
0 0 0 -> 82
3 0 2 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
1 1 2 -> 105

7 0
3 0 0 -> 127
0 0 3 -> 42
3 0 3 -> 15
0 3 3 -> 17
0 0 0 -> 68
3 3 3 -> 75
0 3 0 -> 46
3 0 2 -> 105
3 1 3 -> 105
1 2 3 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
1 1 2 -> 105

8 1
0 0 3 -> 84
0 0 0 -> 88
1 1 3 -> 105
0 2 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 3 -> 105

9 1
3 0 0 -> 139
0 0 3 -> 21
3 0 3 -> 30
0 0 0 -> 82
3 0 2 -> 105
3 1 3 -> 105
1 2 3 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
1 1 2 -> 105

10 0
0 0 3 -> 78
0 0 1 -> 105
1 0 3 -> 105
0 1 3 -> 105

11 0
3 0 0 -> 95
3 0 3 -> 126
0 0 0 -> 35
3 2 1 -> 105
3 1 0 -> 105
2 2 0 -> 105

12 0
3 0 0 -> 4
3 0 3 -> 142

13 1
3 0 0 -> 9
3 0 3 -> 77
0 3 3 -> 96
0 0 0 -> 59
3 3 3 -> 33
3 3 0 -> 141
0 3 0 -> 83
1 1 0 -> 105
3 1 1 -> 105
1 3 1 -> 105
3 3 2 -> 105

14 0
3 0 0 -> 67
3 0 3 -> 126
0 3 3 -> 126
0 0 0 -> 38
3 3 3 -> 18
3 3 0 -> 46
0 3 0 -> 22
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
3 1 1 -> 105
3 2 2 -> 105
1 3 1 -> 105
2 3 2 -> 105

15 0
3 0 0 -> 95
3 0 3 -> 126
0 3 3 -> 16
0 0 0 -> 42
3 3 3 -> 18
3 3 0 -> 49
0 3 0 -> 27
3 2 1 -> 105
3 1 0 -> 105
1 2 0 -> 105
1 3 1 -> 105

16 0
0 3 3 -> 142
0 3 0 -> 124

17 1
0 0 3 -> 12
0 3 3 -> 90
0 0 0 -> 92
0 3 0 -> 39
2 0 0 -> 105
2 1 1 -> 105
1 1 0 -> 105
2 3 3 -> 105
1 3 1 -> 105

18 1
3 0 0 -> 6
3 0 3 -> 114
0 3 3 -> 55
0 0 0 -> 59
3 3 3 -> 98
0 3 0 -> 39
1 1 0 -> 105
3 1 1 -> 105
1 3 1 -> 105

19 0
3 0 0 -> 53
3 0 3 -> 121
0 3 3 -> 55
0 0 0 -> 40
3 3 3 -> 98
0 3 0 -> 39
3 2 1 -> 105
3 1 0 -> 105
1 2 0 -> 105
1 3 1 -> 105

20 0
0 0 3 -> 126
0 3 3 -> 90
0 0 0 -> 41
0 3 0 -> 39
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
2 3 3 -> 105
1 3 1 -> 105

21 0
0 3 3 -> 126
0 0 0 -> 35
0 3 0 -> 91
1 3 0 -> 105
2 3 1 -> 105
2 2 0 -> 105

22 1
3 0 0 -> 99
3 0 3 -> 114
0 3 3 -> 119
0 0 0 -> 113
3 3 3 -> 98
0 3 0 -> 106
3 1 2 -> 105
3 0 1 -> 105
2 0 0 -> 105
2 1 1 -> 105
1 1 0 -> 105
1 3 1 -> 105
2 3 2 -> 105

23 1
3 0 0 -> 99
0 0 3 -> 126
3 0 3 -> 19
0 0 0 -> 93
3 1 2 -> 105
3 0 1 -> 105
2 0 0 -> 105
1 2 1 -> 105
2 1 1 -> 105
1 1 0 -> 105
0 2 0 -> 105
3 2 3 -> 105
2 2 2 -> 105

24 1
3 0 0 -> 6
0 0 3 -> 16
3 0 3 -> 19
0 0 0 -> 94
1 2 1 -> 105
1 1 0 -> 105
0 2 0 -> 105
3 2 3 -> 105
3 1 1 -> 105

25 0
0 0 0 -> 1

26 0
0 0 3 -> 104
0 0 0 -> 109
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105
1 1 3 -> 105
0 2 3 -> 105
2 0 3 -> 105

27 1
0 0 0 -> 113
0 3 0 -> 106
2 0 0 -> 105
2 1 1 -> 105
1 1 0 -> 105
1 3 1 -> 105
2 3 2 -> 105

28 0
3 0 0 -> 118
0 0 0 -> 42
3 2 1 -> 105
3 1 0 -> 105
1 2 0 -> 105

29 0
3 0 0 -> 80
3 0 3 -> 61
0 3 3 -> 43
0 0 0 -> 71
3 3 3 -> 44
3 3 0 -> 48
0 3 0 -> 74
3 0 2 -> 105
3 1 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
0 3 2 -> 105
1 3 3 -> 105
1 1 2 -> 105

30 0
3 0 0 -> 136
0 0 3 -> 42
3 0 3 -> 15
0 3 3 -> 17
0 0 0 -> 111
3 3 3 -> 75
0 3 0 -> 49
3 0 1 -> 105
1 0 0 -> 105
1 1 1 -> 105
0 2 1 -> 105
0 1 0 -> 105
3 1 3 -> 105
1 2 3 -> 105

31 0
3 0 0 -> 49
0 0 3 -> 5
3 0 3 -> 24
0 3 3 -> 34
0 0 0 -> 110
3 3 3 -> 75
0 3 0 -> 87
2 0 1 -> 105
1 0 0 -> 105
0 3 1 -> 105
1 1 1 -> 105
0 1 0 -> 105
2 1 3 -> 105
1 3 3 -> 105

32 0
3 0 0 -> 46
0 0 3 -> 5
3 0 3 -> 24
0 3 3 -> 34
0 0 0 -> 23
3 3 3 -> 75
0 3 0 -> 130
2 1 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 2 -> 105
0 3 2 -> 105
1 3 3 -> 105
1 1 2 -> 105

33 0
3 0 0 -> 63
3 0 3 -> 61
0 3 3 -> 43
0 0 0 -> 134
3 3 3 -> 44
3 3 0 -> 125
0 3 0 -> 86
3 0 1 -> 105
1 0 0 -> 105
0 3 1 -> 105
1 1 1 -> 105
0 1 0 -> 105
3 1 3 -> 105
1 3 3 -> 105

34 0
3 0 0 -> 72
3 0 3 -> 12
0 3 3 -> 126
0 0 0 -> 5
3 3 3 -> 18
3 3 0 -> 49
0 3 0 -> 91
1 3 0 -> 105
2 1 0 -> 105
2 3 1 -> 105
3 1 1 -> 105

35 0
3 3 0 -> 1

36 0
3 0 0 -> 95
3 0 3 -> 126
0 3 3 -> 126
0 0 0 -> 35
3 3 3 -> 18
3 3 0 -> 49
0 3 0 -> 91
3 2 1 -> 105
3 1 0 -> 105
1 3 0 -> 105
2 3 1 -> 105
2 2 0 -> 105

37 0
3 3 1 -> 105
3 0 0 -> 28
3 3 0 -> 29
0 3 0 -> 54
3 1 0 -> 105
1 3 0 -> 105

38 0
3 0 0 -> 1
3 3 3 -> 142
3 3 0 -> 13
0 3 0 -> 1

39 1
0 0 0 -> 102
0 3 0 -> 137
0 1 1 -> 105
1 0 1 -> 105
2 0 2 -> 105
0 3 2 -> 105
1 1 2 -> 105

40 0
0 0 0 -> 35
0 3 0 -> 116
1 3 0 -> 105
2 3 1 -> 105
2 2 0 -> 105

41 0
3 0 0 -> 118
0 0 0 -> 35
3 3 0 -> 97
0 3 0 -> 116
3 2 1 -> 105
3 1 0 -> 105
1 3 0 -> 105
2 3 1 -> 105
2 2 0 -> 105
3 3 2 -> 105

42 0
0 3 0 -> 1

43 0
0 3 3 -> 126
0 0 0 -> 5
0 3 0 -> 91
1 3 0 -> 105
2 1 0 -> 105
2 3 1 -> 105

44 0
3 0 0 -> 49
0 0 3 -> 25
3 0 3 -> 24
0 3 3 -> 17
0 0 0 -> 73
3 3 3 -> 75
0 3 0 -> 49
1 1 3 -> 105
0 1 1 -> 105
1 0 1 -> 105

45 1
0 0 0 -> 107
0 0 2 -> 105

46 0
0 0 3 -> 78
0 0 2 -> 105
1 0 3 -> 105
0 1 3 -> 105

47 0
0 0 0 -> 109
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105

48 0
0 0 3 -> 10

49 0
0 0 0 -> 26
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105

50 0
3 0 0 -> 53
3 0 3 -> 121
0 3 3 -> 119
0 0 0 -> 52
3 3 3 -> 98
0 3 0 -> 69
3 2 1 -> 105
3 1 0 -> 105
1 3 0 -> 105
2 3 1 -> 105
2 2 0 -> 105

51 0
3 3 1 -> 105
3 0 0 -> 35
3 3 0 -> 76
0 3 0 -> 42
1 3 0 -> 105
3 2 0 -> 105

52 0
3 3 1 -> 105
3 0 0 -> 35
3 3 0 -> 76
0 3 0 -> 35
3 2 0 -> 105
2 3 0 -> 105

53 0
3 0 0 -> 7
0 0 0 -> 58
3 3 0 -> 48
0 3 0 -> 74
3 1 2 -> 105
3 0 1 -> 105
1 0 0 -> 105
1 1 1 -> 105
1 2 2 -> 105
0 2 1 -> 105
0 1 0 -> 105
0 3 2 -> 105

54 0
0 0 0 -> 5
0 3 0 -> 116
1 3 0 -> 105
2 1 0 -> 105
2 3 1 -> 105

55 0
0 3 3 -> 119
0 0 0 -> 60
0 3 0 -> 69
1 3 0 -> 105
2 1 0 -> 105
2 3 1 -> 105

56 0
3 0 0 -> 67
3 0 3 -> 126
0 0 0 -> 38
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
3 1 1 -> 105
3 2 2 -> 105

57 0
0 0 3 -> 126
0 0 0 -> 41
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105

58 0
0 3 3 -> 126
0 0 0 -> 38
0 3 0 -> 22
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
1 3 1 -> 105
2 3 2 -> 105

59 0
0 0 0 -> 117
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105

60 0
3 0 0 -> 118
0 0 0 -> 35
3 2 1 -> 105
3 1 0 -> 105
2 2 0 -> 105

61 0
3 0 0 -> 95
3 0 3 -> 126
0 0 0 -> 42
3 2 1 -> 105
3 1 0 -> 105
1 2 0 -> 105

62 0
3 0 0 -> 139
0 0 0 -> 64
0 3 0 -> 137
3 0 2 -> 105
2 0 1 -> 105
1 0 0 -> 105
1 1 1 -> 105
1 2 2 -> 105
2 1 2 -> 105
0 2 1 -> 105
0 1 0 -> 105
0 3 2 -> 105

63 0
3 0 0 -> 127
0 0 0 -> 68
3 0 2 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
1 1 2 -> 105

64 0
3 0 0 -> 127
0 0 3 -> 35
3 0 3 -> 15
0 3 3 -> 34
0 0 0 -> 14
3 3 3 -> 75
0 3 0 -> 130
3 0 2 -> 105
2 0 1 -> 105
1 0 0 -> 105
1 1 1 -> 105
1 2 2 -> 105
2 1 2 -> 105
0 2 1 -> 105
0 1 0 -> 105
2 2 3 -> 105
3 1 3 -> 105
0 3 2 -> 105
1 3 3 -> 105

65 0
0 0 3 -> 36
0 3 3 -> 131
0 0 0 -> 66
2 0 1 -> 105
1 0 0 -> 105
1 1 1 -> 105
0 2 1 -> 105
0 1 0 -> 105
1 2 3 -> 105
2 1 3 -> 105

66 0
3 0 0 -> 127
0 0 0 -> 14
0 3 0 -> 130
3 0 2 -> 105
2 0 1 -> 105
1 0 0 -> 105
1 1 1 -> 105
1 2 2 -> 105
2 1 2 -> 105
0 2 1 -> 105
0 1 0 -> 105
0 3 2 -> 105

67 1
3 0 0 -> 103
3 0 3 -> 121
0 3 3 -> 55
0 0 0 -> 122
3 3 3 -> 98
0 3 0 -> 79
1 3 2 -> 105
0 3 1 -> 105
1 2 1 -> 105
1 1 0 -> 105
0 2 0 -> 105
3 1 1 -> 105
3 2 2 -> 105

68 1
0 0 3 -> 126
0 3 3 -> 90
0 0 0 -> 93
0 3 0 -> 79
1 3 2 -> 105
0 3 1 -> 105
2 0 0 -> 105
1 2 1 -> 105
2 1 1 -> 105
1 1 0 -> 105
0 2 0 -> 105
2 3 3 -> 105
2 2 2 -> 105

69 0
3 0 0 -> 80
0 0 0 -> 56
3 3 0 -> 48
0 3 0 -> 32
3 0 2 -> 105
2 0 1 -> 105
1 3 2 -> 105
1 0 0 -> 105
0 3 1 -> 105
1 1 1 -> 105
2 1 2 -> 105
0 1 0 -> 105

70 0
0 0 3 -> 50
0 0 0 -> 62
2 2 3 -> 105
2 0 0 -> 105
1 2 1 -> 105
2 1 1 -> 105
1 1 0 -> 105
0 2 0 -> 105

71 1
0 0 3 -> 126
0 0 0 -> 93
2 0 0 -> 105
1 2 1 -> 105
2 1 1 -> 105
1 1 0 -> 105
0 2 0 -> 105
2 2 2 -> 105

72 1
3 0 0 -> 103
0 0 0 -> 122
1 2 1 -> 105
1 1 0 -> 105
0 2 0 -> 105
3 1 1 -> 105
3 2 2 -> 105

73 1
0 0 0 -> 93
2 0 0 -> 105
1 2 1 -> 105
2 1 1 -> 105
1 1 0 -> 105
0 2 0 -> 105
2 2 2 -> 105

74 0
0 0 3 -> 85
0 3 3 -> 131
0 0 0 -> 26
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105
1 1 3 -> 105
2 0 3 -> 105

75 0
0 0 3 -> 70
3 0 3 -> 10
0 3 3 -> 10
0 0 0 -> 47
0 0 1 -> 105
1 0 3 -> 105
0 1 3 -> 105

76 0
3 0 0 -> 115
0 0 0 -> 25
3 3 3 -> 120
3 3 0 -> 97
0 3 0 -> 123
1 1 0 -> 105
3 1 1 -> 105
1 3 1 -> 105
3 3 2 -> 105

77 0
3 0 0 -> 51
3 2 0 -> 105

78 0
0 0 3 -> 104
0 0 0 -> 45
1 1 3 -> 105
0 2 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 3 -> 105

79 0
0 0 3 -> 101
0 3 3 -> 138
0 0 0 -> 109
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105
1 1 3 -> 105
2 0 3 -> 105

80 0
0 0 3 -> 20
3 0 3 -> 128
0 0 0 -> 26
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105
1 1 3 -> 105
0 2 3 -> 105

81 1
0 0 3 -> 85
0 3 3 -> 131
0 0 0 -> 88
1 1 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 3 -> 105

82 1
0 0 3 -> 36
0 3 3 -> 131
0 0 0 -> 0
1 2 3 -> 105
2 1 3 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
2 0 2 -> 105
1 1 2 -> 105

83 1
0 0 3 -> 11
0 3 3 -> 31
0 0 0 -> 102
0 3 0 -> 137
2 1 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 2 -> 105
0 3 2 -> 105
1 3 3 -> 105
1 1 2 -> 105

84 0
3 0 0 -> 6
0 0 3 -> 126
3 0 3 -> 19
0 3 3 -> 90
0 0 0 -> 41
3 3 3 -> 10
0 3 0 -> 39
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
3 2 3 -> 105
3 1 1 -> 105
2 3 3 -> 105
1 3 1 -> 105

85 0
3 0 0 -> 6
0 0 3 -> 126
3 0 3 -> 19
0 0 0 -> 41
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
3 2 3 -> 105
3 1 1 -> 105

86 0
0 0 0 -> 23
0 3 0 -> 130
0 1 1 -> 105
1 0 1 -> 105
2 0 2 -> 105
0 3 2 -> 105
1 1 2 -> 105

87 0
3 0 0 -> 46
0 0 0 -> 23
0 3 0 -> 130
0 1 1 -> 105
1 0 1 -> 105
2 0 2 -> 105
0 3 2 -> 105
1 1 2 -> 105

88 1
0 0 0 -> 0
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
2 0 2 -> 105
1 1 2 -> 105

89 0
3 0 0 -> 80
0 0 0 -> 71
3 3 0 -> 48
0 3 0 -> 74
3 0 2 -> 105
0 1 1 -> 105
1 0 1 -> 105
0 3 2 -> 105
1 1 2 -> 105

90 0
3 0 0 -> 6
3 0 3 -> 114
0 3 3 -> 119
0 0 0 -> 60
3 3 3 -> 98
0 3 0 -> 69
1 3 0 -> 105
2 1 0 -> 105
2 3 1 -> 105
3 1 1 -> 105

91 0
3 0 0 -> 115
0 0 0 -> 5
3 3 0 -> 97
0 3 0 -> 116
1 3 0 -> 105
2 1 0 -> 105
2 3 1 -> 105
3 1 1 -> 105
3 3 2 -> 105

92 0
3 0 0 -> 103
0 0 0 -> 117
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
3 1 1 -> 105
3 2 2 -> 105

93 0
3 0 0 -> 103
3 0 3 -> 121
0 3 3 -> 119
0 0 0 -> 117
3 3 3 -> 98
0 3 0 -> 106
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
3 1 1 -> 105
3 2 2 -> 105
1 3 1 -> 105
2 3 2 -> 105

94 0
0 0 0 -> 117
0 3 0 -> 106
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
1 3 1 -> 105
2 3 2 -> 105

95 0
3 0 0 -> 118
0 0 0 -> 42
3 3 0 -> 97
0 3 0 -> 123
3 2 1 -> 105
3 1 0 -> 105
1 2 0 -> 105
1 3 1 -> 105
3 3 2 -> 105

96 0
0 3 0 -> 3
2 3 0 -> 105

97 0
0 0 3 -> 57
3 0 3 -> 100
0 3 3 -> 81
0 0 0 -> 26
3 3 3 -> 48
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105
1 1 3 -> 105

98 1
0 0 3 -> 57
3 0 3 -> 100
0 3 3 -> 81
0 0 0 -> 88
3 3 3 -> 48
1 1 3 -> 105
0 1 1 -> 105
1 0 1 -> 105

99 0
0 0 3 -> 65
3 0 3 -> 140
0 0 0 -> 109
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105
1 1 3 -> 105
0 2 3 -> 105

100 1
0 0 3 -> 20
3 0 3 -> 128
0 0 0 -> 88
1 1 3 -> 105
0 2 3 -> 105
0 1 1 -> 105
1 0 1 -> 105

101 0
0 0 3 -> 36
3 0 3 -> 128
0 0 0 -> 66
2 0 1 -> 105
1 0 0 -> 105
1 1 1 -> 105
0 2 1 -> 105
0 1 0 -> 105
1 2 3 -> 105
2 1 3 -> 105

102 1
0 0 3 -> 36
3 0 3 -> 128
0 0 0 -> 0
1 2 3 -> 105
2 1 3 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
2 0 2 -> 105
1 1 2 -> 105

103 1
3 0 0 -> 139
0 0 3 -> 21
3 0 3 -> 30
0 3 3 -> 81
0 0 0 -> 82
3 3 3 -> 48
3 0 2 -> 105
3 1 3 -> 105
1 2 3 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
1 1 2 -> 105

104 0
0 0 3 -> 36
3 0 3 -> 128
0 3 3 -> 131
0 0 0 -> 66
2 0 1 -> 105
1 0 0 -> 105
1 1 1 -> 105
0 2 1 -> 105
0 1 0 -> 105
1 2 3 -> 105
2 1 3 -> 105

105 1

106 1
0 0 3 -> 11
3 0 3 -> 100
0 3 3 -> 31
0 0 0 -> 102
3 3 3 -> 48
0 3 0 -> 137
2 1 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 2 -> 105
0 3 2 -> 105
1 3 3 -> 105
1 1 2 -> 105

107 0
0 0 3 -> 132

108 1
0 0 3 -> 132

109 0
0 0 3 -> 108

110 0
3 0 0 -> 67
0 0 0 -> 38
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
3 1 1 -> 105
3 2 2 -> 105

111 0
0 0 0 -> 38
0 3 0 -> 22
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
1 3 1 -> 105
2 3 2 -> 105

112 0
3 3 0 -> 2

113 0
3 0 0 -> 103
3 0 3 -> 121
0 0 0 -> 117
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
3 1 1 -> 105
3 2 2 -> 105

114 0
3 0 0 -> 53
3 0 3 -> 121
0 0 0 -> 40
3 2 1 -> 105
3 1 0 -> 105
1 2 0 -> 105

115 1
3 0 0 -> 103
3 0 3 -> 121
0 0 0 -> 122
1 2 1 -> 105
1 1 0 -> 105
0 2 0 -> 105
3 1 1 -> 105
3 2 2 -> 105

116 0
3 0 0 -> 115
0 0 0 -> 5
3 3 3 -> 120
3 3 0 -> 97
0 3 0 -> 116
1 3 0 -> 105
2 1 0 -> 105
2 3 1 -> 105
3 1 1 -> 105
3 3 2 -> 105

117 0
3 0 0 -> 118
0 0 0 -> 35
3 3 3 -> 120
3 3 0 -> 97
0 3 0 -> 116
3 2 1 -> 105
3 1 0 -> 105
1 3 0 -> 105
2 3 1 -> 105
2 2 0 -> 105
3 3 2 -> 105

118 0
3 0 0 -> 118
0 0 0 -> 42
3 3 3 -> 120
3 3 0 -> 97
0 3 0 -> 123
3 2 1 -> 105
3 1 0 -> 105
1 2 0 -> 105
1 3 1 -> 105
3 3 2 -> 105

119 0
3 3 1 -> 105
3 0 0 -> 28
3 3 3 -> 120
3 3 0 -> 89
0 3 0 -> 3
3 1 0 -> 105
2 3 0 -> 105

120 0
3 3 1 -> 105
3 0 0 -> 28
3 3 3 -> 120
3 3 0 -> 89
0 3 0 -> 54
3 1 0 -> 105
1 3 0 -> 105

121 0
3 3 1 -> 105
3 0 0 -> 51
3 3 3 -> 120
3 3 0 -> 89
0 3 0 -> 54
1 3 0 -> 105
3 2 0 -> 105

122 0
0 3 3 -> 119
0 0 0 -> 117
0 3 0 -> 106
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105
1 3 1 -> 105
2 3 2 -> 105

123 1
0 3 3 -> 119
0 0 0 -> 113
0 3 0 -> 106
2 0 0 -> 105
2 1 1 -> 105
1 1 0 -> 105
1 3 1 -> 105
2 3 2 -> 105

124 0
3 3 1 -> 105
3 0 0 -> 28
3 3 0 -> 29
0 3 0 -> 3
3 1 0 -> 105
2 3 0 -> 105

125 0
0 0 0 -> 46

126 0
3 3 3 -> 142
3 3 0 -> 37

127 0
0 0 3 -> 20
3 0 3 -> 128
0 3 3 -> 10
0 0 0 -> 26
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105
1 1 3 -> 105
0 2 3 -> 105

128 1
0 0 3 -> 20
3 0 3 -> 128
0 3 3 -> 10
0 0 0 -> 88
1 1 3 -> 105
0 2 3 -> 105
0 1 1 -> 105
1 0 1 -> 105

129 1
0 0 3 -> 84
0 3 3 -> 10
0 0 0 -> 88
1 1 3 -> 105
0 2 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 3 -> 105

130 0
0 0 3 -> 85
3 0 3 -> 10
0 3 3 -> 131
0 0 0 -> 26
0 0 1 -> 105
1 0 2 -> 105
0 1 2 -> 105
1 1 3 -> 105
2 0 3 -> 105

131 1
0 0 3 -> 85
3 0 3 -> 10
0 3 3 -> 131
0 0 0 -> 88
1 1 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 3 -> 105

132 1
0 0 3 -> 84
3 0 3 -> 10
0 3 3 -> 10
0 0 0 -> 88
1 1 3 -> 105
0 2 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 3 -> 105

133 1
0 0 3 -> 84
3 0 3 -> 10
0 0 0 -> 88
1 1 3 -> 105
0 2 3 -> 105
0 1 1 -> 105
1 0 1 -> 105
2 0 3 -> 105

134 0
0 0 0 -> 38
2 2 1 -> 105
1 2 0 -> 105
2 1 0 -> 105

135 0
3 3 1 -> 105
3 0 0 -> 28
3 3 3 -> 112
3 3 0 -> 29
0 3 0 -> 54
3 1 0 -> 105
1 3 0 -> 105

136 0
3 0 0 -> 127
0 0 0 -> 68
0 3 0 -> 46
3 0 2 -> 105
0 1 1 -> 105
0 2 2 -> 105
1 0 1 -> 105
1 1 2 -> 105

137 0
0 0 3 -> 133
0 3 3 -> 48

138 1
0 0 3 -> 133
0 3 3 -> 48

139 0
0 0 3 -> 129
3 0 3 -> 48

140 1
0 0 3 -> 129
3 0 3 -> 48

141 0
0 0 3 -> 8
3 0 3 -> 48
0 3 3 -> 48

142 0
3 3 0 -> 112
Created file '/home/jovyan/Custom Bases/msd_mor_addition.txt'.

2 Studying factors

We can now define our DFAO with a few lines.

%%file ../Word Automata Library/Mor.txt
{0, 1, 2, 3}

0 0
0 -> 0
1 -> 1
2 -> 1
3 -> 2

1 1

2 0
0 -> 3
1 -> 1
3 -> 2

3 0
0 -> 0
1 -> 1
2 -> 1
Created file '/home/jovyan/Word Automata Library/Mor.txt'.

The first predicate we need is a way to compare factors.

def cut "?msd_mor i<=u & j<=v & u+j=v+i & u<n+i & v<n+j":
def factoreq "?msd_mor ~(Eu,v $cut(i,j,n,u,v) & Mor[u]!=Mor[v])"::
i<=u:13 states - 10ms
 j<=v:13 states - 3ms
  (i<=u&j<=v):145 states - 43ms
   (u+j)=(v+i):1354 states - 1100ms
    ((i<=u&j<=v)&(u+j)=(v+i)):1363 states - 97ms
     u<(n+i):201 states - 47ms
      (((i<=u&j<=v)&(u+j)=(v+i))&u<(n+i)):11655 states - 1501ms
       v<(n+j):201 states - 32ms
        ((((i<=u&j<=v)&(u+j)=(v+i))&u<(n+i))&v<(n+j)):11655 states - 1582ms
Total computation time: 4424ms.

computing cut(...)
 fixing leading zeros:11655 states
  Determinizing: 11655 states
    Progress: Added 100 states - 516 states left in queue - 616 reachable states - 41ms
    Progress: Added 1000 states - 1376 states left in queue - 2376 reachable states - 116ms
    Progress: Added 10000 states - 972 states left in queue - 10972 reachable states - 632ms
  Determinized: 11655 states - 702ms
-----   Minimizing: 11655 states.
   Determinizing: 11655 states
     Progress: Added 100 states - 516 states left in queue - 616 reachable states - 7ms
     Progress: Added 1000 states - 1376 states left in queue - 2376 reachable states - 75ms
     Progress: Added 10000 states - 972 states left in queue - 10972 reachable states - 502ms
   Determinized: 11655 states - 569ms
-----   Minimized:11655 states - 758ms.
  Minimized:11655 states - 758ms.
 fixed leading zeros:11655 states - 1465ms
computed cut(i,j,n,u,v))
computing Mor[...]
computed Mor[u]
computing Mor[...]
computed Mor[v]
computing Mor[u]!=Mor[v]
 comparing (!=):4 states - 4 states
  Computing cross product:4 states - 4 states
  computed cross product:16 states - 1ms
-----   Minimizing: 16 states.
   Determinizing: 16 states
   Determinized: 16 states - 0ms
-----   Minimized:10 states - 0ms.
  Minimized:10 states - 0ms.
 compared (!=):4 states - 4ms
computed Mor[u]!=Mor[v]
Mor[u]!=Mor[v]:10 states - 4ms
 computing cut(i,j,n,u,v))&Mor[u]!=Mor[v]
  computing &:11655 states - 10 states
  Computing cross product:11655 states - 10 states
    Progress: Added 100 states - 505 states left in queue - 605 reachable states - 7ms
    Progress: Added 1000 states - 1549 states left in queue - 2549 reachable states - 47ms
    Progress: Added 10000 states - 1871 states left in queue - 11871 reachable states - 152ms
  computed cross product:13681 states - 197ms
-----    Minimizing: 13681 states.
    Determinizing: 13681 states
      Progress: Added 100 states - 505 states left in queue - 605 reachable states - 4ms
      Progress: Added 1000 states - 1549 states left in queue - 2549 reachable states - 35ms
      Progress: Added 10000 states - 1871 states left in queue - 11871 reachable states - 345ms
    Determinized: 13681 states - 479ms
-----    Minimized:11649 states - 620ms.
   Minimized:11649 states - 620ms.
  computed &:11649 states - 817ms
 computed cut(i,j,n,u,v))&Mor[u]!=Mor[v]
 (cut(i,j,n,u,v))&Mor[u]!=Mor[v]):11649 states - 818ms
  computing quantifier E
   quantifying:11649 states
-----     Minimizing: 11649 states.
     Determinizing: 11649 states
       Progress: Added 100 states - 328 states left in queue - 428 reachable states - 5ms
       Progress: Added 1000 states - 2487 states left in queue - 3487 reachable states - 77ms
       Progress: Added 10000 states - 21254 states left in queue - 31254 reachable states - 1007ms
       Progress: Added 20000 states - 33079 states left in queue - 53079 reachable states - 2120ms
       Progress: Added 30000 states - 39792 states left in queue - 69792 reachable states - 3257ms
       Progress: Added 40000 states - 43524 states left in queue - 83524 reachable states - 4468ms
       Progress: Added 50000 states - 45891 states left in queue - 95891 reachable states - 5907ms
       Progress: Added 60000 states - 49016 states left in queue - 109016 reachable states - 7217ms
       Progress: Added 70000 states - 49922 states left in queue - 119922 reachable states - 8452ms
       Progress: Added 80000 states - 49250 states left in queue - 129250 reachable states - 9931ms
       Progress: Added 90000 states - 48035 states left in queue - 138035 reachable states - 11371ms
       Progress: Added 100000 states - 51773 states left in queue - 151773 reachable states - 12830ms
       Progress: Added 110000 states - 53237 states left in queue - 163237 reachable states - 14353ms
       Progress: Added 120000 states - 51429 states left in queue - 171429 reachable states - 15701ms
       Progress: Added 130000 states - 51329 states left in queue - 181329 reachable states - 17235ms
       Progress: Added 140000 states - 49860 states left in queue - 189860 reachable states - 18708ms
       Progress: Added 150000 states - 51387 states left in queue - 201387 reachable states - 20499ms
       Progress: Added 160000 states - 50307 states left in queue - 210307 reachable states - 22181ms
       Progress: Added 170000 states - 48032 states left in queue - 218032 reachable states - 23629ms
       Progress: Added 180000 states - 48872 states left in queue - 228872 reachable states - 25174ms
       Progress: Added 190000 states - 48662 states left in queue - 238662 reachable states - 26774ms
       Progress: Added 200000 states - 52434 states left in queue - 252434 reachable states - 28389ms
       Progress: Added 210000 states - 53607 states left in queue - 263607 reachable states - 30055ms
       Progress: Added 220000 states - 51469 states left in queue - 271469 reachable states - 31539ms
       Progress: Added 230000 states - 53234 states left in queue - 283234 reachable states - 33656ms
       Progress: Added 240000 states - 55644 states left in queue - 295644 reachable states - 35721ms
       Progress: Added 250000 states - 57089 states left in queue - 307089 reachable states - 37814ms
       Progress: Added 260000 states - 57061 states left in queue - 317061 reachable states - 39865ms
       Progress: Added 270000 states - 56874 states left in queue - 326874 reachable states - 41871ms
       Progress: Added 280000 states - 60053 states left in queue - 340053 reachable states - 43962ms
       Progress: Added 290000 states - 62235 states left in queue - 352235 reachable states - 45960ms
       Progress: Added 300000 states - 65859 states left in queue - 365859 reachable states - 48234ms
       Progress: Added 310000 states - 66500 states left in queue - 376500 reachable states - 50052ms
       Progress: Added 320000 states - 68057 states left in queue - 388057 reachable states - 51948ms
       Progress: Added 330000 states - 69219 states left in queue - 399219 reachable states - 53709ms
       Progress: Added 340000 states - 69872 states left in queue - 409872 reachable states - 55622ms
       Progress: Added 350000 states - 71163 states left in queue - 421163 reachable states - 57544ms
       Progress: Added 360000 states - 72150 states left in queue - 432150 reachable states - 59352ms
       Progress: Added 370000 states - 70018 states left in queue - 440018 reachable states - 61357ms
       Progress: Added 380000 states - 68620 states left in queue - 448620 reachable states - 64978ms
       Progress: Added 390000 states - 67798 states left in queue - 457798 reachable states - 67520ms
       Progress: Added 400000 states - 66933 states left in queue - 466933 reachable states - 70112ms
       Progress: Added 410000 states - 67616 states left in queue - 477616 reachable states - 72492ms
       Progress: Added 420000 states - 69112 states left in queue - 489112 reachable states - 74860ms
       Progress: Added 430000 states - 68894 states left in queue - 498894 reachable states - 76851ms
       Progress: Added 440000 states - 68337 states left in queue - 508337 reachable states - 78768ms
       Progress: Added 450000 states - 67389 states left in queue - 517389 reachable states - 80719ms
       Progress: Added 460000 states - 66674 states left in queue - 526674 reachable states - 82586ms
       Progress: Added 470000 states - 65698 states left in queue - 535698 reachable states - 84586ms
       Progress: Added 480000 states - 61792 states left in queue - 541792 reachable states - 86510ms
       Progress: Added 490000 states - 61042 states left in queue - 551042 reachable states - 88486ms
       Progress: Added 500000 states - 58548 states left in queue - 558548 reachable states - 90663ms
       Progress: Added 510000 states - 55063 states left in queue - 565063 reachable states - 92765ms
       Progress: Added 520000 states - 52042 states left in queue - 572042 reachable states - 94695ms
       Progress: Added 530000 states - 49948 states left in queue - 579948 reachable states - 96905ms
       Progress: Added 540000 states - 47722 states left in queue - 587722 reachable states - 99190ms
       Progress: Added 550000 states - 44998 states left in queue - 594998 reachable states - 101872ms
       Progress: Added 560000 states - 39884 states left in queue - 599884 reachable states - 104262ms
       Progress: Added 570000 states - 33983 states left in queue - 603983 reachable states - 106792ms
       Progress: Added 580000 states - 30122 states left in queue - 610122 reachable states - 109412ms
       Progress: Added 590000 states - 23414 states left in queue - 613414 reachable states - 111871ms
       Progress: Added 600000 states - 17873 states left in queue - 617873 reachable states - 114155ms
       Progress: Added 610000 states - 11493 states left in queue - 621493 reachable states - 116552ms
       Progress: Added 620000 states - 5189 states left in queue - 625189 reachable states - 118922ms
     Determinized: 629268 states - 121363ms
-----     Minimized:194 states - 139174ms.
    Minimized:194 states - 139174ms.
   quantified:194 states - 139207ms
   fixing leading zeros:194 states
    Determinizing: 194 states
      Progress: Added 100 states - 73 states left in queue - 173 reachable states - 2ms
    Determinized: 352 states - 7ms
-----     Minimizing: 352 states.
     Determinizing: 352 states
       Progress: Added 100 states - 73 states left in queue - 173 reachable states - 2ms
     Determinized: 352 states - 7ms
-----     Minimized:165 states - 12ms.
    Minimized:165 states - 12ms.
   fixed leading zeros:165 states - 20ms
  computed quantifier (E u , v (cut(i,j,n,u,v))&Mor[u]!=Mor[v]))
  (E u , v (cut(i,j,n,u,v))&Mor[u]!=Mor[v])):165 states - 139231ms
   computing ~(E u , v (cut(i,j,n,u,v))&Mor[u]!=Mor[v]))
    computing ~:165 states
     totalizing:165 states
     totalized:166 states - 2ms
-----      Minimizing: 166 states.
      Determinizing: 166 states
        Progress: Added 100 states - 19 states left in queue - 119 reachable states - 4ms
      Determinized: 166 states - 6ms
-----      Minimized:166 states - 10ms.
     Minimized:166 states - 10ms.
    computed ~:125 states - 30ms
   computed ~(E u , v (cut(i,j,n,u,v))&Mor[u]!=Mor[v]))
   ~(E u , v (cut(i,j,n,u,v))&Mor[u]!=Mor[v])):125 states - 30ms
Total computation time: 141550ms.

3 Critical exponent

eval check52plus "?msd_mor ~Ei,n n>=1 & At,u (t>=i & 2*t<=2*i+3*n & u=t+n) => Mor[t]=Mor[u]":
computed ~:1 states - 12ms
computed ~:2 states - 2ms
n>=1:5 states - 21ms
 t>=i:13 states - 2ms
  (2*t)<=((2*i)+(3*n)):3134 states - 4009ms
   (t>=i&(2*t)<=((2*i)+(3*n))):3146 states - 80ms
    u=(t+n):143 states - 5ms
     ((t>=i&(2*t)<=((2*i)+(3*n)))&u=(t+n)):30393 states - 2144ms
      Mor[t]=Mor[u]:10 states - 0ms
       (((t>=i&(2*t)<=((2*i)+(3*n)))&u=(t+n))=>Mor[t]=Mor[u]):42864 states - 55872ms
        (A t , u (((t>=i&(2*t)<=((2*i)+(3*n)))&u=(t+n))=>Mor[t]=Mor[u])):4 states - 66423ms
         (n>=1&(A t , u (((t>=i&(2*t)<=((2*i)+(3*n)))&u=(t+n))=>Mor[t]=Mor[u]))):1 states - 1ms
          (E i , n (n>=1&(A t , u (((t>=i&(2*t)<=((2*i)+(3*n)))&u=(t+n))=>Mor[t]=Mor[u])))):1 states - 4ms
           ~(E i , n (n>=1&(A t , u (((t>=i&(2*t)<=((2*i)+(3*n)))&u=(t+n))=>Mor[t]=Mor[u])))):1 states - 0ms
Total computation time: 129826ms.
____
TRUE

There is only one factor of power \(5/2\).

def per "?msd_mor p>=1 & p<=n & $factoreq(i,i+p,n-p)":
def exp52 "?msd_mor Ep $per(i,n,p) & 2*n=5*p":
eval testlength "?msd_mor Ai,n (n>=1 & $exp52(i,n)) => (n=10 & $factoreq(i,11,10))":
p>=1:5 states - 2ms
 p<=n:13 states - 1ms
  (p>=1&p<=n):17 states - 0ms
   ((p>=1&p<=n)&factoreq(i,(i+p),(n-p)))):719 states - 8ms
Total computation time: 722ms.

(2*n)=(5*p):920 states - 62ms
 (per(i,n,p))&(2*n)=(5*p)):7 states - 0ms
  (E p (per(i,n,p))&(2*n)=(5*p))):7 states - 0ms
Total computation time: 186ms.

n>=1:5 states - 1ms
 (n>=1&exp52(i,n))):7 states - 0ms
  n=10:4 states - 2ms
   (n=10&factoreq(i,11,10))):7 states - 0ms
    ((n>=1&exp52(i,n)))=>(n=10&factoreq(i,11,10)))):10 states - 2ms
     (A i , n ((n>=1&exp52(i,n)))=>(n=10&factoreq(i,11,10))))):1 states - 1ms
Total computation time: 8ms.
____
TRUE

4 Rote sequence

def novel n "?msd_mor n>=1 & Aj (j<n) => ~$factoreq(i,j,n)":
def twon n "?msd_mor n>=1 & i<2*n":
n>=1:5 states - 2ms
 j<n:13 states - 0ms
  ~factoreq(i,j,n)):165 states - 20ms
   (j<n=>~factoreq(i,j,n))):149 states - 32ms
    (A j (j<n=>~factoreq(i,j,n)))):120 states - 19ms
     (n>=1&(A j (j<n=>~factoreq(i,j,n))))):120 states - 1ms
Total computation time: 75ms.

n>=1:5 states - 1ms
 i<(2*n):70 states - 3ms
  (n>=1&i<(2*n)):70 states - 1ms
Total computation time: 5ms.

The two generated Maple files can be found in novel.mpl and twon.mpl.

5 Uniform recurrence

The word \({\bf q}\) is uniformly recurrent.

def nextgap "?msd_mor Ej i<j & $factoreq(i,j,n) & i+g=j & At (i<t & t<j) => ~$factoreq(i,t,n)":
def maxgap "?msd_mor Ei $nextgap(g,i,n) & Ah (h>g) => ~Ei $nextgap(h,i,n)":
i<j:13 states - 0ms
 (i<j&factoreq(i,j,n))):128 states - 1ms
  (i+g)=j:143 states - 4ms
   ((i<j&factoreq(i,j,n)))&(i+g)=j):487 states - 20ms
    i<t:13 states - 0ms
     t<j:13 states - 0ms
      (i<t&t<j):49 states - 2ms
       ~factoreq(i,t,n)):165 states - 27ms
        ((i<t&t<j)=>~factoreq(i,t,n))):639 states - 576ms
         (A t ((i<t&t<j)=>~factoreq(i,t,n)))):706 states - 459ms
          (((i<j&factoreq(i,j,n)))&(i+g)=j)&(A t ((i<t&t<j)=>~factoreq(i,t,n))))):282 states - 7ms
           (E j (((i<j&factoreq(i,j,n)))&(i+g)=j)&(A t ((i<t&t<j)=>~factoreq(i,t,n)))))):275 states - 3ms
Total computation time: 1103ms.

h>g:13 states - 0ms
 (E i nextgap(h,i,n))):33 states - 14ms
  ~(E i nextgap(h,i,n))):52 states - 2ms
   (h>g=>~(E i nextgap(h,i,n)))):145 states - 25ms
    (A h (h>g=>~(E i nextgap(h,i,n))))):48 states - 15ms
     (nextgap(g,i,n))&(A h (h>g=>~(E i nextgap(h,i,n)))))):170 states - 1ms
      (E i (nextgap(g,i,n))&(A h (h>g=>~(E i nextgap(h,i,n))))))):38 states - 2ms
Total computation time: 65ms.
eval uc "?msd_mor Ag,n (n>=1 & $maxgap(g,n)) => g<=7*n":
n>=1:5 states - 1ms
 (n>=1&maxgap(g,n))):38 states - 0ms
  g<=(7*n):1621 states - 179ms
   ((n>=1&maxgap(g,n)))=>g<=(7*n)):10 states - 29ms
    (A g , n ((n>=1&maxgap(g,n)))=>g<=(7*n))):1 states - 0ms
Total computation time: 698ms.
____
TRUE