воскресенье, 6 февраля 2011 г.

Грубой силой

Думая над Роминой задачкойдавайте перенумеруем вершины гиперкуба двоичными числами, так что цифры каждого двоичного числа будут координатами вершины. Можно ли обойти гиперкуб с помощью двух последовательных кодов Грея — решил применить метод грубой силы.

Взял вот такой гиперкуб:

Сгенерировал двадцать четыре подстановки четырех осей и применил их к коду Грея. Исключая тождественную подстановку, всего получилось двадцать три пары кодов. Ни одно применение пары кодов не дало гиперкуба:

Такое впечатление, что и тремя кодами гиперкуб не нарисовать — только четырьмя.

Походу узнал, что у Математики баг при экспорте в gif. Собственно из анимации там работает только avi и swf. Любимый Ромой svg работает, да.

8 комментариев:

  1. Мм... Я не так рассуждал. Берем один код Грея. После первого обхода зарисована ровно половина вершин. Далее, для каждой вершины есть два инцидентных ребра. Поэтому следующий обход определен почти однозначно, с точностью до того, по какому ребру двигать из нулевой вершины. И тут быстро выясняется, что этот обход слишком мал и не прочерчивает все оставшиеся ребра.

    Поэтому более показательно было бы наоборот, стереть все ребра, по которым прошел за первый раз и убедиться, что граф стал несвязным. В связи с этих задача: как нарисовать одним росчерком 2n-мерный куб? То, что нарисовать можно --- очевидно, конечно.

    ОтветитьУдалить
  2. Упс, два предложения "После первого ... инцидентных ребра." следует читать как "После первого обхода зарисована ровно половина ребер. Далее, для каждой вершины есть два непрорисованных инцидентных ребра."

    ОтветитьУдалить
  3. Ну я ж написал грубой силой. Просто проходов по коду Грея много — в зависимости от того, что ты считаешь за оси (x,y,z,u).

    ОтветитьУдалить
  4. Нашел прикольное утверждение: Traversing the polyhedron vertices of an n-dimensional hypercube in Gray code order produces a generator for the n-dimensional Hilbert curve.

    ОтветитьУдалить
  5. Как я сейчас только прочитал As a generalization of the Königsberg bridge problem, Euler showed (without proof) that a connected graph has an Eulerian cycle iff it has no graph vertices of odd degree.

    На самом деле можно иметь даже две вершины нечетного порядка.

    ОтветитьУдалить
  6. Добрый день! Ваш блог участвует в рейтинге научных блогов. Голосование идет до 28 февраля.
    http://www.strf.ru/material.aspx?CatalogId=222&d_no=35195

    ОтветитьУдалить
  7. Вот глупость какая. Написал, попросил чтоб убрали.

    ОтветитьУдалить