![$B$ $B$](https://dxdy-03.korotkov.co.uk/f/6/1/e/61e84f854bc6258d4108d08d4c4a085282.png)
вычислимо
![$\Leftrightarrow f(B)$ $\Leftrightarrow f(B)$](https://dxdy-03.korotkov.co.uk/f/6/c/f/6cf7e730ff4f54c73a175266462d3d2282.png)
вычислимо (для доказательства по разрешающему алгоритму строим перечисляющие само множество и его дополнение)
И как же вы будете вычислять дополнение
![$B$ $B$](https://dxdy-03.korotkov.co.uk/f/6/1/e/61e84f854bc6258d4108d08d4c4a085282.png)
? Впрочем, я сформулировал немного не ту задачу, что хотел (эта уже почти эквивалентна исходной получилась).
Правильно так:
![$A$ $A$](https://dxdy-02.korotkov.co.uk/f/5/3/d/53d147e7f3fe6e47ee05b88b166bd3f682.png)
разрешимо,
![$f$ $f$](https://dxdy-02.korotkov.co.uk/f/1/9/0/190083ef7a1625fbc75f243cffb9c96d82.png)
- вычислимая биекция между
![$\mathbb{N}$ $\mathbb{N}$](https://dxdy-01.korotkov.co.uk/f/4/f/d/4fd661cfefdf4318d1aa35fb483796b282.png)
и
![$A$ $A$](https://dxdy-02.korotkov.co.uk/f/5/3/d/53d147e7f3fe6e47ee05b88b166bd3f682.png)
. Как соотносятся перечислимость/разрешимость
![$B$ $B$](https://dxdy-03.korotkov.co.uk/f/6/1/e/61e84f854bc6258d4108d08d4c4a085282.png)
и
![$f(B)$ $f(B)$](https://dxdy-03.korotkov.co.uk/f/6/0/7/6072754899a2cde009317bdb88280bf582.png)
?
Не понял, что из себя должно представлять
![$D$ $D$](https://dxdy-04.korotkov.co.uk/f/7/8/e/78ec2b7008296ce0561cf83393cb746d82.png)
.
![$D$ $D$](https://dxdy-04.korotkov.co.uk/f/7/8/e/78ec2b7008296ce0561cf83393cb746d82.png)
должно быть таким, чтобы множество делителей входящих в него чисел, совпадало с
![$S$ $S$](https://dxdy-03.korotkov.co.uk/f/e/2/5/e257acd1ccbe7fcb654708f1a866bfe982.png)
.
В классической конструкции мы из множества
![$S$ $S$](https://dxdy-03.korotkov.co.uk/f/e/2/5/e257acd1ccbe7fcb654708f1a866bfe982.png)
строим множество пар, и во втором элементе кодируем время работы алгоритма, проверяющего первый элемент - за счет этого мы можем проверить корректность пары (нам не надо ждать, пока завершится проверяющий
![$S$ $S$](https://dxdy-03.korotkov.co.uk/f/e/2/5/e257acd1ccbe7fcb654708f1a866bfe982.png)
алгоритм - достаточно дать отработать ему заданное в паре число шагов).
Попробуйте аналогично построить из множества
![$S$ $S$](https://dxdy-03.korotkov.co.uk/f/e/2/5/e257acd1ccbe7fcb654708f1a866bfe982.png)
множество чисел такое, чтобы для каждого числа
![$x$ $x$](https://dxdy-04.korotkov.co.uk/f/3/3/2/332cc365a4987aacce0ead01b8bdcc0b82.png)
из
![$S$ $S$](https://dxdy-03.korotkov.co.uk/f/e/2/5/e257acd1ccbe7fcb654708f1a866bfe982.png)
в
![$D$ $D$](https://dxdy-04.korotkov.co.uk/f/7/8/e/78ec2b7008296ce0561cf83393cb746d82.png)
было ровно одно число, делящееся на
![$x$ $x$](https://dxdy-04.korotkov.co.uk/f/3/3/2/332cc365a4987aacce0ead01b8bdcc0b82.png)
- и чтобы при этом можно было проверять принадлежность чисел
![$D$ $D$](https://dxdy-04.korotkov.co.uk/f/7/8/e/78ec2b7008296ce0561cf83393cb746d82.png)
(т.к. для этого нужно будет запускать перечисление
![$S$ $S$](https://dxdy-03.korotkov.co.uk/f/e/2/5/e257acd1ccbe7fcb654708f1a866bfe982.png)
, то нужно каким-то образом в элементах
![$D$ $D$](https://dxdy-04.korotkov.co.uk/f/7/8/e/78ec2b7008296ce0561cf83393cb746d82.png)
закодировать не только сами элементы
![$S$ $S$](https://dxdy-03.korotkov.co.uk/f/e/2/5/e257acd1ccbe7fcb654708f1a866bfe982.png)
, но и время их перечисления).