Преимущество в том, чтобы быть первым, чтобы копировать левый новый алгоритм? [закрыто]

18

Скажем, я создал новый (DSP) алгоритм. Будет ли у меня какое-то преимущество, если я использую алгоритм с открытым исходным кодом (GPL и т. Д.) С открытым исходным кодом? Из того, что я знаю о лицензировании, это должно блокировать людей от использования точно такого же кода, что и с закрытым исходным кодом, но смогут ли они «переписать» алгоритм как закрытый исходный код?

Примечание: я действительно не знаю, является ли алгоритм новым, но он еще не был выпущен как открытый исходный код. Так как я из Европейского Союза, мне нужно искать патенты на программное обеспечение, если я хочу скопировать его?

Kozuch
источник
21
Я голосую, чтобы закрыть этот вопрос как не по теме, потому что он просит юридических консультаций. На него может правильно ответить только адвокат по ИС для конкретной юрисдикции.
1
Я рекомендую исследовать историю обратного инжиниринга черного ящика. Хотя это не то же самое, что вы спрашиваете, есть много интересной информации о праве ИС, контрактах, реверс-инжиниринге, патентах и ​​т. Д., Которые имеют отношение к делу.
2
@ Снеговик: как вы можете видеть здесь, meta.programmers.stackexchange.com/questions/1655/… , не каждый вопрос, касающийся правовых тем, как правило, не по теме. Я думаю, по крайней мере, по существенным частям этого вопроса наше сообщество может поделиться своими знаниями. Хотя я согласен, что для подробного ответа, вероятно, понадобится адвокат.
Док Браун
2
Этот вопрос был задан 8 часов назад, и он уже имеет 1880 просмотров. Это выглядит как очень популярный и необходимый вопрос. Рад, что кто-то спросил это.
Ярмарка Габриэля
2
Хотя этот вопрос может быть популярным и интересным, приведенные ниже «спорные» ответы наглядно иллюстрируют, почему такие вопросы законности плохо подходят для PSE и почему они здесь не по теме.
Эрик Кинг,

Ответы:

27

Ограничения в лицензиях с авторским левом, таких как GPL, применяются к измененным версиям вашего кода, а также к исходному коду. Таким образом, они не могут просто настроить пробельные символы или стиль скобок, а затем удалить ваше заявление о лицензии.

Однако вы не можете запатентовать / copyright / copyleft / любой другой «алгоритм» в его наиболее абстрактном смысле. Вы можете поставить лицензию на вашу любимую реализацию быстрой сортировки, но вы не можете лицензировать саму быструю сортировку. Если кто-то читает ваш код просто для изучения алгоритма, а затем переписывает алгоритм с нуля по-своему, это нормально.

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

Ixrec
источник
27
Этот ответ содержит некоторую правильную и некоторую дискуссионную информацию, поэтому будьте осторожны. AFAIK, патенты пытались применить к гораздо менее существенным частям программного обеспечения, и их пытались использовать для абстрактных идей, а не только для реализации. Это очень сильно зависит от местного законодательства и сильно отличается даже в разных странах Европы. Публикация нового алгоритма в качестве первого может привести к созданию «известного уровня техники» ( en.wikipedia.org/wiki/Prior_art ), когда кто-то позже пытается запатентовать ту же идею в другой реализации.
Док Браун
10
Oracle v Google не был о реализации Java; напротив, речь шла об API. Я бы очень неохотно сказал, что алгоритмы вообще не патентоспособны, особенно в США.
Сапи
9
Не можете запатентовать алгоритмы? Мы уже забыли о патентах GIF и MP3?
Эндрю Медико
2
@Bakuriu: вы упустили момент. Обладатели патентов GIF и MP3 подали в суд на другие компании за использование алгоритмов (или, по крайней мере, пригрозили предъявить им иск), а не потому, что эти другие компании скопировали конкретную реализацию.
Док Браун
4
@AbhinavGauniyal: Патентование способа сделать что-то совершенно нормально. Это называется патент на процесс / метод. Например, если у вас есть новый способ изготовления автомобильных бамперов, вы можете запатентовать его. Не автомобильные бамперы, а процесс изготовления автомобильных бамперов. Процесс патентов является одним из краеугольных камней патентов на программное обеспечение. Но идея патентов на программное обеспечение вступает в противоречие с другим аспектом патентного права: вы не можете запатентовать математические формулы (по крайней мере, в США). И можно утверждать, что алгоритмы являются частью чистой математики, которую мы называем «информатика».
Slebetman
12

Если вы хотите помешать патентоспособной вещи запатентовать, а затем «закрыть» от большого сообщества, вы можете сделать защитное раскрытие. Например, Cuis Smalltalk сделал это с помощью некоторых новых методов сглаживания:

Фрэнк Шиарар
источник
3
Если вы что-то выпускаете, де-юре это уже не может быть запатентовано, потому что существует уровень техники. Фактически, патентные ведомства во всем мире обычно не заботятся о том, чтобы исследовать это (потому что они не получат за это денег), и допускают практически все патенты, которые не выглядят слишком подозрительными. Если патентообладатель тогда предъявляет иск кому-то, патент не будет храниться в суде (если есть судебный процесс. Они стоят больших денег ...)
Йозеф
2
@Josef Не совсем верно, большинство патентных ведомств (конечно, верно в США и ЕС) в настоящее время являются первыми, но это имеет значение только для изобретений, которые происходят близко друг к другу. Если кто-то публикует (но не патентует) алгоритм, кто-то другой может запатентовать его на следующий день и, возможно, сойти с рук. Конкретные правовые вопросы, связанные с этим, являются сложными, и, безусловно, следует проконсультироваться с юристом в области ИС, если вы пытаетесь это осуществить.
@ Снеговик, чтобы избежать патентования на следующий день, поможет ли это опубликовать в зашифрованном виде, а затем опубликовать ключ через несколько месяцев?
Трихоплакс
1
@ trichoplax Я не знаю, если честно. Я стараюсь быть в курсе этих законов, но это недавнее изменение в США, где я живу. Если бы я попытался сделать это, я бы проконсультировался с адвокатом, который знает больше. Насколько я понимаю, там есть большая серая зона, и кто-то, кто специализируется в законе, должен будет направлять меня.
Просто чтобы прояснить, я намеревался в своем ответе конкретно поговорить об идеях, алгоритмах и т. Д., Потому что многие люди начали говорить об исходном коде, когда ОП спрашивал об алгоритмах . Если вы сомневаетесь (и вы должны быть), обратитесь к юристу по вопросам ИС.
Фрэнк Шиарар
9

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

Будет ли у меня какое-то преимущество, если я использую алгоритм с открытым исходным кодом (GPL и т. Д.) С открытым исходным кодом?

Публикуя исходный код реализации вашего алгоритма под лицензией GPL (я полагаю, это то, что вы имели в виду), вы получаете преимущество демонстрации того, что ваш алгоритм работает, как задумано, и каждый может проверить ваш исходный код, чтобы убедиться, что он не содержит ничего «необычные», такие как серьезные ошибки или вредоносные программы. Возможно, вы получите несколько участников для дальнейших улучшений. А поскольку вы являетесь владельцем авторских прав, вы по-прежнему можете публиковать или продавать свою реализацию другим лицам под другой лицензией.

Другой вопрос в том, принесет ли вам какое-либо преимущество быть первым, кто публикует этот алгоритм. Будучи первым, вы можете попытаться помешать кому-то другому получить патент на этот алгоритм, поскольку ваша реализация послужит своего рода доказательством того, что вы являетесь изобретателем. Но, как правильно заметил @Snowman в комментарии, из-за политики « первым в файл» (в отличие от «изобретателя первым») многих европейских патентных норм это может не сработать.

Из того, что я знаю о лицензировании, это должно блокировать людей от использования точно такого же кода, что и с закрытым исходным кодом, но смогут ли они «переписать» алгоритм как закрытый исходный код?

Вы не позволяете людям публиковать ваш исходный код или его модификации в закрытом коде, а не использовать его внутри коммерческой организации. Вы не позволяете людям публиковать его как открытый или закрытый источник по лицензии, отличной от лицензии GPL. Однако вы не блокируете людей от публикации новой реализации «чистого помещения» вашего алгоритма под произвольной лицензией, которая является реализацией, сделанной только из вашего описания алгоритма, без фактического изучения исходного кода.

Так как я из Европейского Союза, мне нужно искать патенты на программное обеспечение, если я хочу скопировать его?

Хотя законы многих европейских стран формально запрещают патенты на чистые алгоритмы, многие компании обходили эти законы в прошлом, объявляя конкретные алгоритмы «изобретениями, реализованными на компьютере». AFAIK, европейские патентные ведомства не принимали столько алгоритмических патентов, сколько патентные ведомства США в прошлом, и тем не менее они приняли тысячи патентов в течение многих лет, что можно интерпретировать как патенты на алгоритмы. Если эти патенты действительно будут храниться в суде, это другой вопрос, но тот, кто хочет это выяснить, обычно должен будет поставить это перед судом со всеми связанными рисками. В комментариях были упомянуты две наиболее популярные группы примеров: патенты, касающиеся сжатия изображений GIF, и патенты, касающиеся сжатия / распаковки MP3, см. Здесь. для большего количества примеров.

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

Док Браун
источник
Действительно хороший исчерпывающий ответ. У меня просто есть некоторые проблемы с последним абзацем: как я могу искать патенты, которые могут быть нарушены? Я, например, не могу вывести из их названия, могут ли они применяться к моему коду. Я также не знаю всеобъемлющего тематического указателя для них. Поиск по ключевым словам не поможет, поэтому даже Google бесполезен, формулировка может быть совершенно невообразимой для меня. И учитывая тысячи патентов, я не могу проверить их все. На самом деле, фактически невозможно найти патент, который я мог бы нарушить, я могу только подождать и посмотреть,
подаст
1
@cmaster: ваш лучший шанс в Европе - это, вероятно, поисковая система европейского патентного ведомства, см. epo.org/searching.html
Док Браун,
1
@cmaster: вы должны тратить миллионы на адвокатов, занимающихся патентным обзором, фактически читая патенты. Я понимаю, что это работает даже в больших проектах вне программного обеспечения (представьте себе новый автомобиль), потому что они разработаны более «водопадным» способом и имеют меньше идей. Но, конечно, это не практично для программного обеспечения, поэтому крупные компании часто просто кросс-лицензируют патенты, а маленькие не могут защитить себя.
Blaisorblade
5

Вы не можете "копировать левый" алгоритм. «Copyleft» опирается на защиту авторских прав для обеспечения его исполнения, но алгоритмы не защищены авторским правом, поэтому вы не можете «copyleft» алгоритм. Другими словами, ваш вопрос может быть основан на ошибочной предпосылке.

Авторское право может быть использовано только для защиты конкретной реализации, а не идеи алгоритма. Таким образом, вы можете защитить конкретную реализацию алгоритма, используя лицензии на основе авторских прав (например, лицензию в стиле «copyleft»), но это не помешает кому-либо еще создать другую реализацию того же алгоритма. Следовательно, нет никакого способа «копировать левый алгоритм».

В частности, лицензия GPL основана на законе об авторском праве. Закон об авторском праве гласит (приблизительно): никто не может копировать ваш защищенный авторским правом контент без вашего разрешения. Лицензия GPL гласит: Я даю разрешение на копирование защищенного авторским правом контента (кода) при определенных условиях (условиях лицензии «copyleft»). Таким образом, для объектов, защищенных авторским правом, это позволяет загрузить лицензию «с авторским левом» в соответствии с действующим законодательством об авторском праве. Но для вещей, которые не защищены авторским правом, этот подход бесполезен. Закон об авторском праве защищает только творческое выражение, а не идеи. В частности, он не защищает алгоритмы.


Патентное право - это другое дело. В некоторых юрисдикциях возможно получить патент на алгоритм. Это будет сильно зависеть от правовой юрисдикции и, возможно, от специфики вашей ситуации. Вообще говоря, публикация вашего алгоритма может помочь установить предшествующий уровень техники, который не позволяет другим патентовать алгоритм, но детали этого сложны, и лучше проконсультироваться с юристом. В общем, если вы хотите получить исчерпывающий совет по всем вопросам, связанным с патентами на алгоритмы, я советую вам обратиться к юристу по ИС, поскольку это слишком широкий вопрос, чтобы отвечать вообще без знания этой информации.

DW
источник
ИМХО, вопрос не основан на «ошибочной предпосылке», просто он не совсем сформулирован. Я почти уверен, что ОП на самом деле имел в виду открыть исходный код реализацию его алгоритма.
Док Браун
1
@DocBrown: OP также заинтересован в обеспечении соблюдения Лицензии в отношении любых реализаций его чистых комнат его алгоритмов (переписать). Таким образом, DW интерпретация вопроса верна.
Slebetman
3

Copyleft не имеет ничего общего с авторским правом или патентной защитой. Он не обеспечивает никакой защиты для вас, правообладателя, чего бы вы в противном случае не имели.

Однако это имеет отношение к дистрибуции . Copyleft защищает пользователей вашего кода, требуя от вас и всех, кто использует их код, распространять весь исходный код своей коллективной работы и любые изменения, которые они вносят в него. В нем нет ничего, что можно сказать об авторском праве или патентной защите, кроме как предоставить вашему пользователю определенные конкретные права, которые они могли бы не иметь иначе, например, свободу перепроектировать DRM в GPL3.

Роберт Харви
источник