Lessons were learnt from numerical experiments. The basic rules with my last attempt are:
- It's easier to work the other way around: define sequences of operations in order of terseness
and see what numbers come out, rather than define a number and find out what its optimal sequence is.
- Optimal even numbers always end with (*2) . All odd numbers end with (/3) .
- Even numbers can always be constructed from previous ones by multiplying the latter with 2 .
- All patterns are generated in order, namely with binary counting and iterpreting bits as:
0 → (*2) , 1 → (/3) .
- Interpretation of the binary coding shall end at the leftmost bit up, hence with (/3) as the last operation.
- The above rules ( 4 , 5 ) result in even numbers as well; discard them and use rule ( 3 ) instead.
- Our method is brute force in every respect; it's greedy with respect to memory as well as computing time.
- An enormous amount of duplicates will be found, most of them being 0 . Get rid of them as soon as possible.
- Quite fortunately, the first pattern found with odd numbers is always the best. Keep it and discard the rest.
- Finding a contiguous sequence of numbers with their optimal patterns has become a matter of sorting now.
- Given a maximal number of operations, (large) gaps in the contiguous sequence of numbers are expected to occur soon.
- The last attempt (22 bits) was interrupted by the first gap (at 51) in the contiguous sequence of numbers.
Notes. If rule (6) is not taken into account, then sub-optimal results like the one below will be encountered:
2*2*2*2/3*2/3*2*2*2/3 = 8 instead of 2*2*2 = 8
Accompanying program sources and outputs are found at:
MSE publications / references 2021.
Most operations are not commutative nor associative. Concerning rule (6) the following is noticed:
$$
2^{\mbox{ even}}/3 = \mbox{odd} \qquad ; \qquad 2^{\mbox{ odd}}/3 = \mbox{even} = 2^{\mbox{ even}}/3\times 2
$$
Output of my last attempt:
1 = 2*2/3 (#2)
2 = 2 (#0)
3 = 2*2*2*2/3*2/3 (#6)
4 = 2*2 (#1)
5 = 2*2*2*2/3 (#4)
6 = 2*2*2*2/3*2/3*2 (#7)
7 = 2*2*2*2*2*2/3/3 (#7)
8 = 2*2*2 (#2)
9 = 2*2*2*2*2*2/3/3*2*2/3 (#10)
10 = 2*2*2*2/3*2 (#5)
11 = 2*2*2*2/3*2*2*2/3*2*2/3*2/3 (#13)
12 = 2*2*2*2/3*2/3*2*2 (#8)
13 = 2*2*2*2/3*2*2*2/3 (#8)
14 = 2*2*2*2*2*2/3/3*2 (#8)
15 = 2*2*2*2/3*2*2*2*2*2/3*2/3*2/3*2/3 (#16)
16 = 2*2*2*2 (#3)
17 = 2*2*2*2/3*2*2*2/3*2*2/3 (#11)
18 = 2*2*2*2*2*2/3/3*2*2/3*2 (#11)
19 = 2*2*2*2/3*2*2*2/3*2*2/3*2/3*2*2*2/3*2/3 (#19)
20 = 2*2*2*2/3*2*2 (#6)
21 = 2*2*2*2*2*2/3 (#6)
22 = 2*2*2*2/3*2*2*2/3*2*2/3*2/3*2 (#14)
23 = 2*2*2*2/3*2*2*2*2*2/3*2/3*2/3 (#14)
24 = 2*2*2*2/3*2/3*2*2*2 (#9)
25 = 2*2*2*2*2*2*2*2/3*2*2/3*2/3/3 (#14)
26 = 2*2*2*2/3*2*2*2/3*2 (#9)
27 = 2*2*2*2/3*2*2*2*2*2*2*2/3/3*2/3*2/3*2*2/3*2/3 (#22)
28 = 2*2*2*2*2*2/3/3*2*2 (#9)
29 = 2*2*2*2/3*2*2*2/3*2*2/3*2/3*2*2*2/3 (#17)
30 = 2*2*2*2/3*2*2*2*2*2/3*2/3*2/3*2/3*2 (#17)
31 = 2*2*2*2/3*2*2*2*2*2*2*2/3/3*2/3*2/3 (#17)
32 = 2*2*2*2*2 (#4)
33 = 2*2*2*2*2*2*2*2/3*2*2/3*2/3/3*2*2/3 (#17)
34 = 2*2*2*2/3*2*2*2/3*2*2/3*2 (#12)
35 = 2*2*2*2/3*2*2*2*2*2/3*2/3 (#12)
36 = 2*2*2*2*2*2/3/3*2*2/3*2*2 (#12)
37 = 2*2*2*2*2*2/3/3*2*2*2*2/3 (#12)
38 = 2*2*2*2/3*2*2*2/3*2*2/3*2/3*2*2*2/3*2/3*2 (#20)
39 = 2*2*2*2/3*2*2*2/3*2*2/3*2/3*2*2*2*2*2/3/3 (#20)
40 = 2*2*2*2/3*2*2*2 (#7)
41 = 2*2*2*2/3*2*2*2*2*2*2*2/3/3*2/3*2/3*2*2/3 (#20)
42 = 2*2*2*2*2*2/3*2 (#7)
43 = 2*2*2*2*2*2/3/3*2*2*2*2/3*2*2/3*2*2/3*2/3 (#20)
44 = 2*2*2*2/3*2*2*2/3*2*2/3*2/3*2*2 (#15)
45 = 2*2*2*2/3*2*2*2/3*2*2/3*2*2*2/3 (#15)
46 = 2*2*2*2/3*2*2*2*2*2/3*2/3*2/3*2 (#15)
47 = 2*2*2*2/3*2*2*2*2*2*2*2/3/3*2/3 (#15)
48 = 2*2*2*2/3*2/3*2*2*2*2 (#10)
49 = 2*2*2*2*2*2/3/3*2*2*2*2/3*2*2/3 (#15)
50 = 2*2*2*2*2*2*2*2/3*2*2/3*2/3/3*2 (#15)
Especially take notice of the number $27$, which has been mentioned by Christian Blatter in a comment.