Д. Кнут - Искусство программирования том 4 выпуск 4 - 2007 (1119377), страница 17
Текст из файла (страница 17)
Азартные игры были официально запрещены, но это не помешало упомянутым 66 способам стать общеизвестными. Около 965 года епископ Вибольд (*1т'!(ю!6) из Камбраи на севере Франции, разработал игру под названием Ьпдпэ С!ег!сайз, дабы ею моглн насладиться смиренные пастыри, оставаясь при этом достаточно набожными. Его цдея состояла в том, чтобы связать с каждым набором очков одну нз 66 добродетелей в соответствии с приведенной таблицей. Игроки бросают кости, и первый, кто выбросил сочетание очков, соответствующее некоторой добродетели, получает ее. После того как все сочетания окажутся выброшенными, победителем становится наиболее добродетельный из игроков.
Вибольд заметил, что любовь — наилучшая добродетель кз всех. Он разработал сложную систему подсчета очков, по которой две добродетели могли комбинироваться, если сумма очков на всех шести костях для этих добродетелей равнялась 21. Например, так можно скомбинировать любовь и повиновение или целомудрие и ум, и такие комбинации ценились выше любых отдельных добродетелей. Вибольд рассматривал и более сложные варианты игры, в которых вместо точек на костях использовались гласные буквы. Таблица Вибольда была представлена в лексикографнческом порядке, как это сделано выше, при первом описании игры Валдериком (Вайепс) в его Сйгоп!соп Сагпегасеые около 150 лет спустя.
(Рого!ойга Ъаг!па, 134 (Рапэ, 1884), 1007-1016.] сделано для въвэк! п$апаса.ого НННЛ б ь ннп ннп. Нни сира ед ос ь ННЗ благоразумие ННИ умеренность нпп.. НИЗ дружелюбие НПЗ целомудряе Нь.)З милосердие НПП!! послушание НИЗ страх Божий НИЗ предусмотрительность НПИ осторожность НПИ и Н(()) З доброжелательность НЗИ скромность НЗЙ смирение НЗИ доброта НЗЙ великодушие НЙИ мудрость ь !Пь.! сожаление НП(У) р д ь ПП*З воздержанность (ь.(ПЗ удовлетворенность П кзИ безмятежность ПОЗ мастерство юле З простота ПЗЗ гостеприимство ИЗИбере ли ос ь ПЗЗ терпение ПЗИ усердие ьз(14) И бедность ППП мягкость ДЗИ девственность ПИИ уважение ППП благочестие ППЗ снисхождение ЗПИ молитва ЗПИ привязанность ЗЗЗ суд Божий ЗПП бдительность ПЗИ покорность ЗЗП невинность ППИ раскаяние ПИИ исповедь ЗЗЗ зрелость ПЗИ забота ЗПИ постоянство ПЗИум ПЗИ томление ЗИЙ плач ИПИ веселье ЗЗИ сочувствие ЗЙ(И самеаблала,ние ИИЙ повиновение 76 КОМБИНАТОРНЫЙ ПОИСК Однако в другом средневековом манускрипте возможные результаты бросания ко- стей представлены в совершенно ином порядке: ввв иии иии ипп спи пнн аапн д[щи адп ввп в(щп иив иии ипни пип ипн ииа иии иии иин ппн нпа наи пни ннн ппн ппв пни анп спи ннн нна нни ннв нни ннй аппп иди иин пенн пнин вин аин иин аии пнин апн апп ппн ипн иип иин аии вин аин иихф (12) В этом случае автор знал, как следует поступить с повторяющимися значениями, но использовал очень сложный, разработанный для данной конкретной задачи способ обработки ситуаций, когда очки на всех трех костях различны.
[См. Р.В,. ВеПЬопве, Ьйегпанопа) $1аплп'са) Влг1еп, 66 (2000), 123-136.) Забавное стихотворение "СЬаппсе оГ 1Ье Рузе", приписываемое Джону Лидгейту (3оЬп 1уг(пасе), было написано в начале 1400-х годов для вечеринок. Его начальные строфы приглашают каждого человека бросить три игральные кости; в остальных строфах, индексированных в обратном лексикографическом порядке от ааа до ВВП до ...до ННН, приводится 66 веселых описаний характера бросающего. (Полный текст опубликован Э.П. Хаммонд (Е.Р. Напппопд) в Еп~йвгйе огпг)1еп, 69 (1925), 1-16; перевод на современный английский был бы очень кстати.] I ргау 1о уЫ гЬаг еиегу мппбг тлу слеге Мрол йгее г1уле гулЬГ ал Ы и Ьул Ьегте ЯЬегЬег Ье Ье гесЬе)ееэе ог лгеггллге 5о тооге Ье 1аифжл оийег ейез этегге Не гЬаг В л(йу ЬВ )уге го солтегге ТЬеу т йопгЬе Ьаие эигугед талу л гЬгоее Мооге йег сЬаолсе Ы лл йеу тооге Ье Ьлоае.
— ТЬе СЬаилсе об йе Оуве (около 1410) сделано для вувуткиИанаса.ого Раймуид Луллмй. Значительный вклад в комбинаторные концепции внесен энергичным донкнхотствуюшим каталонским поэтом, писателем-романистом, энциклопедистом, преподавателем, мистиком и миссионером по имени Раймон Луллий (Йапюп ЫпП) (около 1232 — 1316). Подход Луллия к знаниям состоял, по сути, в определенин базовых принципов с последующим рассмотрением всех возможных нх сочетаний. Например, одна из глав его 4гл Сошрепшоза 1птешепш' Ъегнагеш (около 1274) начинается с перечисления шестнадцати свойств, присущих Богу: доброта, величие, бессмертие, могущество, мудрость, любовь, добродетель, истина, слава, совершенство, справедливость, великодушие, милосердие, скромность, владычество и терпение.
Затем Луллий пишет ('.е) = 120 кратких эссе (около 80 слов каждое), рассматривающих доброту Бога в связи с величием, доброту в связи с бессмертием и т.д., завершая рассмотрением владычества Бога в связи с терпением. В другой главе 7.2,1 ГЕНЕРАЦИЯ ОСНОВНЫХ КОМБИНАТОРНЫХ ОБЪЕКТОВ 77 он рассматривает семь добродетелей (веру, надежду, милосердие, справедливость, благоразумие, силу духа и умеренность) и семь пороков (чревоугодие, похоть, жадность, леность, гордыню, зависть и гнев), написав (' ) = 91 подраздел, в каждом из которых попарно рассматриваются добродетель н порок.
Другие главы так же систематически разделены на (з) = 28, ('т ) = 105„(4) = 6 и (1е) = 120 подразделов. (Интересно, что было бы, если бы Луллий был знаком со списком Вибольда нз 56 добродетелей? Написал бы он комментарии к каждой из ( з ) = 1540 пар7) Рнс. 44. Иллюстрация из манускрипта, подаренного Раймундом Луллием венецианскому дожу в 1280 году (Из его Аж Решопвггапта, В!Ыю~еса Магс1ава, Ч1 200, 1ойо 3 ) Луллий иллюстрировал свою методологию, изображая круговые диаграммы, наподобие приведенных на рнс. 44.
Фигура слева, Реиз, именует 16 божественных свойств — те же, что перечислены выше, за исключением того, что любовь (апюг) здесь названа волей (вв1ип1аз), а последними четырьмя являются соответственно простота, ранг, милосердие и владычество. Каждому свойству назначена буква, и диаграмма иллюстрирует их взаимоотношения в виде полного графа Кш на множестве вершин (В,С,Р,Е,Е,С,Н,1,К,Ь,М,А1,0,Р,(;1,Я). Фигура справа, иЖигез е1 ияа, показывает семь добродетелей (Ь, с, 4, е, 1, д, Ь), чередующихся с семью порокамии (1, Й, 1, гл, и, о, р); в оригинале рукописи добродетели изображены синими чернилами, а пороки — красными. Обратите внимание, что в этом случае на иллюстрации содержатся два независимых полных графа Кг разных цветов. (Луллий больше не пытается сравнивать каждую отдельную добродетель с каждым отдельным пороком, поскольку и так понятно, что каждая добродетель лучше каждого порока.) Луллнй использовал тот же подход и когда писал о медицине: вместо сопоставления теологических концепций его кяига МЬег Рттрюгит Месбсшю (около 1275) рассматривает сочетания симптомов и лечения.
Луллий также писал книги о философии, логике, юриспруденции, астрологии, зоологии, геометрии, риторике и рыцарстве — всего более 200 работ. Следует отметить, однако, высокую цовторяемосгь его книг. Современные методы сжатия данных, вероятно, привели бы к тому, что сделано для мгвтклп1апаса.ого 78 КОМВИНАТОРНЫЙ ПОИСК 7.2.1 .(г с~ Ь~ 1' ' с р,' Й [Ьг ' Ь г'Ь[ с' с' [Ь Ь г,'д~ [(в' Ь Ь1 3 е [Ь с1Ь ,'Ь:с[с !с [ь;г Ь;. .
~ ' а.' ,,Ь;г ~Ь;г; ,Ь г,с,'Ь) .С б ,'г,о: Рнс. 46. Иллюстрации нз манускрипта Луллня, подаренного королеве Франции (около 1323 года) [Ва4исйе 1 апбевЫЫюГЬе1с КагМоЪе, Сойех 8К РеГег регй. 92, 1ойов 28" аш1 39" [ труды Луллия после сжатия были бы существенно меньшего размера, чем, скажем, Аристотеля. В конечном счете Луллий решил упростить свою систему, работая в основном с группами из девяти элементов. Взгляните, например, на рис. 45, где в окружности, изображенной слева вверху, перечислены только первые девять из всех свойств, присущих Богу (В, С, Р, Е, Е, С, Н, 1, К). В ступенчатой диаграмме, расположенной рядом с окружностью, приведены (в) = 36 пар свойств (ВС, ВР,..., 1К). Добавляя к семи две добродетели — терпение и сострадание, и к семи два порока — ложь и непостоянство, Луллнй рассматривает пары добродетелей и пороков при помощи той же диаграммы.
Он предложил также использовать эту диаграмму для проведения выборов при девяти кандидатах [см. 1. Мс1 сап апг) 3. 7 опдоп, Ягпг)1а Ъц)Лапа, 32 (1992), 21-37[. Вписанные в окружность треугольники (рис. 45„слева внизу) иллюстрируют еще один ключевой аспект подхода Луллия.
Треугольник (В, С,.Р) означает (рвзличность, совместимость, противоположность), треугольник (Е, Е, С) — (начало, средина, конец), а треугольник (Н, 1, К) — (больше, равно, меньше). Зги три вложенных сделано для мгичлгдн$анаса.огя 7.2.1 ГКНЕРАЦИЯ ОСНОВНЫХ КОМБИНАТОРНЫХ ОБЪВКТОВ 79 графа Кз представляют три вида трехзначной логики.
Луллий ранее экспериментировал с другими такими тройками, в особенности тройкой (истинно, неизвестно, ложно). Представление о том, как он использовал зти треугольники, можно получить, познакомившись с анализом Луллием четырех основных элементов (земля, воздух, огонь, вода). Все четыре элемента различны. Земля совместима с огнем, который совместим с воздухом, который совместим с водой, которая совместима с землей.