Пересмотр сумм Ландау

10

Я задал (начальный) вопрос о суммах терминов Ландау прежде , пытаясь измерить опасность злоупотребления асимптотическими обозначениями в арифметике, но с переменным успехом.

Теперь, здесь наш рецидивы гуру JeffE делает в основном это:

i=1nΘ(1i)=Θ(Hn)

Хотя конечный результат верен, я думаю, что это неправильно. Почему? Если мы добавим все подразумеваемое существование констант (только верхнюю границу), мы получим

i=1nci1icHn .

Теперь, как мы вычисляем c из c1,,cn ? Ответ, я считаю, что мы не можем: c уже связан для все n , но мы получаем больше ci в n растет. Мы ничего о них не знаем; ci может очень хорошо зависеть от i , поэтому мы не можем принять границу: конечное c может не существовать.

Кроме того, есть тонкий вопрос о том, какая переменная переходит в бесконечность с левой стороны - i или n ? Обе? Если n (для совместимости), что означает Θ(1/i) , зная, что 1in ? Означает ли это не только Θ(1) ? Если это так, мы не можем связать сумму лучше, чем Θ(n) .

Так, где это оставляет нас? Это явная ошибка? Тонкий? Или это просто обычное злоупотребление нотации , и мы не должны смотреть на = знаков , как это один из контекста? Можем ли мы сформулировать (строго) правильное правило для оценки (определенных) сумм членов Ландау?

Я думаю, что главный вопрос: кто ? Если мы посчитаем его постоянным (поскольку он находится в пределах суммы), мы можем легко построить контрпримеры. Если оно не постоянное, я понятия не имею, как его читать.i

Рафаэль
источник
2
Этот вопрос по математике. Хорошее чтение об арифметике с терминами Ландау в целом.
Рафаэль
4
Из приведенной вами ссылки видно, что равенство является либо отношением подмножества, либо отношением «находится в» (т. Е. ). Для вы просто говорите, что он ограничен сверху и снизу константой. Почему бы не выбрать и ? Θ c = min ( c 1 , c 2 , , c n ) C = max ( c 1 , c 2 , , c n )Θc=min(c1,c2,,cn)C=max(c1,c2,,cn)
user834
5
Держись, Баки. Я не написал никакого суммирования с тэтой. Я написал повторение с тэтой в нем. Вы действительно интерпретируете повторение " " как что-то отличное от "Есть функция такой, что "? f Θ x ( x 1 / x ) t ( n ) = f ( n ) + t ( n - 1 )t(n)=Θ(1/n)+t(n1)fΘx(x1/x)t(n)=f(n)+t(n1)
Джефф
4
@ Рафаэль Нет, повторение не математически совпадает с суммой, именно по той причине, которую вы описываете! Повторение содержит ровно один тэта-термин, который однозначно относится к одной функции.
Джефф
2
Это не очень интуитивно понятно - я категорически не согласен, но я думаю, что это вопрос вкуса и опыта.
Джефф

Ответы:

5

Выглядит правильно для меня в следующем соглашении:

Sn=k=1nΘ(1/k) - удобное обозначение для

Существует (как ) такой, чтоx f(x)Θ(1/x)x

Sn=k=1nf(k) .

Таким образом, (или с пометкой в ​​этом ответе ), которую вы получите, на самом деле не зависят от .с к кcickk

При такой интерпретации действительно верно, что .Sn=Θ(Hn)

Фактически, в ответе Джеффа он показывает, что где , поэтому это согласуется с приведенной выше интерпретацией.f Θ ( 1 / k )T(k+1)=f(k)+T(k)fΘ(1/k)

Кажется, что путаница возникает из-за того, что мы мысленно "разворачиваем" и предполагаем разные функции для каждого случая ...ΘΘ

Арьябхата
источник
Jup, но каждая может иметь свою функцию и константу. Таким образом, это соглашение работает только с контекстом, то есть если мы знаем, что термины Ландау проистекают из несколько «равномерного» (по и ) определения слагаемых. к нΘ kn
Рафаэль
2
@ Рафаэль: Кажется бессмысленным развернуть и затем разрешить разные : константы будут зависеть от переменной! и это становится неправильным использованием , предполагая, что переменная равна (или в ответе выше). Даже если мы предположим, что переменная равна , она все равно выглядит для меня бессмысленно. Θ Θ i k nfiΘΘikn
Арьябхата
3
В принципе, каждый может иметь свою собственную постоянную, но в данном контексте вы описали , это ясно , что каждый вовсе не имеет свою собственную константу. ΘΘΘ
Джефф
2
@ Джефф: Точно. Мы можем иметь несколько с их собственными константами, если константы действительно постоянны :-)Θ
Aryabhata
1
@JeffE Так почему бы тебе просто не написать, что ты имеешь в виду, а предпочесть что-то неоднозначное / неправильное? Обратите внимание, что мой обновленный ответ теперь предлагает способ сделать это. Буду признателен за комментарии по этому поводу; отрицательные мотивы без причины не помогают мне понять, почему люди, кажется, отвергают мою точку зрения.
Рафаэль
1

Я думаю, что прибил проблему. По сути: использование терминов Ландау отделяет переменную функции summand от бегущей переменной суммы. Мы все еще (хотим) читать их как идентичные, поэтому путаница.

Чтобы развить это формально, что делает

Sni=1nΘ(f(i))(1)

на самом деле означает? Теперь я предполагаю, что эти позволяют - не - бесконечности; если мы позволим , то каждая такая сумма оценивается как (если слагаемые не зависят от и, следовательно, постоянны), что явно неверно. Вот первая распродажа, которую мы придаем грубым вещам: связан (и постоянен) внутри суммы, но мы все же позволим ей уйти в бесконечность?я п п ∞ & thetas ;Θinnп яΘ(n)ni

Переведя (для верхней границы нижняя оценка работает аналогично), получим(1)

f1,,fnΘ(f). Sni=1nfi(i)

Теперь ясно, что сумма и параметр связаны между собой: мы можем легко определить чтобы они использовали в качестве константы. В примере из вопроса мы можем определить и иметья е я я еiifiifi(j)=i1jΘ(1/j)

i=0nfi(i)"="i=0nΘ(1/j)=i=0nΘ(1/i)

но исходная сумма явно не оценивается как что-то в . Теперь замена на - это только переименование - в может показаться странным, потому что не зависит от соответственно. сумма, но если мы возражаем против этого сейчас , мы никогда не должны были бы использовать внутри в первую очередь (так как он содержит ту же странность).j i Θ i nΘ(Hn)=Θ(logn)jiΘiniΘ

Обратите внимание, что мы даже не использовали, что также может зависеть от .fin

В заключение, предложенная идентичность является фиктивной. Мы, конечно, можем договориться о том, как читать такие суммы, как сокращение строгого расчета. Однако такие соглашения будут несовместимы с определением терминов Ландау (вместе с обычным злоупотреблением ими), их невозможно будет правильно понять без контекста и, по крайней мере, ввести в заблуждение (для начинающих), но в конечном итоге это вопрос вкуса (и безжалостности). ?).

Мне пришло в голову, что мы можем также написать именно то , что мы имеем в виду, и все еще использовать удобные термины Ландау. Мы знаем, что все слагаемые происходят от одной общей функции, подразумевая, что асимптотические оценки используют одни и те же константы. Это теряется, когда мы помещаем в сумму. Так что давайте не будем помещать это туда и писатьΘ

i=1n2i1i(i+1)Θ(i=1n1i)=Θ(Hn)

вместо. Помещение за пределы суммы приводит кΘ

  • математически правильное утверждение и
  • простой термин внутри в мы можем легко иметь дело с (это то , что мы хотим здесь, не так ли?).Θ

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

Рафаэль
источник
Рассмотрим . Я могу определить (используя в качестве константы), поэтому по вашим рассуждениям, верно? Но эта сумма . е я ( п ) = я я Σ п яinifi(n)=iiО ( п 2 )ini=inO(1)=O(n)O(n2)
Xodarap
@Xodarap: По моим рассуждениям, разрушающаяся сумму , как это не работает, потому что муфта внутренняя ы (которые не соединены с , ни ) к ли изменить значение. я н нΘinn
Рафаэль
Я не связываю их с , я просто использую тот факт, что . (И я предполагаю также тот факт, что .)n i k = n k n O ( f ) = O ( n f )nink=nknO(f)=O(nf)
Xodarap
@Xodarap: Но вы не имеете один , но один в слагаемым. Если базовые функции используют (как постоянный множитель), вы должны расширить это, и сумма в итоге окажется правильной. Итак, по моим рассуждениям предложенное вами правило суммирования не работает так, как вы пишете. е я е I Iffifii
Рафаэль
Если у меня есть последовательность , каждая из них - (при условии, что они не увеличиваются по мере развития серии). Вы сказали бы, что добавление из них сгенерирует сумму ? Какая разница, если вместо того, чтобы быть константами, я описываю их как постоянные функции ? 5,1,3,2,n O ( n ) f 1 (O(1)nO(n)f1(x)=5,f2(x)=1,
Xodarap
-1

Если каждое является константой, то существует некоторый такой, что . Так ясно Та же идея для маленьких о.c m a xc i : c ic m a xc i f ( icicmaxci:cicmax

cif(i)cmaxf(i)=cmaxf(i)=O(f(i))

Я думаю, что проблема здесь в том, что . Это (поскольку нет такого, что ), поэтому общая сумма будет . И каждый член равен , что означает общую сумму . Таким образом, нет жестких границ от этого метода.O ( 1 / п ) & epsi ; я1/iΘ(1)o(1/n)ϵп о ( 1 / п ) = O ( 1 ) O ( 1 ) О ( п )i:1/i>ϵno(1/n)=o(1)O(1)O(n)

Я думаю, что ваши вопросы:

  1. Является ли приемлемым ограничение , делающее маленькое o каждого члена и большое o каждого члена, а затем умножение на ? (Ответ: да)ninf(i)n
  2. Есть ли лучший метод? (Ответ: не то, что я знаю.)

Надеюсь, кто-то еще может ответить # 2 более четко.

РЕДАКТИРОВАТЬ: глядя на ваш вопрос еще раз, я думаю, что вы спрашиваете

inΘ(f(n))=Θ(nf(n)) ?

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

РЕДАКТИРОВАТЬ 2: Вы говорите «рассмотрите , тогда нет ». Однозначно верно. Если вы говорите, что является непостоянной функцией , то она, по определению, непостоянна.c m a x c i ici=icmaxcii

Обратите внимание, что если вы определите это таким образом, то - это не , а . В самом деле, если вы определили «константа» для обозначения «любой функции », то любые две функции отличаются на «константу»!Θ ( i ) Θ ( i 2 ) iciiΘ(i)Θ(i2)ii

Возможно, это более простой способ думать об этом: у нас есть последовательность . Какой самый маленький термин в этой последовательности? Ну, это будет зависеть от . Поэтому мы не можем считать термины постоянными.1,12,,1nn

(Специалисты по компьютерам часто лучше знакомы с big-O, поэтому было бы более интуитивно спрашивать, имеет ли постоянный наибольший термин.)1,,n

Чтобы предоставить доказательство: пусть будет наименьшим значением в диапазоне . Тогдаf ( i ) 1 , , n n i f ( i ) n if(imin)f(i)1,,n

inf(i)inf(imin)=nf(imin)=no(f(n))

Аналогичное доказательство может быть сделано для верхней границы.

Наконец, вы пишете, что и в качестве доказательства приводите . Фактически это является контр-доказательством: если «больше», чем , то оно не может быть «меньше», чем , что необходимо для того, чтобы он был . Так что это не может быть .H n = Θ ( log n ) H n n log n Θ ( log n ) o ( n )Hn=o(n)Hn=Θ(logn)HnnlognΘ(logn)o(n)

Xodarap
источник
1) «..то-то есть такой, что ...» - нет, нет. Рассмотрим с . 2) «Я не думаю, что » - 3) . Это - это неправильно. Как , . 4) «(Ответ: да)» - пока я не вижу формального доказательства этого факта, я в это не верю. Кроме того, «умножение на » не то, что произошло в выставленном случае. ( с я ) я N с я = я Н п = О ( п ) Н п ∈ & thetas ; ( пер п ) 1 / я ≠ & thetas ; ( 1 ) O ( 1 / п ) 1 / я 1 / n 1 / i Ω ( 1 / n )cmax(ci)iNci=iHn=o(n)HnΘ(lnn)1/iΘ(1)o(1/n)1/i1/n1/iΩ(1/n)n
Рафаэль
Я думаю, что вы упускаете суть. Ваше доказательство не работает, потому что мы не можем иметь одинаковое в каждом слагаемом и даже не одинаковое для одного и того же слагаемого, но разных . Я думаю, что прибил это; Я составлю ответ в ближайшее время. нfn
Рафаэль
Я до сих пор не понимаю, что вы говорите, поэтому я рад, что вы поняли это :-)
Xodarap