Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.snto-msu.net/showflat.php?Number=8542854&src=arc&showlite=
Дата изменения: Unknown
Дата индексирования: Tue Apr 12 14:04:51 2016
Кодировка: Windows-1251
[теории сложности вычислений]оценки сложности алгоритмов снизу - Public forum of MSU united student networks
Root | Google | Yandex | Mail.ru | Kommersant | Afisha | LAN Support
  
General Discussion >> Study (Archive)

Страницы: 1
krendelkandidat nauk

Рег.: 20.10.2003
Сообщений: 14379
Рейтинг: 10274
  [теории сложности вычислений]оценки сложности алгоритмов снизу
      16.04.2009 03:39
 

заранее прошу не пинать особо за возможно детскую терминологию.

Допустим есть алгоритм X, который вычисляет по объектам O_i(N) результаты R_i(N), при этом количество различных результатов равно K(N).

Есть ли в теории сложности вычислений утверждения о том, что тогда сложность алгоритма X оценивается снизу как ln_2(K(N))?

Vlad
addict

Рег.: 18.09.2004
Сообщений: 446
Рейтинг: 236
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: krendel]
      16.04.2009 04:04
2


 Особого результата тут не нужно. Если выход алгоритма - битовая строка, она будет в худшем случае не короче log K(N), поэтому если она выводится по битам, то это будет тривиальная оценка снизу на число шагов.


krendelkandidat nauk

Рег.: 20.10.2003
Сообщений: 14379
Рейтинг: 10274
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: Vlad]
      16.04.2009 04:10
1

что значит особого результата не нужно?
То что ты написал я и так понимаю.

я вот например сходу не смогу дать "правильное" формальное определение алгоритма и оценки его сложности.

поэтому суть заданного вопроса в том, чтобы меня отослали к какой-нибудь авторитетной книге. Желательно указав название теоремы, или раздел в котором она сформулирована.

ЗЫ
если придираться к твоему доказательству - то откуда ты взял, что результат - битовая строка и выводится по битам?
а если задать определение, что результаты это сроки из дублирующихся битов - то будет ли отсюда следовать что сложность оценивается как 2ln(K(N))?

FMX
Математег

Рег.: 29.05.2006
Сообщений: 3744
Рейтинг: 1502
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: krendel]
      16.04.2009 09:19
 

Мне кажется, что нижняя оценка будет O(K(N)) :o

krendelkandidat nauk

Рег.: 20.10.2003
Сообщений: 14379
Рейтинг: 10274
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: FMX]
      16.04.2009 11:18
 

нет, есть примеры для логарифма (поиск по бинарному дереву).

а вообще это зависит от вычислительной машины.
например, для тьюринга может быть и O(K(N))

reincarnation
knight

Рег.: 12.09.2006
Сообщений: 719
Рейтинг: 666
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: krendel]
      16.04.2009 12:31
1

Quote:

например, для тьюринга может быть и O(K(N))




Для Тьюринга здесь длина результата имеет значение.
а она >= const*log(K(N)), если результаты - это строки в алфавите из >=2 символов
и >=K(N), если алфавит из одного символа

reincarnation
knight

Рег.: 12.09.2006
Сообщений: 719
Рейтинг: 666
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: krendel]
      16.04.2009 12:32
1

Кстати, что такое N?

krendelkandidat nauk

Рег.: 20.10.2003
Сообщений: 14379
Рейтинг: 10274
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: reincarnation]
      16.04.2009 12:55
 

N - некоторое число - характеристика группы объектов.

введено в силу того, что сложность алгоритма принято мерять не для заданных входных данных, а для их набора, задаваемого неким параметром,
например это может быть размер входной матрицы, или размер обрабатываемого графа или что-нибудь подобное, в зависимости от исследуемой задачи.

krendelkandidat nauk

Рег.: 20.10.2003
Сообщений: 14379
Рейтинг: 10274
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: reincarnation]
      16.04.2009 12:59
1

для всех машин существенна длина результата.

например, если определить выч. машину, сказав, что результат выводится в виде 0,1 при этом на вывод
тратится одна вычислительная операция, то будут верны рассуждения поста, написанного Vlad-ом.

просто тьюринг хорошо формализуется и в нем все известно и понятно,
но он довольно далек от практики, поэтому мало интересует.

reincarnation
knight

Рег.: 12.09.2006
Сообщений: 719
Рейтинг: 666
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: krendel]
      16.04.2009 13:03
 

Quote:

но он довольно далек от практики, поэтому мало интересует.



А что интересует?
В общем случае результат - это слово в некотором конечном алфавите
И естественно предполагать, что на "вывод" результата требуется количество операций, пропорциональное его длине.
Тогда аналогичное рассуждение проходит.

krendelkandidat nauk

Рег.: 20.10.2003
Сообщений: 14379
Рейтинг: 10274
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: reincarnation]
      16.04.2009 16:46
 

да, вроде все правильно

Интересует какое-нибудь формальное определение алгоритма, которое можно применять к существующим компьютерам.

Также интересует то, в какой книжке оно сформулировано и хотелось бы чтобы там было подобное утверждение про сложность.

Non_trivial
enthusiast

Рег.: 06.12.2006
Сообщений: 335
Из: ГЗ
Рейтинг: 101
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: krendel]
      16.04.2009 18:31
1

ботай "машину произвольного доступа"

krendelkandidat nauk

Рег.: 20.10.2003
Сообщений: 14379
Рейтинг: 10274
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: Non_trivial]
      16.04.2009 18:54
 

о круто, это уже почти то, о чем я мечтал.

жаль они вычитать умножать и делить не умеют :)
но направление я понял, спасибо



sonte

Рег.: 29.08.2002
Сообщений: 1077
Из: this country
Рейтинг: 461
  Re: [теории сложности вычислений]оценки сложности алгоритмов снизу [re: krendel]
      16.04.2009 21:08
 

Вообще говоря, здесь нужно уточнять используемую модель вычислений и меру сложности. Например, для той модели, в которой определяются сублинейные по памяти классы задач (L, скажем) утверждение будет неверно. (Сложностью в этом случае считается количество используемой reusable памяти, а для ввода и вывода используются, скажем, клавиатура и принтер. Программа, которая просто копирует вход на выход, производит массу различных результатов, но использует лишь константную память.) От модели более-менее не зависят утверждения, верные "с точностью до полинома".
Чтобы правильно задать вопрос, полезно сначала почитать что-нибудь по теории сложности алгоритмов (Ахо, Хопкрофт, Ульман, Построение и анализ вычислительных алгоритмов; Sipser, Introduction to the Theory of Computation; Papadimitriou, Computational Complexity - все эти книги есть в колхозе).

Страницы: 1

General Discussion >> Study (Archive)

Дополнительная информация
0 зарегистрированных и 0 анонимных пользователей просматривают этот форум.

Модераторы:  Basilio, The_Nameless_One 

Печать темы

Права
      Вы можете создавать новые темы
      Вы можете отвечать на сообщения
      HTML отключен
      UBBCode включен

Рейтинг:
Просмотров темы:

Переход в