/
Text
SYMBOLIC LOGIC
AND
INTELLIGENT MACHINES
EDMUND C. BERKELEY
Berkeley Enterprises, Inc.
Newtonvllle, Massachusetts
REINHOLD PUBLISHING CORPORATION
New York
Chapman & Hall Ltd., London
Э. БЕРКЛИ
СИМВОЛИЧЕСКАЯ
ЛОГИНА
И РАЗУМНЫЕ
МАШИНЫ
Перевод с английского
И. В. СОЛОВЬЕВА
Под редакцией и с предисловием
Г. Н. ПОВАРОВА
Издательство
ИНОСТРАННОЙ ЛИТЕРАТУРЫ
Москва 1961
Аннотация
Эта книга, написанная видным американским популяризатором
кибернетики, представляет собой общедоступное введение в симво-
лическую (математическую) логику и вопросы ее применения к син-
тезу машин, моделирующих некоторые операции человеческого мыш-
ления.
От простейших машин, способных решать элементарные логиче-
ские задачи, автор переходит к современным цифровым автоматиче-
ским счетным машинам, описывает их. структуру и программирование.
Тот, кто интересуется роботами, обнаружит здесь пример составле-
ния логических уравнений, на основе которых можно строить кибер-
нетических «зверьков», обладающих простым поведением.
Книга рассчитана на широкие круги читателей; она может быть
полезна математикам различных специальностей, инженерам, рабо-
тающим в области связи, автоматики и телемеханики, студентам
втузов и др.
Для ее понимания достаточно знания математики и физики в
объеме средней школы.
Редакция литературы по математическим наукам
ПРЕДИСЛОВИЕ РЕДАКТОРА ПЕРЕВОДА
I
С древнейших времен человек непрерывно стремился
сделать свой труд более эффективным и производитель-
ным с помощью все более совершенных и сложных ору-
дий, усиливающих данные ему природой органы. Одни
из этих орудий усиливают наши мускулы, другие — наши
органы чувств, третьи — мозг, центральную нервную сис^
тему и, наконец, остальные представляют собой комби-
нации орудий этих трех видов.
К орудиям, усиливающим наши мускулы, мы давно
привыкли. Эти орудия достигли высокого уровня разви-
тия и дифференциации, применяются в нашей жизни в мас-
совых количествах, способны выполнять разнообразней-
шие функции и намного превосходят органы человеческого
тела по* силе и ловкости. Мы умеем комбинировать в одном
таком орудии и энергетические установки, и обрабатываю-
щий инструмент. Обобщенно эти орудия можно назвать
исполнительными, или рабочими, ору-
диями.
Орудия, усиливающие наши органы чувств, обобщенно
можно назвать чувствительными, или вос-
принимающими, орудиями. В целом они раз-
вивались медленнее, чем исполнительные орудия, ибо,
вообще говоря, они тоньше, деликатнее и сложнее. Однако
сейчас они также достигли высокого уровня развития,
выполняют весьма разнообразные функции и прочно
вошли в нашу жизнь. Может ли человек сейчас работать
без телескопа и микроскопа, без часов и термометра, без
осциллографа, без всего комплекса разнообразной изме-
рительной аппаратуры?
6
Предисловие редактора перевода
Орудия, усиливающие наш мозг, обобщенно можно наз-
вать умствен н ыми, или решающими*),орудиям и.
Такие орудия, разумеется, еще тоньше, еще деликатнее,
еще сложнее. Их подлинный, всесторонний расцвет только-
только начинается. Лишь сейчас умственные орудия при-
обретают обилие форм и функций, и мы еще только при-
выкаем к их своеобразию и разнообразию.
Для ясности скажем сразу же, что умственное, или
решающее, орудие в нашем смысле не есть непременно
какой-то сверхчудовищный «механический мозг», усили-
вающий наш мозг сразу во многих направлениях, как это
делает, например, гипотетический «усилитель умствен-
ных способностей», предложенный английским ученым
Р. В. Эшби. Любой скромный прибор, усиливающий хотя
бы одну, быть может весьма узкую и несложную функцию
мозга, уже есть умственное орудие. При этом, конечно,
вовсе не нужно, чтобы такое орудие было похоже на мозг
по своему физическому строению в большей степени,
чем очки похожи на глаза или паровая машина — на мус-
кулы.
На протяжении веков умственные орудия были пре-
имущественно орудиями памяти и связи: они
усиливали лишь способность мозга хранить поступающую
в него информацию и передавать ее от органов чувств или
заменяющих их чувствительных орудий к мускулам или
заменяющим их исполнительным орудиям. Обе эти функ-
ции — память и связь — тесно связаны друг с другом:
одна есть передача информации во времени, другая —
передача информации в пространстве. Обе функции носят
как бы пассивный характер: информация лишь сохраняется
и распространяется, но не подвергается активной, целе-
направленной переработке.
Уже ветка на дереве, которую какой-нибудь охотник
на мамонтов загибал для лучшего запоминания обратного
пути или для указания своего пути собратьям, была ору-
дием, памяти или соответственно орудием связи, а следова-
тельно, и умственным орудием в указанном выше смысле.
*) Слово «решающий» берется здесь скорее в смысле «прини-
мающий решения о необходимости тех или иных действий», чем
в смысле «ищущий решение какого-либо уравнения или задачи».
Предисловие редактора перевода
7
В дальнейшем появились такие орудия памяти и связи,
как письменность, книгопечатание, фотография, телеграф,
телефон, звукозапись, кино, радио, телевидение и т. д., без
которых совершенно нельзя себе представить современную
цивилизацию.
Таким образом, орудия памяти и связи прочно и разно-
сторонне вошли в жизнь еще в XVIII—XIX веках. Однако
эти два специальных вида умственных орудий, обслужи-
вающие пассивные функции мозга, не раскрывают еще;
всей характерной природы умственных орудий и соста-
вляют лишь преддверие их эволюции.
II
Опыт показывает, что с помощью орудий можно усили-
вать не только память и связь, ио и другие, более актив-
ные функции мозга.
Так, различные управляющие и регулирующие устрой-
ства — назовем их обобщенно управляющими
орудиями — усиливают способность мозга координи-
ровать сложные движения и процессы и отвечать определен-
ными реакциями мускулов и исполнительных орудий на
раздражения органов чувств и чувствительных орудий.
Простейший случай такой координации — координация
раздражений и ответов при повторяющихся, стереотипных
работах, осуществляемая мозгом большей частью с по-
мощью рефлексов, условных (навыки) и безуслов-
ных (инстинкты). Простейшие управляющие орудия и уси-
ливают рефлексы (главным образом навыки) при стерео-
типных работах.
Соединяя управляющие орудия с чувствительными и
исполнительными, помещая первые между вторыми и тре-
тьими вместо человека с его центральной нервной систе-
мой, мы получаем комбинированное, сложное орудие, уси-
ливающее уже не отдельный орган, а систему органов,
весь организм всего человека, хотя, быть может, и в весьма
узкой функции.
Усиление может выражаться просто в облегчении
работы мозга по координации, но может состоять и в пол*
Предисловие редактора перевода
ной передаче этой работы управляющим орудиям. В пос-
леднем случае мы имеем дело с «а в т о м а т о м» — само-
действующим орудием, получающим определенные сигна-
лы из внешней среды или непрерывно следящим за какими-
то ее параметрами и отвечающим на различные изменения
этой среды теми или иными своими действиями.
Таким образом, управляющие орудия составляют как
бы «мозг» автомата, чувствительные орудия — как "бы его
сглаза» и «уши», а исполнительные элементы — его «руки»
и «ноги», хотя большей частью этот «мозг» и очень часто
также эти «глаза» и «уши» оказываются столь бедными
эрзацами наших замечательных натуральных органов, что
их сходство — почти риторическая метонимия. В целом
автомат — это упрощенное искусственное подобие чело-
века, у которого одни способности гипертрофированы (на-
пример, сила, быстрота, ловкость), а другие атрофированы
(например, ум).
Существуют и совсем «примитивные» автоматы, состоя-
щие только из управляющих и исполнительных орудий
и аппаратуры пуска и остановки (скажем, кнопок «пуск»
и «стоп») без каких-либо других чувствительных орудий.
Такие автоматы не могут реагировать на перемены во
внешней среде, в частности на результаты своей собствен-
ной деятельности, и лишь циклически повторяют одни
и те же действия под влиянием «спонтанной активности»
своего искусственного «мозга» (отсюда их название—
«циклические автоматы»).
Спорадически автоматы изобретались еще первобыт-
ными людьми (самодействующие капканы и ловушки).
Самое слово «автомат» появилось в античном обществе
для обозначения самодействующих механических моде-
лей. Вспомним также «театр автоматов» русского изобре-
тателя XVIII века Кулибина. В XIX веке и впервые деся-
тилетия XX века различных автоматов было уже много.
Однако широкое внедрение автоматов и автоматических'
систем в технику* революционизировавшее всю промыш-
ленность, началось лишь в последнее десятилетие, когда
стали систематически осуществлять комплексную автома-
тизацию производства.
Этот расцвет автоматов выразился не только в их коли-
чественном распространении, но иув дальнейшем усложне-
Предисловие редактора перевода 9
нии их «мозга» — управляющих орудий, которые теперь
способны делать нечто большее, чем просто воспроизво-
дить рефлексы.при повторяющихся работах. К чисто упра-
вляющим орудиям, усиливающим координационные функ-
ции мозга, были присоединены орудия для усиления еще
более тонких, сложных и активных функций мозга —
счетно-вычислительных и логических.
Такие счетно-вычислительные и логические орудия
опять-таки были известны очень давно: еще в древности
появились, например, счеты (абак), а в XIX веке—
настольные счетные машины (арифмометры и комптометры)
и счетно-аналитические машины с перфокартами, усили-
вающие не только нашу способность к вычислениям, но
и способность к таким логическим операциям, как сор-
тировка и группировка данных по различным при-
знакам.
В том же XIX веке начали конструировать и чисто логи-
ческие машины, вроде «логического пианино» английского
логика У. С. Джевонса, способные выполнять определен-
ные логические операции над заданными им суждениями,
понятиями и т. д.
Развитые счетно-вычислительные и логические орудия
можно назвать умственными, или р аш а ю щ и-
ми, автоматами, поскольку они представляют собой
соединение не только более простых счетно-вычислитель-
ных или логических орудий, но включают и управляющие
орудия (например, рефлексного типа), согласующие работу
этих простых орудий, а также орудия памяти и связи,
в том числе устройства для вывода информации и чув-
ствительные орудия для ввода информации. Описанные
же выше автоматы, содержащие исполнительные, или
рабочие, орудия, можно для отличия назвать и с-
полнительными, или рабочими, автома-
тами.
Таким образом, подобно голове профессора Доуэля
в известном романе А. Р. Беляева, умственные автоматы
состоят лишь из «мозга», «органов чувств» и «языка».
Подобно этой голове, они лишь «советуют» нам, что делать.
Наиболее сложные из счетно-аналитических машин с пер-
фокартами и логических машин уже можно отнести к умст-
венным автоматам.
10
Предисловие редактора перевода
Подлинный расцвет счетно-вычислительных орудий так-
же наступил лишь в последнее десятилетие, когда были
созданы и получили широкое распространение .и при-
менение быстродействующие вычислительные машины,
способные совершать тысячи арифметических и логических
операций в секунду под управлением специальных упра-
вляющих устройств согласно программам, хранящимся в их
орудиях памяти (запоминающих устройствах). Так как
эти программы можно менять, современные вычислитель-
ные орудия являются универсальными, т. е. могут осуще-
ствлять любые вычислительные работы.
Специализированные логические машины еще остаются
прообразами машин будущего, однако электронные уни-
версальные вычислительные машины путем подходящего
их программирования неоднократно использовались как
орудия усиления не только арифметических и даже не
только логических, но и других способностей мозга. Под-
ходящие программы, введенные в память чашин, заста-
вляли их доказывать теоремы, переводить с одного языка
на другой, играть в шахматы, сочинять музыку и т. п.,
и хотя уровень исполнения у машин фактически ниже
уровня мастеров, тем не менее машины могут принести
здесь пользу даже мастерам, выполняя стандартную часть
их работы и просматривая большое число вариантов за-
мысла.
Благодаря такой широте в усилении функций мозга
умственные автоматы, и в особенности современные боль-
шие вычислительные машины, нередко именуют «искус-
ственным мозгом», «электронным мозгом» и т. п.
Рабочий автомат, «мозг» которого содержит, наряду
с чисто управляющими орудиями, еще и целый умствен-
ный автомат, скажем большую электронную вычислитель-
ную машину, способен к неизмеримо более сложному
и дифференцированному поведению, чем прежние рабочие
автоматы с «мозгом» без счетно-вычислительных и логиче-
ских орудий. Вот почему развитие вычислительных ав-
томатов стало одним из важнейших факторов, обуслови-
вших широкое развертывание автоматизации в последние
годы.
Подводя итоги всей нарисованной картине, нетрудно
сделать вывод, что глубокое своеобразие техники нашего
Предисловие редактора перевода
11
времени определяется в значительной степени тем, что
мы вступили в эру широкого развития и распространения
сложных умственных орудий и сложных автоматов, исполь-
зующих эти орудия в качестве своего «мозга».
III
Все это ставит перед нами ряд интересных и глубоких
вопросов, и в частности:
1) Можно ли создать сложное умственное орудие —
назовем его «полной мозговой машиной»,—которое было бы
вполне эквивалентно нашему мозгу во всех
его творческих функциях или даже пре-
восходило бы его, так что, оснастив эту «полную моз-
говую машину» чувствительными и исполнительными ору-
диями, мы получили бы «механического человека», способ-
ного сделать абсолютно все, что и мы, или даже гораздо
большее?
2) Являются ли универсальные вычислительные маши-
ны, которыми мы располагаем сегодня или будем распола-
гать в обозримом будущем, такими «полными мозговыми
машинами»?
3) Будет ли «полная мозговая машина» (и снабженный
ею автомат) обладать разумом, сознанием,
жизнью или, несмотря на все свое функциональное
сходство с живым мозгом, она останется его мертвой,
хотя и страшно сложной и подвижной, моделью? Или,
быть может, «полная мозговая машина» будет обладать
лишь разумом и сознанием, но не жизнью?
4) Если «полная мозговая машина» должна обладать
разумом, сознанием или жизнью, то будут ли обладать
этими свойствами, хотя бы частично, в зачатках, в проблес-
ках, менее совершенные умственные орудия — «частичные
мозговые машины» (и снабженные ими автоматы)?
5) В частности, обладают ли этими свойствами, хотя бы
частично, в зачатках, в проблесках, существующие «час-
тичные мозговые машины», например универсальные
вычислительные машины или специализированные логи-
ческие машины?
12 Предисловие редактора перевода
Эти вопросы в той или иной форме служат предметом
широкой и нередко острой дискуссии, развернувшейся в
последние годы на фоне развития автоматизации и-триум-
фального шествия электронных вычислительных машин.
Достаточно упомянуть о спорах вокруг кибернетики,
с которой многие связывали положительное решение
вопросов об «искусственном разуме» и «искусственной
жизни».
Как бы то ни было, но «полной мозговой машины»
пока еще, безусловно, не существует. И в этом отноше-
нии на вопрос № 2 из нашего списка надо дать отрицатель-
ный ответ. Но сказать весомое «нет» на вопрос № 1 не так-то
просто. Такой ответ, конечно, должен опираться на глу-
бокий анализ тех конкретных причин, которые делали бы
невозможным построение «полной мозговой машины».
В самом деле, принцип невозможности полной мозговой
машины имел бы, по всей видимости, не меньшее значе-
ние, чем, скажем, принцип невозможности вечного двига-
теля второго рода.
Таким образом, изучение и совершенствование существу-
ющих «частичных мозговых машин», существующих умствен-
ных орудий представляет не только большой практический,
промышленный интерес, но и большой научный, теоретиче-
ский интерес. Даже в случае, если будет доказан принцип
невозможности полной мозговой машины, необходимо уста-
новить точный предел совершенствования умственных ору-
дий. Если же, напротив, полная мозговая машина была бы
построена, то это, конечно, явилось бы событием огромной
важности.
IV
Одним из важнейших теоретических инструментов раз-
вития современных «частичных мозговых машин» и слож-
ных умственных и рабочих автоматов вообще является
математическая, или (как ее еще нередко назы-
вают) символическая, логика.
Математическая логика представляет собой одно из
направлений современной логики, возникшее в XIX веке.
Различные соотношения между понятиями, суждениями
и умозаключениями записываются в ней с помощью сим-
Предисловие редактора перевода
13
волических формул подобно тому, как в математике запи-
сываются соотношения между числами или величинами.
В математической логике стремятся найти для логических
операций расчетные процедуры («алгорифмы»), с помощью
которых эти операции можно было бы выполнять путем
стандартных действий над символическими формулами,
подобно математическим вычислениям.
Такая формализация логических операций способствует
детальному анализу логического строения мысли и откры-
вает поразительные возможности автоматизации логиче-
ских процессов, возможности использовать для их осуще-
ствления автоматические машины. Поэтому математиче-
ская логика является необходимым инструментом для
машинизации умственного труда.
Однако математическая логика важна для техники
не только благодаря ее способности алгоритмизировать
мыслительные процессы для их машинизации. Важнейшее
значение имеет и ее непосредственное применение для ана-
лиза и синтеза самих автоматов и их частей. Возможность
такого применения логики на первый взгляд может пока-
заться неожиданной, но тем не менее оно действительно
возможно и в наши дни играет немалую роль в развитии
«умственных» и других орудий. Особенно широко исполь-
зуется в технике булева алгебра, сформировав-
шаяся как «алгебра логики» еще. в XIX веке
и получившая свое название по имени английского ма-
тематика и логика Дж. Буля. Эта «алгебра логики»
была исторически первым разделом математической
логики.
Сейчас вполне можно говорить о технической
логике как об особом направлении или ветви матема-
тической логики. Другим крупным направлением в мате-
матической логике является теория математи-
ческих доказательств, возникшая из приме-
нения логических вычислений к вопросам оснований мате-
матики. Это направление также достигло значительных
успехов. Математическая *> логика имеет и другие при-
менения, и в целом можно считать, что она вполне
выдержала проверку жизнью, хотя кое-кому в XIX
веке она казалась чем-то очень абстрактным и искус-
ственным.
14
Предисловие редактора перевода
Заметим, что на возможность применения алгебры
логики к технике впервые указано в работах известного
физика П. Эренфеста (1910 г.) и известного специалиста
по гидротехническим сооружениям, впоследствии члена-
корреспондентэ АН СССР Н. М. Герсеванова (1923 г.*).
Систематическое развитие технической логики начинается
с середины 30-х годов с работ русского физика В. И. Шес-
такова, американского математика и инженера К. Э. Шен-
нона и других исследователей.
V
Книга Э, Беркли «Символическая логика и разумные
машины» содержит популярное, общедоступное объяснение
основных методов математической логики и ее приме-
нений к проектированию и программированию автоматов
и вычислительных машин —«частичных мозговых машин»,
как мы называли их выше. Эдмунд Каллис Беркли —
американский математик, конструктор малых рекламных
и учебных роботов, издатель журнала «Computers and
Automation», автор ряда статей и книг.
Беркли называет автоматы более сложного типа и
вычислительные машины «разумными машинами». Он
принимает определение «разума» (intelligence) как спо-
собности учиться на опыте, приобретать и хранить инфор-
мацию, быстро и целесообразно реагировать на новые
ситуации. С этих позиций он отвечает утвердительно на
вопрос о существовании «разумных машин» в современной
технике. В этом смысле будет, например, разумным, хотя
лишь в небольшой степени, автоматический светофор,
управляющий уличным движением с учетом его интенсив-
ности, тем более что такой светофор может работать лучше,
чем регулировщик уличного движений.
Такая концепция разума представляется, конечно,
чрезвычайно * широкой, ибо в этом смысле будет
«разумной» и амеба, и, скажем, сосна (если только не
обращать внимания на то, что их реакции недостаточно
быстры).
По-видимому, то свойство, которое перечисленные авто-
маты и машины действительно разделяют с живыми орга-
Предисловие редактора перевода
15
низмами, точнее было бы называть «относитель-
ной активной приспособляемостью
ко внешней сред е»*). Именно это свойство позво-
ляет автомату или организму реагировать быстро и целе-
сообразно на новые ситуации, в которые он попадает, в отли-
чие от «пассивной приспособляемости», скажем, цикличе-
ского автомата. Конечно, и активная приспособляемость
не безгранична — она относительна и при слишком рез-
ком изменении окружающей среды отказывает.
Если же говорить о собственно разуме, разуме как
способности к мышлению, то мыслят ли рассматриваемые
Беркли машины? Единственными кандидатами на звание
«мыслящей машины» могут быть лишь машины, способ-
ные выполнять логические операции, т. е. специализиро-
ванные логические машины и универсальные вычислитель-
ное машины, ибо какое же мышление возможно без логи-
ческих операций? Автор описывает ряд малых логических
машин, в том числе силлогистическую машину. Мыслят ли
эти машины? Автор говорит:
«...Вы можете сказать, что малая машина не понимает
процесса рассуждения, ибо в ее схему не были введены
какие-либо знания о процессе рассуждения.
Это так. Но то же самое можно сказать о человеке.
Человек не знает, как в его мозгу развертывается про-
цесс рассуждения. Человеческий мозг более недоступен
для исследования, чем вершина горы Эверест».
И далее: «Вы можете сказать, что малая машина
не может изобрести процесс рассуждения или какую-ли-
бо его часть.
Это так. Но достаточно большая и достаточно мощная
машина теоретически должна быть способна сама приду-
мать процесс рассуждения.
*) Это свойство в еще ббльшей мере присуще самонастраиваю-
щимся и самоорганизующимся Системам, успешная разработка кото-
рых началась лишь в самое последнее время. Такие автоматы с
помощью своих чувствительных элементов быстро воспринимают
новую ситуацию и на основе анализа своих ошибок в прошлом и
сведений о настоящем вырабатывают оптимальную линию пове-
дения.
16
Предисловие редактора перевода
И опять-таки, то же самое можно сказать и о человеке:
никакой отдельный человек не изобрел процесса рассужде-
ния, которым пользуются люди. Этот процесс является про-
дуктом шести тысяч лет развития языка, культуры и циви-
лизации, шести тысяч лет развития мышления и вычисле-
ния, непрерывных небольших усовершенствований шагов
рассуждения и непрерывных небольших усовершенство-
ваний изобретений (таких-, как письмо и счеты), помогаю-
щих капризной, несовершенной памяти приматов, которая
так ясно обнаруживается у многих людей, а также у шим-
панзе и других обезьян».
«И, заглядывая в завтра, мы можем быть уверены
в том, что малые рассуждающие машины будут повсюду —
в школах и университетах, в домах и учреждениях; люди
будут использовать их как при обучении процессу рассуж-
дения, так и при получении результатов посредством
строгих рассуждений, выполненных машинами».
Аргументация автора касается существенных пунктов,
и большое будущее логических машин несомненно. Однако
остается ряд более серьезных возражений, которых эта
аргументация не затрагивает. В частности, выражение
«понимать процесс мышления» двусмысленно. Человек дей-
ствительно не знает, какие именно процессы происходят
в его мозгу при том или ином мыслительном акте, и тем
не менее он обладает способностью наблюдать и анализи-
ровать свое мышление.
Дело в том, что человек обладает сознанием,
внутренним субъективным миром, и в рамках этого внут-
реннего субъективного мира он может свободно наблюдать,
различать и формировать свои мысли, смотря на них своим
«духовным оком», если будет позволено воспользоваться
этим старинным термином.
Таким образом, дело обстоит гораздо сложнее, чем это
представляется автору. Можно думать, например, что
современные логические машины не мыслят, а только
моделируют мышление, осуществляя лишь некоторые фор-
мальные, хотя и весьма важные его функции (формальные
логические операции). Существующие логические машины
и вычислительные машины не имеют субъективного внут-
реннего мира, который они бы сознательно могли анали-
зировать. Они считают и размышляют так же, как цирко-
Предисловие редактора перевода
17
вые лошади, которые якобы умеют считать и даже «извле-
кать корни», но на самом деле обладают лишь набором
рефлексов, привитых дрессировщиком.
Однако, хотя по вопросам о наличии разума и мышле-
ния у современных «частичных мозговых машин» с Беркли
можно поспорить, его книга в целом дает хорошее пред-
ставление о строении и работе таких машин и о логи-
ческом анализе их с помощью современного логического
исчисления. В целом она представляет собой полезное посо-
бие, облегчающее инженерам и другим специалистам освое-
ние методов математической логики и показывающее им
возможности машинизации логических операций.
Приводя большое число примеров и применений, автор
просто и порой даже занимательно излагает сложный
материал, подбирает колоритные сопоставления. Так, отме-
чая происхождение понятия класса объектов из наблюде-
ний над реальным миром, автор приводит образную цитату
из известной книги лауреата Нобелевской премии Дж.
Томсона «Предвидимое будущее» о «массовом» производ-
стве в природе —«тенденции природы к почти бесконеч-
ному повторению всех порождаемых ею существ». Или
еще: в связи с обсуждением силлогистической машины
автор высмеивает «силлогизм» в духе сенатора Маккарти:
«Все коммунисты нападают на меня. Такой-то нападает
на меня. Следовательно, такой-то — коммунист».
Книга рассчитана на широкие круги инженеров, науч-
ных работников и просто образованных читателей. Не обя-
зательно читать книгу «от корки до корки»: в зависимости
от своих нужд читатель может опустить часть разделов.
Некоторые разделы интересны и для квалифицированных
специалистов в области математической и технической
логики, например главы об «алгебре событий и состоя-
ний» — собственном изобретении автора в математиче-
ской логике.
Обсуждение общих свойств и возможностей «разумных
машин» в целом тоже интересно, но требует, в свете сде-
ланных замечаний, критического подхода и скорее выдви-
гает вопросы, чем их решает. Критического подхода тре-
бует и ряд других общих положений книги, напри-
мер положение о природе и структуре математической ло-
гики.
18
Предисловие редактора перевода
При переводе в двух-трех случаях были допущены
незначительные отступления от оригинала в связи с неко-
торыми трудно передаваемыми оттенками* английского
языка. В нужных местах книга снабжена при переводе
примечаниями.
Конечно, следует иметь в виду, что Беркли дает лишь
введение в предмет и что для углубленного.ознакомления
с математической логикой и с современными автоматами,
логическими и вычислительными машинами, надо обра-
титься к дальнейшей литературе. Литература, указываемая
самим Беркли, рассчитана на читателей, пользующихся
английским языком. Далеко не все упомянутые им работы
переведены на русский язык и к тому же в ряде случаев
они имеют сильную философскую окраску в духе буржуаз-
ных философских учений. Поэтому к переводу книги при-
ложен список дополнительной литературы.
Г. Я. Поваров
ПРЕДИСЛОВИЕ
Согласно словарю, разум есть способность учиться
или извлекать уроки из опыта, приобретать и сохра-
нять знания и способность быстро и целесообразно реаги-
ровать на новые ситуации, добиваясь с помощью этих способ-
ностей успеха при решении различных задач. Этими
способностями обладают теперь, по крайней мере час-
тично, некоторые машины.
Из этих машин, пожалуй, самыми замечательными
являются большие автоматические вычислительные маши-
ны. Некоторые из них могут выполнять свыше 10 000 счет-
ных операций в секунду, и притом над числами, состоя-
щими больше чем из 10 десятичных разрядов. Но имеется
и много других видов автоматических машин, которые
также ведут себя дифференцированно и целесообразно
в ответ на различные сигналы. Мы вправе называть все
такие машины разумными машинами.
Работа разумных машин зависит от появления или
прерывания сигналов и электрических цепей, т. е., иными
словами, от способа взаимодействия многих «да» и «нет».
Вследствие этого наука о способах взаимодействия мно-
гих «да» и «нет» приобрела в последнее время большое
значение. Эта наука по существу представляет собой скорее
символическую логику, чем математику, потому что в ней
рассматриваются в основном^неколичественные отношения.
Например, высказывание: «Если А—отец В, а В—
отец С, то А—дед С» — выражает неколичественное
отношение, как и высказывание: «Если цепь А замкнута,
а цепь В разомкнута, то последовательное соединение
цепей А и В разомкнуто, а параллельное соединение цепей
20 ^ Предисловие
Л и В замкнуто». И действительно, символическая логика
применяется сейчас все шире и шире: при исследовании
правил, условий и договоров, при проектировании элек-
трических схем для вычислительных машин, телефонных
систем и регулирующих устройств, при программировании
автоматических вычислительных машин и вообще при опи-
сании и проектировании многих типов схем* и механизмов.
Главная цель этой* книги — объяснить существо сим-
волической логики и свойства разумных машин и пока-
зать, как эти две области связаны друг с другом и как эта
связь их обогащает. Другая цель этой книги — объяснить,
как применяется символическая логика при проектирова-
нии машин, обладающих разумным поведением.
Материал, содержащийся в книге, можно охарактери-
зовать двояко: с одной стороны, он будет интересен и поле-
зен многим читателям для разнообразных целей; это,
например, изложение некоторых вопросов булевой алгебры
и правил для вычислений с ее помощью; с другой сто-
роны, в книге имеется трудный или дополнительный мате-
риал— сводки, таблицы, запутанные схемы, сжатое обсуж-
дение идей и т. д., который включен в эту книгу для
некоторых читателей и для некоторых целей. Многие
сочтут эти. разделы ненужными для себя и могут их
выпустить. Книгу совсем не обязательно читать последо-
вательно от начала до конца, без пропусков.
Толчком к написанию этой книги послужил один раз-
говор — я помню его, как будто это было вчера,— раз-
говор в 1927 г. с моим профессором математики, д-ром
Джорджем Д. Биркгофом, когда я был второкурсником
в Гарварде. Я сказал ему, что мне хотелось бы, чтобы
существовала алгебра языка — алгебра, с помощью кото-
рой можно было бы вычислять ответ на довод, не плавая
в океане слов. Он ответил мне, что такая алгебра есть,
и рассказал о книге под названием «Законы мышления»
Джорджа Буля, изданной в 1854 г. Я тотчас же отыскал
эту книгу в библиотеке, и хотя она привела меня в сму-
щение, так как я не знал тогда о дальнейшем развитии
булевой алгебры, тем не менее самый факт существования
алгебры, имеющей дело с такими вещами, как классы
и высказывания, и с такцдои операциями, как И, ИЛИ,
НЕ, широко открыл передо мною захватывающую перепек-
Предисловие
21
тиву — возможность того, что весь язык мысли действи-
тельно может стать вычислимым, подобно математике.
Эта возможность сейчас стала более реальной, чем когда-
либо раньше, благодаря колоссальным возможностям авто-
матических вычислительных машин. Поэтому я надеюсь,
что материал, изложенный в этой книге, может дать пищу
воображению многих читателей и воодушевить их.
Было бы слишком смелым сказать, что каждое утвер-
ждение в этой книге правильно. Я буду весьма призна-
телен за все добавления, исправления, замечания и пред-
ложения, которые мне пришлют читатели.
Эдмунд К. Беркли
19 февраля 1959 г.
Ныотонвиль 60, Массачусетс
ГЛАВА I
СИМВОЛИЧЕСКАЯ ЛОГИКА. ВВЕДЕНИЕ
1. Чем занимается символическая логика?
Когда мы приступаем к изучению новой дисциплины,
то наша первая задача — выяснить, чем она занимается
и что в ней изучается. К своему удивлению, мы часто обна-
руживаем, что уже знакомы с ее содержанием и пользова-
лись ею, даже если ее специальная терминология нам совер-
шенно неизвестна. Мы подобны богачу из пьесы Мольера
«Мещанин во дворянстве», который обнаружил, что всю
свою жизнь говорил прозой.
Вы и я, и каждый из тех, кого мы знаем, всю свою
жизнь сталкиваемся со многим из того, что составляет
предмет символической логики. Она не является для нас
чем-то совершенно новым: символическая логика образует
основную «ткань» большей части нашего мышления. Мы
быстро и совершенно бессознательно приноравливаемся
ко многим ее тонкостям. Но мы почти все совершенно
незнакомы с современной наукой, изучающей эти понятия.
Предмет символической логики включает многие самые
обычные понятия, выражаемые самыми обычными словами и
фразами нашего языка. В табл. 1.1 приведены некоторые
из этих слов и фраз.
Тот
некоторый
Да
нет
из
существует
тот же самый
отличный от
есть
как
другой
чем
один из
иной
к
ДЛЯ
через
с
от
имеет
Таблица 1.1
это
вещь
род
вид
который
Все эти слова обычно применяют шестилетние дети.
Если воспользоваться более сложными словами, словами,
24
Глава J
которые, вероятно, будут понятны выпускникам коллед-
жей, то предмет символической логики включает поня-
тия, выражаемые следующими словами и фразами:
высказывания, суждения, предложения;
истина, ложь, утверждение, отрицание;
рассуждение, выв&ды, теоремы, доказательства;
индивидуумы, элементы, вещи;
свойства, отношения;
классы, группы, собрания, типы;
выбор, отбор, размещение, сравнение, согласование,
соответствие, слияние, сопоставление, сортировка.
Но слова обычного языка часто неточны и неясны.
Бывает очень трудно высказать именно то, что подразуме-
вают, если употреблять лишь отдельное, изолированное
слово, взятое само по себе, вне какого-либо контекста.
Ведь каждое слово имеет много различных значений, и при
отсутствии других указаний, кроме самого этого слова,
мы не знаем точно, какое значение ему придать. Возьмем,
например, слово «да». В обычном языке оно может иметь
много значений. Вот некоторые значения слова «да», встре-
чающиеся в разговорной речи:
«да» № 1: высказывание верно;
«да» № 2: я не хочу высказать свое несогласие с вами
публично;
«да» № 3: вероятно;
«да» № 4: может быть, возможно;
«да» № 5: я не слышал, что вы сказали, но хочу быть
вежливым.
Вследствие неопределенности слов обычного языка нам
не только оказывается трудно узнать точно, что значит
такое слово, когда его употребляют другие, но мы и сами
заблуждаемся, употребляя его.
Чтобы придать точное значение словам, ученые, рабо-
тающие в области символической логики и изучающие
законы мышления, придумали особые символы и припи-
сали им точные значения.
Посредством каждого придуманного символа выби-
рается, обозначается и указывается одно, отдельное зна-
чение слова. Всякий раз, когда применяется этот символ,
подразумевают именно это значение. И это значение закреп-
ляется, сохраняется и уточняется благодаря устанфвле-
Символическая логика. Введение
25
нию точных (вычислимых) связей между данным симво-
лом и другими точными символами. Например, в символи-
ческой логике понятие «этот, тот» связано с предпосылкой
«существует один и только один». Например, когда вы
говорите: «статуя Свободы, которая стоит в Нью-Йорке»,
вы подразумеваете также справедливость утверждения
«существует одна и только одна статуя Свободы,
которая стоит в Нью-Йорке».
Благодаря наличию точных значений у символов
и вычислимости отношений между ними мы достигаем чрез-
вычайной ясности — такой чудесной ясности, что многие
понятия, которые мы не в состоянии представить, понять
или выразить словами обычного языка, становятся вырази-
мыми и доступными изучению и пониманию. Благодаря
этому мы теперь стали гораздо лучше понимать основа-
ния математики.
Хорошая символика, точно соответствующая какой-либо
данной области мышления, становится необходимым ору-
дием для работы в этой области.
2. Что такое символическая логика?
Теперь мы можем попытаться ответить на вопрос: что
такое символическая логика? Символическая логика в широ-
ком смысле есть наука, характеризуемая следующими
чертами:
а) она изучает главным образом неколичественные отно-
шения;
б) она ищет точные значения и необходимые следствия;
в) ее главное орудие — оперативные символы.
Имея дело с какой-либо частной областью применения,
символическая логика изучает неколичественные высказы-
вания и отношения в этой области. В широком смысле,
безотносительно к какой-либо частной области применения,
символическая логика изучает общие свойства высказы-
ваний и отношений, основания математики и основы рас-
суждения вообще.
Кроме названия «символическая логика», для обозна-
чения этой дисциплины применялись и другие названия,
КЭК-то: «математическая логика», «аксиоматический метод».
26
Глава J
«логистика», «логистический метод». Однако название «сим-
волическая логика» в настоящее время наиболее распро-
странено1.
3. Сравнение символической логики и математики.
Из всех наук математика -г- наиболее близкая родствен-
ница символической логики. Многие даже считают, что
символическая логика — это часть математики. Однако
символическая логика отличается от математики в несколь-
ких отношениях.
В компетенцию символической логики обычно не входят
числа или числовые понятия, как «два», «три», и числовые
операторы, как «плюс», «минус», «умножить», «разделить»,
или количественные отношения, как «больше чем», «меньше
чем», или неопределенные количества, как «несколько»,
«большая часть», «много». Все эти понятия представляют
область собственно математики.
Математика рассматривает главным образом:
числа, например: 3, V3, 0,216;
фигуры, например: круг или квадрат;
размещения, например: шесть возможных после-
довательностей из букв Л, £, Т\
конфигурации, например: конфигурации паркет-
ного пола.
Символическая логика рассматривает:
высказывания, например: «переключатель А уста-
новлен в положение Р»;
классы, например: «переключатели», «реле», «кон-
такты»;
отношения, например: «переключатель А включен
только тогда, когда включен переключатель В»;
свойства, например: «медленнодействующий», «про-
водящий», «магнитный».
Математика ищет ответы на такие вопросы, как:
сколько? как далеко? как долго? * Символическая
логика рассматривает такие вопросы, Чкак: что это зна-
чит? имеются ли в этом наборе высказываний противо-
речия или лазейки? каково] основание этого доказатель-
ства?
Символическая логика. Введение
27
Пример правила математики: «Обратная величина
обратной величины числа есть само число». Пример пра-
вила символической логики: «Отрицание отрицания выска-
зывания есть само высказывание».
Исторически символическая логика появилась в резуль-
тате применения мощного аппарата математической сим-
волики к логике21.
4. Простой пример символической логики
Простым примером символической логики служит сле-
дующая система сокращенных обозначений для наличия
или отсутствия свойств. Допустим, что имеются десять
свойств, каждое из которых в каком-либо частном случае
может присутствовать или отсутствовать. Это могут быть
десять способностей людей, или десять особенностей
работы, или десять признаков в какой-то. классификации,
где может быть значительное перекрытие признаков. Мы
можем установить следующую систему сокращенных обо-
значений:
а) для обозначения десяти свойств мы применяем соот-
ветственно буквы А, В, С,..., /;
б) для обозначения любого сочетания свойств, имею-
щихся в данном случае, мы применяем буквы имеющихся
свойств (для удобства мы можем записать их в алфа-
витном порядке);
в) для обозначения отсутствия всех свойств мы при-
меняем букву Z.
Эта система сокращенных обозначений может оказаться
полезной; каждое обозначение указывает точно, какие
свойства имеются и какие отсутствуют; кроме того, если
нам даны какие-либо сочетания свойств вместе с прави-
лом, определяющим выбор свойств по этим сочетаниям,
то мы можем быстро записать сочетание, определенное
правилом. Например, есл# даны четыре сочетания свойств
ABCDE, DHU, ABDEFHU. BCEFHI
и правило: «выбрать то сочетание, которое содержится
в первом или во втором сочетании и отсутствует в общей
части третьего и четвертого сочетания», то таким ответом
28
Глава 1
будет ACDJ. Действительно, сочетание свойств, входя-
щих в первое или второе сочетание, есть ABCDEHIJ\
а общая часть в третьем и четвертом сочетании есть
BEFHI; и если мы исключим последнее из первого, оста-
нется ACDJ. Эта система обозначений нечисловая, но она
оперативна и позволяет производить неколичественные
вычисления.
Несколько расширенная "форма этой системы приме-
няется в химии. Обозначение NaOH для соединения «гид-
рат натрия» указывает только на присутствие элементов
Na (натрий), О (кислород) и Н (водород) (в пропорции:
один атом каждого элемента на каждую молекулу соеди-
нения). Обозначение Н20 для воды указывает на присут-
ствие водорода и кислорода (в пропорции: два атома водо-
рода и один атом кислорода на каждую молекулу соеди-
нения). Здесь факты относятся к химии, числа — к мате-
матике, а система сокращенных обозначений — к симво-
лической логике.
5. Разделы символической логики
В символической логике имеются по крайней мере
четыре общепризнанных раздела. Один из них (и притом
в настоящее время наиболее важный с точки зрения прак-
тических приложений) — это булева алгебра, алгебра опе-
раций И, ИЛИ, НЕ и высказываний (или классов). Напри-
мер, одно из правил булевой алгебры гласит: «ни а, ни 6»
есть то же самое, что «не-а и не-6». Здесь а и Ъ суть выска-
зывания, или классы, или элементы электрических схем,
но не числа (кроме чисел 1 и 0). Булева алгебра нашла
применение в проектировании и проверке электрических
схем, в которых используются реле, электронные лампы
или другие элементы, работающие по принципу «да — нет».
Это применение символической логики имеет важное зна-
чение в проектировании и конструировании разумных
машин и описывается подробно в дальнейших главах.
В другом разделе символической логики исследуются
основания математики. В нем изучаются такие вопросы,
как: что такое число? что такое ^математическая функ-
ция? Символическая логика получила ответы на мнргие
Символическая логика. Введение
29
из этих вопросов. Большую роль в развитии символической
логики сыграла книга «Начала математики» Бертрана Рас-
села и А. Н. Уайтхеда (изданная в 1910—1913 гг. в Кем-
бридже, Англия), которая в значительной степени дала
логическое обоснование всем разделам математики3.
Третий раздел символической логики называется алгеб-
рой отношений. Эта алгебра рассматривает такие поня-
тия, как «симметрические отношения», «транзитивные
отношения», «ряды» и т. д.
Еще один раздел символической логики занимается
так называемыми проблемами разрешимости, т. е. разыска-
нием действенных вычислительных процедур для опре-
деления истинности или ложности целых классов выска-
зываний4. Специалисты по символической логике исследо-
вали проблему доказательства высказываний в любой
произвольной математической системе. Эти исследования
привели к замечательным результатам. Например, можно
показать, что в арифметике и других математических сис-
темах существуют классы высказываний, относительно кото-
рых никогда нельзя узнать, истинные они или ложные;
под этим понимается следующее: можно показать, что не
существует действенной вычислительной процедуры для
разрешения этого вопроса*).
*) Davis М., Computability and Unsolvability, 1958, N. Y.
ГЛАВА 2
СИМВОЛИЧЕСКАЯ ЛОГИКА. ОСНОВНЫЕ ПОНЯТИЯ
I. Иллюстративный пример
Чтобы объяснить специфические понятия символиче-
ской логики и показать возможности их применения и их
могущество, мы приведем иллюстративный пример, взятый
не из математики, а из повседневной жизни, а именно род-
ственные отношения. Не выходя за пределы этого примера,
можно показать, как эти отношения описываются с помо-
щью слов двоякого рода: слов, относящихся специально
к области родственных отношений (мы можем назвать их
«словами-кирпичами»), и слов, вполне общих и относя-
щихся к символической логике (мы можем назвать их
«словами-цементом»).
Задана 1. Определить понятие «отец» через понятия
«родитель» и «мужской пол» и разделить слова-кирпичи
и слова-цемент.
Решение. Определение: Один человек есть отец другого
человека тогда и только тогда, когда он (есть) мужского
пола и есть родитель этого другого человека.
Разделяя два вида слов, получим:
а) слова, относящиеся к области родственных отноше-
ний (слова-кирпичи): «человек», «отец», «мужской пол»,
«родитель»;
б) слова, относящиеся к символической логике (слова-
цемент): «одно... есть... другого... тогда и только тогда,
когда оно есть и есть... этого другого...». (Мы заменяем
мужской род на средний, чтобы не подразумевалась оду-
шевленность.)
Задача 2. Выразить понятие «дядя» через понятия
«родитель» и «мужской пол».
Символическая логика. Основные понятия 31
Решение. Сначала мы определим -понятие «брат».
Определение. Один человек есть брат другого человека
тогда и только тогда, когда он мужского пола и суще-
ствует некто, кто есть родитель их обоих.
Слова-кирпичи (слова, относящиеся к родственным
отношениям): «человек», «брат», «мужской пол», «роди-
тель».
Слова-цемент (слова, относящиеся к символической
логике): «Одно... есть... другого... тогда и только тогда,
когда оно есть... и существует нечто, что есть... их обоих».
(Мы должны заменить «кто» на «что», чтобы не подразуме-
валась одушевленность.)
Теперь, определив понятие «брат», определим понятие
«дядя».
Определение. Один человек есть дядя другого человека
тогда и только тогда, когда он есть брат родителя этого
другого человека.
Слова-кирпичи: «человек», «дядя», «мужской пол»,
«брат», «родитель».
Слова-цемент: «Одно... есть... другого... тогда и только
тогда, когда оно есть... этого другого...».
2. Предметы, или элементы
Теперь мы должны избавиться от некоторой незакон-
ченности этих комбинаций логических слов, вызванной
пробелами. Нам нужно устранить пробелы и вставить
наиболее общие понятия, подразумеваемые под этими
пробелами. Чтобы облегчить эту задачу и представить
понятия более четко, будем говорить «предмет» вместо
«человек». Слова «элемент» или «индивидуум» были бы
более подходящими в том смысле, что они правильнее, так
как мы имеем в виду также и нефизические предметы;
но «предмет» — удобное повседневное слово, вполне прием-
лемое для наших целей.
Итак, условимся применять заглавные буквы О, М,
Р, Б, Д вместо слов «отец», «мужской пол», «родитель»,
«брат», «дядя», стараясь, однако, подразумевать под этими
буквами еще более общие понятия. С этими изменениями
наши высказывания примут такой вид:
32
Глава 2
Высказывание 1. Один предмет есть О другого предмета
тогда и только тогда, когда он (первый предмет) есть М
и есть Р этого другого предмета (второго предмета).
Высказывание 2. Один предмет есть Б другого предмета
тогда и только тогда, когда он есть М и существует некий
предмет, который есть Р обоих.
Высказывание 3. Один предмет есть Д другого предмета
тогда и только тогда, когда он есть Б относительно Р этого
другого предмета.
Теперь мы можем начать рассмотрение некоторых
основных понятий символической логики. Попытаемся
объяснить, что они собой представляют.
3. Один.,., другой..., еще один...
Чтобы говорить о предметах в некотором классе или
собрании, мы часто применяем какую-нибудь схему для
их указания одного за другим, опуская их названия
и кратко ссылаясь на них. Этот процесс или схема отно-
сится к области символической логики. Потребность в крат-
ком указании ранее упомянутых предметов признана
в грамматике нашего натурального языка, в которой при-
меняются местоимения: «он», «она», «оно», «они» (или ана-
логичные слова в других языках) для указания ранее упо-
мянутых предметов. Но грамматика натурального' языка
соединяет логическую потребность в ясном обозначении
ранее упомянутых предметов с неотносящейся к логике
потребностью в указании рода (мужской, женский, сред-
ний) и числа (единственное, множественное).
В символической логике мы не интересуемся грамма-
тическим родом, как и полом. Кроме того, в символиче-
ской логике мы обычно мало интересуемся различием
между единственным и множественным числом, хотя очень
часто находим необходимым или желательным в символи-
ческой логике делать различие между понятиями «один»
и «более чем один».
Перевод понятий «один...», «другой...», «еще один...»
на язык символической логики можно сделать несколь-
кими способами. Один способ, который обычно неудо-
бен,— это применять различные <?уквы, например: один
предмет — х, другой предмет — t/, еще один предмет — г.
_ _ Символическая ло&ика. Основные понятия 33
Другой способ — применять нижние индексы, например:
один предмет — хх; другой нредмет — х2, еще один
предмет — дс3, *4. хь, ,.. Третий способ заключается в том,
чтобы не применять никакой отметки для первого из упо-
мянутых предметов, для второго из упомянутых предметов
применять штрих ('), для третьего из упомянутых предме-
тов — два штриха ("): дс, х' (читается: «* прим»), х"
(читается: «дс два штриха»). Если мы имеем в виду не более
трех предметов в классе, то этот метод весьма удобен.
Заметим, что эти символы могут применяться
и тогда, когда наш другой предмет х' оказывается
тем же самым, что и первый предмет х\ например, мы будем
сталкиваться со случаями, когда то или иное правило
становится гораздо более общим вследствие того, что слу-
чай х=х' не запрещен схемой обозначений.
4. Свойства, особенности, роды, виды
Говоря* о каком-нибудь предмете, мы часто делаем
высказывания о том, какими свойствами и особенностями
он обладает, какого он рода и вида. Например: «он муж-
чина», «он отец», «он дядя», «он дикий», «он дикарь».
Заметим, что свойство грамматически может быть суще-
ствительным или прилагательным.
Для обозначения свойства или класса мы будем в общем
случае применять заглавную букву К (первую букву в сло-
ве «класс»):
хК означает «х имеет свойство /С»;
х£К означает «ис находится в классе К», «х есть член
класса /С».
Иногда мы подразумеваем свойство К «быть мужского
пола», «иметь мужские свойства», «быть отцом», «состоять
в отцовстве». Иногда мы подразумеваем класс К — «лица
мужского пола», «отцы», группу или собрание или набор
всех предметов, обладающих указанным свойством. Хотя
понятия «свойство» и «класс» во многих отношениях тож-
дественны, в символической логике для выражения этого
основного понятия применяют два различных, но в значи-
тельной мере взаимозаменимых способа: хК и Jtg/C.
34
Глава 2
5. Отношения
О каком бы предмете мы ни говорили, мы часто делаем
высказывания о том, какое отношение он имеет к другим
предметам, какие соединения или связи он имеет с дру-
гими предметами. Например: «х есть О относительно *'»,
«х есть Р относительно *'», «дс есть брат х'», «х имеет то-
го же отца, что и *'». Всякое высказывание, в котором упо-
минаются два предмета и утверждается наличие некоторого
вида связи или соединения между ними, есть высказывание,
выражающее то или иное отношение.
Для обозначения отношения мы будем в общем случае
применять заглавную букву R (первую букву в латинском
слове «Relatio»— отношение):
xRx' означает: «х имеет отношение R к х'ъ.
Мы можем рассматривать эти предметы х9 х' (читается
«х запятая х прим») как упорядоченную пару, или диаду,
и затем писать, если пожелаем, что х, х 6 Л. Это означает:
«упорядоченная пара х, х* есть член от/?». В таких случаях
мы рассматриваем отношение R как класс упорядоченных
пар элементов.
Например, допустим, что мы рассматриваем отношение
«противоположен» и четыре стороны света: север (С), вос-
ток (В), юг (Ю), запад (3).
Класс С, В, Ю, 3, обозначающий четыре стороны света,
содержит четыре элемента. Мы можем составить из них
16 упорядоченных пар:
с, с в, с ю, с 3, с
с, в в, в ю, в з, в
СЮ В, Ю Ю, Ю 3, ю
С, 3 В, 3 Ю, 3 3. 3
Из этих 16 пар только четыре находятся в отношении
«противоположен», именно:
С, Ю Ю, С В, 3 3, В
Другие 12 упорядоченных пар находятся в отношении
«не противоположен». Чтобы полностью описать отношение,
может оказаться необходимым упомянуть больше чем два
члена. Например, состояние «между» есть отношение
Симёолическая Логика. Основный понятий, 35
с тремя членами: «Нью-Хейвен находится между Босто-
ном и Нью-Йорком». Состояние «между» есть класс упо-
рядоченных троек, или триадическое отношение. Далее,
обмен есть отношение с четырьмя членами: «обмен чего-то
кем-то с кем-то другим на что-то другое». Следовательно,
обмен по существу есть класс упорядоченных четверок,
т. е. упорядоченных наборов из четырех элементов, или
тетрадическое отношение.
6. Высказывания, суждения, утверждения,
предложения
Одним из самых основных понятий символической логи-
ки является понятие высказывания (суждения, утвержде-
ния, предложения). В общем случае высказывание есть
выражение, которое может быть истинным или ложным.
Например: «у Джека была корь», «х мужского пола»,
«соединение между точками А и В разорвано».
Чтобы обозначить высказывание, мы будем в общем
случае применять букву S.
Условились говорить, что «значением истинности» выска-
зывания является «истина», или «да», или «галочка» (V).
или Т, или 1, если высказывание истинно, и «ложь», или
«нет», или «крестик» (х ), или F, или 0, если высказывание
ложно. Мы пишем:
Т (5)=значение истинности высказывания S, равное 1,
если S истинно, и равное 0, если S ложно.
7. Связки высказываний
Мы можем легко составить из данных высказываний
новые высказывания посредством логических связок, (или
конъюнкций, или операторов). Например, мы можем соче-
тать два высказывания с помоТцью связки «или», в смысле
«и/или». Мы можем также превратить высказывание в его
отрицание.
S-S' означает: «S и S'», «и S, и S'»;
S\/S' означает: «S или S', или оба», «S и/или S'»;
36
Глава 2
S-+S' означает: «если S, то S'», «из S вытекает S'»;
S+-+S' означает: «S тогда и только тогда, когда S%
«если S, то S', и если S', то S».
В этот набор нужно также ввести связку «не», выражаю-
щую отрицание всего высказывания:
~S означает «не-S», «не верно, что S».
Между высказываниями могут стоять связки, не отно-
сящиеся к символической логике, например «S, потому
что S'», поскольку отношения причины и действия отно-
сятся к науке; «S, пока S'», поскольку понятие времени
находится вне символической логики.
Все эти пять операторов: И, ИЛИ, ЕСЛИ..., ТО, ТОГДА
И ТОЛЬКО ТОГДА, НЕ — обладают очень важным свой-
ством: значение истинности высказывания, полученного
с помощью их сочетаний, можно вычислить из значений
истинности составляющих высказываний. Например, зна-
чение истинности S и S' указано в перечне четырех воз-
можных случаев, приведенных в следующей таблице:
Одно Другое Высказывание, полу-
высказывание высказывание чающееся из их соче-
5 £' тания с помощью И
0 0 0
0 1 о
1 о о
1 1 1
Многие связки равносильны комбинациям этих пяти
связок. Например, «S, если не S'» то же самое, что
«если не-S', то S». Например, «Джон придет, если не будет
дождя» то же самое, что «если не будет дождя, то Джон
придет».
' Другой связкой между высказываниями в символиче-
ской логике служит равенство, или взаимозаменяемость,
S=S\ Высказывание S=S' верно тогда и только тогда,
Символическая логика. .Основные понятия
37
когда каждое из высказываний S и S' утверждает одно
и то же, как, например, высказывание «два плюс три соста-
вляют пять» и «two plus three make five»; оба высказывания
утверждают одно и то же. Но мы не можем вычислить
значение истинности высказывания S=>S', зная лишь зна-
чение истинности для S и значение истинности для S'
8. Оператор общности и оператор существования
Если имеется высказывание: «лс обладает свойством /С»,
можно построить другое высказывание: «всякое х обла-
дает свойством /С». Это высказывание переводится на язык
символической логики при помощи так называемого «опе-
ратора общности», и высказывание будет теперь записы-
ваться в следующей форме:
(Ах)(хК).
Это читается так: «для всякого х х обладает свойством /С»
или «для всех х х обладает свойством /С».
Из высказывания «х обладает свойством /(» мы можем
также построить высказывание «некоторое х имеет свой-
ство /С».
Это высказывание имеет то же значение, что и «суще-
ствует, х, такое, что х имеет свойство /С». Это высказыва-
ние переводится на язык символической логики при помощи
так называемого «оператора существования» и записы-
вается в следующей форме:.
(Е*)(х#С).
Это читается так: «существует лс, такое, что х обладает
свойством /С».
Для обозначения этих операторов разные авторы, пишу-
щие о символической логике, ^применяют различные сим-
волы. Например, можно опустить знак А оператора
общности и писать (х)(хК). Или в операторе существова-
ния можно писать 3 — зеркальное отображение заглав-
ной буквы Е. Однако какие бы символы ни применялись,
значение их остается тем же самым б.
38
Глава 2
9. Три формулировки ответов, переписанные на языке
символической логики
Вернемся к трем высказываниям, представляющим
ответы на две приведенные выше задачи. Как они выгля-
дят в новых символах, которые мы только что ввели?
Высказывание 1. Предмет есть О другого предмета тогда
и только тогда, когда он есть М и есть Р этого другого
предмета:
Высказывание 2. Предмет есть Б другого предмета
тогда и только тогда, когда он есть М и существует
некий предмет, который есть Р их обоих:
хБх'«-- [лгЛМЕлО (х"Рх.х"Рх')].
Высказывание 3. Предмет есть Д другого предмета
тогда и только тогда, когда он есть Б (относительно) Р
этого другого предмета:
*Лс' «- [(ЕЛ (хЪх* -х'Рх')].
Теперь мы исключили из этих высказываний натуральный
язык и выразили точную схему взаимосвязей на языке
символической логики. Это ценное достижение, ибо мы
устранили перефразировки,- выкристаллизовали понятия
и подготовились для вычислений и точных рассуждений.
Как это не раз бывало в развитии математической науки,
избавившись от случайного и не относящегося к делу и
сосредоточив внимание на основном, мы открыли себе путь
к новым достижениям.
10, Оператор класса
Если дано высказывание «дс имеет свойство /С», то мы
можем говорить о
классе всех х, которые обладают свойством /С.
Этот класс обозначается символом
(Сх)(хК).
Это читается так: «класс всех х, таких,, что х имеет свой-
ство /С». Этот класс равен К в смысле класса, но не свой-
ства.
Символическая логика. Основные понятия зу
11. Относительное произведение
Если
х есть R относительно R' относительно х\
или, другими словами,
х имеет отношение R к некоему предмету, который
имеет отношение R' к х\
то мы пишем
xR\R'x'.
Точное значение этого выражения следующее:
xR | R'x' = (EjO (xRx" -x'R'x').
R\R' называется относительным произведением R и R'.
Зная эти определения, мы теперь подготовлены к рас-
смотрению более трудной задачи.
12. Определения родственных отношений
Задача 3. При описании родственных отношений людей
можно использовать следующие понятия:
1. Мать 6. Тетка 11. Братья и сестры 16. Свекровь (теща)
2. Дитя 7. Дед (бабуш- 12. Двоюродный (ая) 17. Незаконное
ка) (сестра) брат дитя
3. Сестра 8. Муж 13. Единокровный 16. Предок
(единоутробный)
брат
4. Сын 9. Жены 14. Внучатная тетка
5. Дочь 10. Супруг (а) 15. Племянник
а) Какие три основных термина из области родственных
отношений могут выразить при помощи понятий символи-
ческой логики любое из этих понятий?
б) Каковы их выражения?
в) Каким образом мужчина может быть своим соб-
ственным дедом по браку?
Решение, а) Один из перечней трех основных терми-
нов таков: «мужской пол», «родитель», «состоящий(ая) ь
браке»» (Вместо этого можно применять другие перечни
40
Глава 2
основных терминов, например: «женский пол», «дитя»,
«состоящий(ая) в браке». Пусть
х!Л = «х мужского пола»;
хРх' = «х есть родитель *'»;
хБх' = «х в браке с х'»*
б) Применяя символы символической логики, мы можем
выразить все 18 перечисленных понятий в виде сжатых
и точных определений следующим образом:
1. х Мать х' = хРх' • ~ хМ.
Словами: «х есть мать х'» — это то же самое, что «х есть
родитель х прим, и х не мужского пола».
2. х Дитя х' = х'Рх.
Словами: «х есть дитя х'» — это то же самое, что «х прим
есть родитель х».
3. х Сестра х' = ~хМ.(Ех")(х"Рх-х"Рх').
Словами: х не мужского ггола, и существует другое
лицо х два штриха, такое, что х два штриха есть роди-
тель х и х два штриха есть родитель х прим.
4. х Сын х' = х'РххМ.
х прим есть родитель х, и х мужского пола.
5. х Дочь х' = х'Рх-~хМ.
х прим есть родитель х, и х не мужского пола.
6. х Тетка х' = х Сестра | Родитель х'.
х есть сестра родителя х прим.
7. х Дед (бабушка) х' = х Родитель | Родитель х'.
х есть родитель родителя х прим.
8. х Муж х' = хБх'-хМ.
х в браке с х прим, и х мужского пола.
9. Жены х' = (Сх) (хБх' — хМ).
Словами: «класс всех х, таких, что х в браке с х прим,
и х не мужского пола».
10. х Супруг(а)х' = хБх/.
х в браке с х прим.
11. Братья и сестры х'= (Сх) [х (брат V сестра) х'].
Класс всех х, таких, что х есть брат или сестра
х прим.
12. х Двоюродный(ая) брат (сестра) х' = х Дитя | (Брат
v/Сестра) | Родитель х\
х есть дитя брата или сестры родителя х прим.
Символическая логика. Основные понятия 41
13. х Единокровный (единоутробный) брат х' =
= *М • Е (х2,х3) (х2 ф х3 • х2Рх • x2Pxf • х3Рх - ~ х3Рх').
дс мужского пола, и существуют два разных лица,
х два и х три, такие, что х два есть родитель х
и * два есть родитель х прим и х три есть роди-
тель х, но * три не есть родитель х прим.
14.' х Внучатная тетка х' = х Сестра | Дед (бабушка) *'.
х есть сестра деда (бабушки) х прим.
15. * Племянник х'=х Сын | (брат V сестра) х'.
х есть сын брата или сестры х прим.
16. х Теща (Свекровь) х' = х Мать | Супруг (а) х\
х есть мать супруга(и) х прим. •
17. * Незаконное дитя х' =х'Рх-[{Ех"){х" ф х'-х"Рхх
х~х!Ъх')]. %
х прим есть родитель х\ и существует х два штри-
ха, такой, что х два штриха отличен от х прим, и х два
штриха есть родитель х, и х два штриха не в браке с х прим.
18. хПредокX' = (ЕЯ){(*£#-*'£#) • (Але,)[(х2£К• x2=£x)->.
-4E*a)(x,Pv*s €*)]}•
Словами: «х есть предок *' тогда и только тогда, когда
существует класс лиц К (включающий х и х')> который
обладает таким свойством: для всякого лица х2 в К
(за исключением х) существует некое лицо х3 в /С, такое;
что х3 есть родитель х2».
в) Мужчина а женится на матери т девушки g, кото-
рая выходит замуж за отца этого человека /. Иначе го-
воря: а Супруг т-т Родительница g-g Супруга/•/Роди-
тель а. Следовательно,
а Супруг | Родитель | Супруга | Родитель а.
Таким образом, а является своим собственным дедом
по браку.
13. Главные понятия символической логики
Итак, каковы же важнейшие понятия главной ветви
символической логики и какие символы применяются
для их обозначения?
Многие из главных понятий символической логики
определяются и объясняются в упомянутых выше «Нача-
42
Глава 2
лах математики», хотя в этой работе их очень нелегко
уяснить себе, так как авторы, стремясь избежать пред-
взятых понятий, пользовались лишь одним символиче-
ским языком. Другим хорошим источником, где приво-
дятся эти понятия, может служить глава 2 книги Дж. Вуд-
жера «Аксиоматический метод в биологии»*).
Большинство понятий этой главной ветви символиче-
ской логики (с некоторыми видоизменениями, введенными
в последнее время) приводится в сжатом виде в табл. 2.1;
при этом некоторые сложные типографские символы заме-
нены более простыми.
Таблица 2 Л
ВАЖНЕЙШИЕ ПОНЯТИЯ СИМВОЛИЧЕСКОЙ ЛОГИКИ
Символ
К* At А >••»
R, R , R ,...
S, S*. SV..
~s
sys'
S-S'
Значение
Предметы, индивиду-
умы,... (читается: «х,
х прим, х два штри-
ха...», что означает:
сх, другое х, еще одно
X,...»)
Классы, группы, множе-
ства (К—первая буква
нем. слова Klasse)
Отношения (Я—первая
буква лат. слова rela-
tio). Примечание: это
почти всегда двучлен-
ные отношения
Высказывания, предло-
жения (5—первая бук-
ва англ. слова state-
ment)
Не-5
5 или £', или оба
5и5'
Определение
Первичное
Первичное
Первичное
Первичное
Первичное
~{~S.~S')
Первичное
*) Woodger J. Н., Axiomatic Method in Biology, Univer-
sity Press. Cambridge, Eng.f 1937, 174 pp.
Символ
хК
xRx'
xt x'£R
(Ах) (х£К)
(Ех) (х£К)
х=х'
(Сх) (х£К)
(х) (х£К)
Значение
Если S, то 5'; из 5 вы-
текает S'
S тогда и только тогда,
когда S'
Есть элемент в..., есть
член от..., находится
в... (знак происходит от
греческого эпсилон, на-
чальной буквы слова
«еати, что значит
сесть»).
Предмет х находится в
классе К
Предмет х обладает свой-
ством /С. (Примечание:
эта форма редко при-
меняется)
х имеет отношениеRкх'
Упорядоченная пара
предметов х% х' нахо-
дится в отношении R.
(Примечание: эта фор-
ма редко применяется)
Для любого х, х нахо-
дится в К. Любое х
есть К (справедливо
для области допусти-
мых значений х)
Существует х, такое, что
х находится в К* Не-
которое х находится в
К
х равно х'
Класс'всех х, таких, что
х находится в К (спра-
ведливо для области
допустимых значений х)
х, такое, что х находит-
ся в К
Продолжение табл. 2.1
Определение
~(S -~S')
(S-+S')-(S' ->S)
Первичное
Первичное
Эквивалентно по смыслу
хек
Первичное
Эквивалентно по смыслу
xRx'
ЧЕх) (~х£К).
Первичное
(АК)(х€/(<
Первичное
► х'6/С)
Первичное, но необходи-
мо, чтобы имело место
(ЕхИ(Ах') (х'е*-*
-»х'=х)]
Продолжение табл. 2.1
Символ
К
каК'
К=К'
KVK'
КК'
~к
V
л
КфК'
R
Значение
Класс К; класс всех х,
таких, что х находится
вК
К лежит в К'
К равно К'
К или К', или оба
К и К'
Не-/С
Универсальный класс
Нулевой класс
К и К' различны
Отношение R; класс всех
Определение
(Сх) (*€К)
(Ах)(хеК-*х"6/С')
(Ах) (хбК.-- х€/С')
(Сх) (xe/CVxGK')
(Сх) (хек-хек')
(Сх) (~ хбК)
(Сх) (x€KV~x€K)
(Сх)(х€К~х6К)
(Ех)к*ек-~хек')у
V (*€*'• ~х€К)1
(Сх, х') (xRx')
упорядоченных пар х,
х', таких, что xRx'
R(ZR' R лежит в R'
R=R' R равно R'
R-R' Логическое произведение
двух отношений, R и
R'
R\/R' Логическая сумма двух
отношений R и R'
~ R Отрицание отношения R;
класс всех пар х, х\
таких, что xRx' ложно
Rlx' Единственное R от х';
х, такое, что xRx'
Д'х' Разные R от х'; класс
всех х, таких, что
Rlx Класс всех ж', таких,что
xRx'
R"K Разные R от разных К
D*R Область отношения R
QlR Обратная область отно>
шения R
(Ах, х') (xRxr ~»xR'x')
(Ах, х') (xRx' ^->xR'x')
(Сх, х') {xRx'xR'x')
(Сх,х') (хДх' V xR'x)
(Сх.х') (~хДх')
(*) (хЯ*')
(Сх) (хДх')
(Сх') (хЯх')
(Сх) [(Ex') (x'tKxRx)}
(Сх) [(Ex') (хЯх')]
(Сх')[(Ех) (xRx')]
Продолжение табл. 2Л
Символ
F'R
R
R\R'
R2
Д3
sym
asm
refl
irr
trans
connex
intr
опта
maon
ОПОП
К Sim K'
Nc<K
ser
Значение
Поле отношения R
Обратное отношение kR;
класс упорядоченных
пар *',*, таких, что
xRx'
Относительное произве-
дение отношений R и
R'
Квадрат отношения R
Куб отношения R
Класс симметрических
отношений
Класс асимметрических
отношений
Класс рефлексивных от-
ношений
Класс иррефлексивных
отношений
Класс транзитивных от-
ношений
Класс связных отношений
Класс интразитивных
отношений
Класс одно-многозначных
отношений
Класс много-однозначных
отношений
Класс одно-однозначных
отношений
Класс К подобен классу
К'
Кардинальное число клас-
са к
Класс рядов
Определение
(Сх) (Е*') (xRx' V
\yx'Rx)\ это равно-
сильно DlR VQ'R
(Сх\ х) (xRx')
(Сх, х") [(Ex') (xRxf х
Xx'R'x"))
R\R
R*\R
(CR) (Ax, x') (xRx'-+
-+x'Rx)
{CR) (Ax, x') (xRx' -+
-*~x'Rx)
(CR) (Ax, (x£F*R~*xRx)
(CR) (Ax, x') (xRx' -+
-+ХФХ')
(CR) (Ax, x'x") (xRx' x
Xx'Rx" —>xRx*)
(CR)(Ax,x')(x,x'£F'R^
-*(xRx' \/ Rx V* =
= *')
(CR) (Ax,x',x")(xRx' x
XJt'ft*"—»~ xRxn)
(CR) (Ax, x',x")(xRx' x
X x'Rx"-*x = x')
(CR) (Ax,xf,x',)(xRxf x
X xRx* ->x' = x")
опта «maon
(ER) (R£onon-V<R =
=ка^=к')
(С/С') (/C'Sim К)
as m* trans «connex
46
Глава 2
Этот перечень приводит к определениям кардинального
числа — полного числа элементов в классе и ряда — ма-
тематического понятия набора элементов, имеющих по-
следовательный порядок, которые могут быть размещены
один за другим в одной последовательности.
Пытаться уяснить себе эти понятия, лишь .просматри-
вая их одно за другим, не так то легко, да это и не реко-
мендуется делать. К ним * привыкают постепенно, читая
и изучая книги по символической логике, например книгу
М. У. Квайна «Математическая логика»*).
Кроме того, многие из этих понятий еще не являются
необходимыми для современных применений символиче-
ской логики к разумным машинам. В этих целях до сих
пор применялась лишь булева алгебра, т. е. алгебра свя-
зок И, ИЛИ, НЕ и условий (см. дальнейшие главы).
Однако булева алгебра представляет собой лишь неболь-
шую часть символической логики; вероятно, в конце кон-
цов гораздо большая часть символической логики выйдет
из сферы чистых и неприкладных дисциплин и будет при-
менена для анализа и программирования разумных машин.
14. Можно ли выразить оперативными символами
какие-либо другие отношения?
После этого краткого обзора основных понятии симво-
лической логики уместно задать несколько вопросов:
1) Существуют ли какие-либо другие понятия в языке,
которые можно было бы кристаллизовать в оперативные
символы и которыми можно было бы производить вычис-
ления?
2) Возможно ли, что весь язык мысли станет вычисли-
мым, подобно1 математике и символической логике?
3) Мыслимо ли, что в будущем всякого рода споры
будут разрешаться не людьми, а автоматическими вычис-
лительными машинами, которые будут вычислять ответы?
Я считаю, что на все эти вопросы нужно ответить «да»в.
Обычный натуральный язык есть жильная порода,
руда, расплавленная магма, из которой кристаллизуются,
подобно алмазам, идеи и символы математики и символи-
*) Q u i n е М. W., Mathematical Logic, New York, 1940.
Символическая"логика. Основные понятия 4?
ческой логики. Чем больше будут люди понимать приме-
няемые ими натуральные языки, чем больше они будут
представлять себе, как эти языки раскрывают и скрывают
идеи, отображают и искажают понятия, тем больше они
научатся извлекать из языков кристаллы и самородки
ясности, которые следует искать в таких областях, как
математика и символическая логика. Конечно, решающий
шаг состоит не в том, чтобы создать новый символ, а в том,
чтобы создать полезные символы, посредством которых
можно вычислять, которые можно строго связывать
с армией других символов в логических и математических
отношениях.
История развития математики и символической логики
служит ясным доказательством этих взглядов. Понятия,
которые оставались невыраженными или плохо выражен-
ными в языке в течение столетий, постепенно вышли из
языка и отложились в системе оперативных символов.
И появление мощных автоматических вычислительных
машин ускоряет этот процесс, раскрывая новые области
мысли для символического вычисления. Примером недавно
выкристаллизовавшегося раздела является алгебра со-
стояний и событий, изложенная в одной из последую-
щих глав.
f Л А В A 3
БУЛЕВА АЛГЕБРА. ВВЕДЕНИЕ
1. Часть символической логики с полезными применениями
Особенно многочисленные и неожиданные применения
нашла часть символической логики, представляющая со-
бой методику обращения с И, ИЛИ, НЕ и условиями. Она
называется булевой алгеброй.
Некоторые из этих применений относятся к составле-
нию правил, договоров и соглашений, например класси-
фикация случаев и действий, которые следует предпринять
по отношению к ним. Вот типичная задача, к которой при-
менима булева алгебра,— обеспечить отсутствие в. наборе
предложений противоречий и лазеек. Здесь применяется
один из видов булевой алгебры — алгебра классов, т. е.
методика символических вычислений с классами или собра-
ниями случаев при помощи связок И, ИЛИ, .НЕ, ИСКЛЮ-
ЧАЯ и т. д.
Но большинство важных применений булевой алгебры
относится к переключателям, схемам, сигналам, управле-
нию и вычислению — к различным разделам проектиро-
вания и конструирования разумных машин. Здесь булева
алгебра представляет собой алгебру элементов типа
«да — нет» — методику символических вычислений с ком-
бинациями схемных элементов, которые могут быть вклю-
чены или выключены, проводить или не проводить ток,
находиться в том или ином положении и т. д., будучи при
этом связаны друг с другом физическими соединениями,
выражающими И, ИЛИ, НЕ, ИСКЛЮЧАЯ и т. д.
Каким образом булева алгебра может применяться
к двум столь далеким друг от друга областям? По существу
причина этого заключается в том, что булева алгебра имеет
дело с понятиями, выраженными наиболее употребитель-
Булева алгебра. Введение
49
иыми словами языка. Поскольку эти слова используются
во многих областях, мы вправе ожидать, что' и булева
алгебра будет применяться во многих областях.
2. Слова, принадлежащие булевой алгебре
Один из способов получить представление о содержании
булевой алгебры — это выписать слова обычного языка,
входящие в сферу компетенции булевой алгебры; подобно
этому, слова ПЛЮС, МИНУС, УМНОЖИТЬ НА, РАЗДЕ-
ЛИТЬ НА характеризуют сферу компетенции обычной
алгебры. Эти слова приведены в табл. 3.1.
Большая часть значений этих слов рассматривается
точно и строго ^ булевой алгебре. Большая часть, но не
все значения, потому что слова являются продуктом раз-
вития языка и в слове часто слиты воедино значения, родив-
шиеся в разных областях мышления. Возьмем, например,
слово «но», связывающее два высказывания. «Но» и «и»,
если они связывают два высказывания в булевой алгебре,
переводятся одинаково как И: связывая два высказыва-
ния, они утверждают, что оба эти высказывания истинны.
Иначе говоря, «но» имеет то же логическое значение связы-
вания, что и слово «и»; однако по сравнению с «и» «но»
передает еще такую мысль: «вы бы этого не ожидали»,
«против ожидания». А оттенки ожидания, выражаемые
говорящим слушателю, не относятся к булевой ал-
гебре.
Сравнивая эти слова с перечнем слов в табл. 1.1, мы
не обнаружим между ними большого сходства. В обеих
таблицах содержится много слов, принадлежащих симво-
лической логике; в первой таблице помещены некоторые
слова, входящие в символическую логику, но не в булеву
алгебру.
3. Типичная задача и ответ из булевой алгебры
Существует и другой хороший способ получить представ-
ление о том, чем занимается булева алгебра,— ознако-
миться с типичной задачей и ответом на нее. Вот одна такая
задача, предложенная Джоном Венном в 1888 г.
Таблица 3.1
ОБЫЧНЫЕ СЛОВА И ФРАЗЫ, ПРИНАДЛЕЖАЩИЕ БУЛЕВОЙ АЛГЕБРЕ
один группа (означает только
«класс»)
все -ы, -и, -а, -я (означают только если
множественное число)
всякий
и
и/или
любой
что-либо
суть
быть
оба
но
класс
совокупность
состоит из
содержит
каждый
как..., так и
тот или другой
либо...либо
пустой
все
исключая
исключает
исключающий
если
тогда и только тогда,
когда
если..., то
в
включает
включая
есть
содержится в
включен в
род (означает
«класс»)
лежит в
ни...ни
ни один
нет
никакой
ни
не
не оба
ничего
перекрывает
или
или...или оба
или...или.. .любое одно
или несколько из них
или, но не оба
или иначе
сорт (означает
«класс»)
множество (означает
«класс»)
вид (означает «класс»)
некоторый
нечто
тип (означает «класс»)
если не
который есть
которые суть
да
Булева аЛгебрд. Введение 51
Задача, В уставе одного клуба записаны следующие
правила: 1) финансовый комитет должен быть избран из
состава общего комитета; 2) никто не может быть чле-
ном одновременно и общего и библиотечного комитетов,
если только он не состоит также в финансовом комитете;
3) никто из членов библиотечного комитета не может быть
в финансовом комитете. Упростите эти правила.
Ответ. Правила можно упростить следующим образом:
1) финансовый комитет должен быть избран из состава
общего комитета; 2) никто из членов общего комитета не
может быть в библиотечном комитете.
Здесь существенно, что: 1) три высказывания с семью
упоминаниями классов сведены к двум высказываниям
с четырьмя упоминаниями классов; 2) можно строго дока-
зать, что упрощенные правила в ответе точно эквивалент-
ны более длинным правилам в задаче. Способ вычисления
этого ответа С помощью булевой алгебры приведен на
стр. 79—81.
И вообще с помощью булевой алгебры мы можем ана-
лизировать системы правил или условий и преобразовы-
вать их в различные формы, логически эквивалентные или
логически вытекающие одна из другой, и мы можем делать
это прямо, строго и легко. Кроме того, если при использо-
вании булевой алгебры получается слишком много вычис-
лений или они слишком трудны для человеческих спо-
собностей, то можно передать их автоматической вычис-
лительной машине и с-ее помощью получить ответ.
4. Происхождение булевой алгебры
Булева алгебра названа по имени великого английского
математика Джорджа Буля (1815—1864), который в 1854 г.
опубликовал ставшую впоследствии знаменитой книгу
«Исследование законов мышления». В начале гл. 1 он
написал:
«Назначение настоящего трактата — исследовать ос-
новные законы тех операций ума, посредством которых
производится рассуждение; выразить их на символическом
языке некоторого исчисления и на этой основе установить
науку логики и построить ее метод; сделать этот метод
52
Глава 3
основой общего применения математической доктрины ве-
роятностей; и, наконец, собрать из различных элементов
истины, выявленных в ходе этих изысканий, некоторые
правдоподобные указания относительно природы и строе-
ния человеческого ума».
В этой книге Буль изложил большую часть новой ал-
гебры, особенно пригодную для анализа классов и лредло-
жений (высказываний).
Другие математики и логики, в том числе Джон Венн
и Эрнст Шредер, впоследствии значительно усовершенство-
вали и расширили алгебру Буля7.
В 1938 г. Клод Э. Шеннон, в то время студент Масса-
чусетсского технологического института, впоследствии
известный математик и инженер Белловских телефонных
лабораторий, а в настоящее время профессор Массачусет-
ского технологического института, показал, что булеву
алгебру можно прекрасно применять при синтезе переклю-
чательных электрических схем. Его статья «Символический
анализ релейно-переключательных схем»*) представляет
собой веху в развитии применений булевой алгебры8.
5. Как булева алгебра связана с обычной алгеброй?
В обычной алгебре, изучаемой в средней и высшей
школе, рассматриваются:
1) числа и буквы, их обозначающие, т. е. элементы;
2) операции, например сложение, умножение, возве-
дение в степень и т. д.;4*
3) другие понятия, например уравнения, функции,
неизвестные и т. д.
Хотя эта алгебра и получила специальное название
элементарной алгебры, многие ее задачи совсем не элемен-
тарны. Название это было ей присвоено просто потому,
что математики должны были найти для нее какое-нибудь
название, чтобы отличать ее от других, недавно развивших-
ся «современных» алгебр, таких, как линейная ассоциа-
тивная алгебра, алгебра структур, алгебра колец и т. д.
*) Диссертация на соискание ученой степени магистра в Мас-
сачусетсском технологическом институте, опубликована Амери-
канским институтом инженеров-электриков.
Булева алгебра. Введение 53
Булева алгебра в такой же мере алгебра, как и элемен-
тарная алгебра, хотя она имеет дело с иными элементами
и операциями. Во многих отношениях она сходна с эле-
ментарной алгеброй, но в некоторых отношениях проще
и легче.
Элементарная алгебра применяется главным образом
к числам, включая дроби и корни. Булева алгебра приме-
няется главным образом к классам, высказываниям и усло-
виям. Такими классами здесь могут быть классы служащих,
классы вычислительных машин, классы договоров — факти-
чески все классы, типы, виды или собрания.
Элементарная алгебра использует операции ПЛЮС,
МИНУС, УМНОЖИТЬ НА, РАЗДЕЛИТЬ НА и некото-
рые другие. Булева алгебра использует операции И,
ИЛИ, НЕТ и ИСКЛЮЧАЯ почти в их обычном значении.
В элементарной алгебре есть правило а+а=2а,
а ПЛЮС а=2а. Это правило верно, какое бы число ни изо-
бражалось буквой а. В булевой алгебре ему соответствует
правило a\/a=at или а ИЛИ а=а,— верное независимо
от того, какой класс изображается буквой а\ ведь знак V
обозначает ИЛИ, которое не исключает обе альтернативы,
т. е. ... ИЛИ... ИЛИ ОБА (эта связка выражается также
в виде И/ИЛИ). Весь наш опыт говорит нам, что сказать
а ИЛИ а ИЛИ ОБА есть лишь другой и более длинный спо-
соб сказать а. Пример к правилу элементарной алгебры:
7 ПЛЮС 7=ДВАЖДЫ 7. А вот пример к правилу булевой
алгебры: служащие в возрасте 50 лет или выше ИЛИ служа-
щие в возрасте самое меньшее 50 лет ИЛИ и те и другие^
служащие, которые пережили свой 50-й день рождения (без-
различно, как описывается класс, лишь бы не менялось его
содержание).
Знак V выбран для обозначения «или», питому что это
начальная буква латинского слова «vel», означающего
«и/или», в отличие от латинского слова «aub, означающего
«или иначе». (Интересно отметить, что римляне отличали
«и/или» от «или иначе» при ^помощи двух разных слов.)
В элементарной алгебре* а-а=а2, а УМНОЖИТЬ
НА а=а В КВАДРАТЕ. Но в булевой алгебре а-а=а,
а И а=а, так как точка (•) теперь означает... И..., в смыс-
ле И... И. Весь наш опыт подтверждает, что И а И а —
это то же самое, что одно а.
54
Глава 3
Вот, следовательно, в каком отношении булева алгебра
проще и легче, чем элементарная алгебра: в булевой ал-
гебре нет чисел, \\6oa\fa нлиауауа или а • а или а-а-а,
или.... суть просто повторения а и могут быть сразу заменены
одним а. Это значит, что в булевой алгебре нет кратных,
дробей, степеней, численных коэффициентов. И. поэтому
вычислять в булевой алгебре часто бывает быстрее и легче.
Третья операция в булевой алгебре — НЕ. НЕ-а пи-
шется так же, как а'. НЕ имеет некоторое сходство с опера-
цией МИНУС и с операцией ОБРАТНАЯ ВЕЛИЧИНА ОТ,
ибо НЕ-НЕ-а=а, так же как—(—а)—а и 1/(1/а)=а,
Для операции ИСКЛЮЧАЯ по существу не нужно
нового знака, ибо ее можно легко выразить через И и НЕ.
Класс предметов а ИСКЛЮЧАЯ Ь есть то же самое, что
класс предметов, которые суть а И НЕ b=a-b\
Не требуется нового знака и для другого ИЛИ, для ИЛИ
ИНАЧЕ, т. е. для ИЛИ, которое исключает совместность
обеих альтернатив. Действительно, а ИЛИ Ь> НО НЕ ОБА,
есть то же самое, что а ИЛИ Ь ИСКЛЮЧАЯ И а И Ь. Эту
операцию можно записать как (a\/b)-(a-b)'. Последнее вы-
ражение можно упростить и написать a-b'yb-a'.
Иными словами, булева алгебра есть алгебраическая
методика действий с классами предметов с помощью опера-
ций И, ИЛИ и НЕ. Она кажется простой, и она действи-
тельно проста. Элементарная алгебра на самом деле столь
сложна, что человечеству потребовались столетия, чтобы
разработать достаточно хорошие символические приемы для
решения задач о числах, с которыми оно сталкивалось.
С другой стороны, предмет булевой алгебры относительно
настолько прост, что люди плутали в течение столетий,
не имея алгебраического выражения для него. Вместо
этого они применяли громоздкий и весьма неполный заме-
нитель — раздел формальной логики, рассматривающий
силлогизмы и ведущий начало от Аристотеля. Из-за этих
громоздких орудий человечество затратило много труда
на исправление великого множества логических ошибок.
6. Понятие класса
До сих пор мы применяли понятие класса, или группы,
или рода, или вида, или типа, или собрания, или сорта.
Булева алгебра. Введение 55
не уделяя ему особого внимания. Однако это понятие яв-
ляется фундаментальным в том же смысле, в каком фунда-
ментально понятие высказывания (или предложения, или
утверждения): это один из краеугольных камней мысли.
Понятие класса возникает, конечно, из наблюдений
над действительным миром — миром науки. Я не могу
найти лучшего объяснения понятия класса, чем следую-
щие замечания сэра Джорджа П. Томсона, известного фи-
зика и лауреата Нобелевской премии, высказанные им.
в его проникновенной книге «Предвидимое будущее»:
«Миру, в котором мы живем, присуща одна особенность
столь общего и столь универсального характера, что она
не привлекла к себе, по-видимому, должного внимания.
Я назову ее, за отсутствием лучшего определения, «прин-
ципом массового производства». Это — тенденция при-
роды к почти бесконечному повторению всех порождаемых
ею существ. Нагляднее всего эта тенденция проявляется,
видимо, в мире мельчайших объектов. В том количестве
чернил, которое требуется для написания одной буквы
в данной фразе, имеется, пожалуй, достаточно атомов,
чтобы наделить ими по одному всех живых существ не
только на Земле, но и на всех планетах, столь же густо
населенных, как Земля, если бы такие планеты имелись
у каждой звезды нашей Галактики. Но во Вселенной
существует меньше ста разновидностей атомов, а сами
эти сто разновидностей состоят из очень малого числа
(из двух или трех) обычных элементарных частиц —элек-
тронов, протонов и нейтронов (если допустить, что эти
последние являются самостоятельными объектами).
На этом уровне все индивидуумы, образующие мно-
жество объектов, идентичны; то, что они в строгим
смысле слова не отличимы друг от друга, представляет
собой принцип квантовой теории, который может быть
поставлен в один ряд с другими нашими принципами
невозможности. Более крупные объекты уже не явля-
ются строго идентичными,^ однако они чрезвычайно
похожи друг на друга. Примеры, подтверждающие это
положение, могут быть найдены в мире как живой, так
и неживой природы: дождевые капли, песчинки», частицы
дыма, бактерии, клетки любого куска с виду однородной
органической ткани. И хотя в каждом случае может суще-
56
Глава 3
ствовать множество отличимых друг от друга видов, каж-
дый из видов представлен таким числом, которое даже
хладнокровный математик называет значительным, а обык-
новенный человек — неисчислимым. Особенно заметно это
проявляется в мире живой природы. Береза представляет
собой один из видов, образованных множеством особей,
которые, по сути дела, совершенно различны, яд вместе
с тем в своей совокупности явно отличаются от других
видов, например от китов или орхидей. Всякое дерево
покрыто летом большим, хотя, быть может, и не вполне
одинаковым количеством листьев. Каждый лист состоит
из множества сравнительно немногочисленных разновид-
ностей клеток...
.., С моей точки зрения, эта множественность представ-
ляет собой самую замечательную особенность вселенной,
какой она предстает перед нами. Внимательный наблю-
датель обнаруживает это даже визуально, а прогресс
в области разработки точных инструментов и в развитии
научных познаний выявляет эту особенность уже с полной
и поразительной очевидностью. Конечно, такое представле-
ние обусловлено до известной степени бедностью нашего
языка; мы даем названия отличимым классам, но, по-
скольку в нашем распоряжении существует только огра-
ниченное число названий, -наша классификация является
иногда несколько произвольной, в силу чего у нас соз-
дается впечатление о существовании четко, определенных
видов там, где их, быть может, не существует вообще.
Однако правильнее будет сказать, что в процессе своего
становления наш язык испытал на себе влияние естест-
венной классификации. Поскольку существуют отличимые
группы, каждая из которых состоит из множества отдель-
ных индивидуумов, человек изобрел «универсалии», сыграв-
шие столь значительную роль в рассуждениях мета-
физиков.
Это, безусловно, одно из основных явлений мира, ко-
торых не изменят никакие новые открытия. Атомизм
в самом широком смысле этого понятия — массовое произ-
водство, осуществляемое природой,— представляет собой
глубочайшую из научных истин»*).
•) Т о м с о я Дж. П., Предвидимся будущее, М, ИЛ, 1968,
стр. ЗБ—37.
ГЛАВА 4
БУЛЕВА АЛГЕБРА. ОСНОВНЫЕ ПОНЯТИЯ
1. Исходные положения
Основные понятия булевой алгебры (при интерпрета-
ции их в алгебре классов) следующие:
1) Мы говорим о классах, группах или множествах,
которые можно обозначать буквами а, 6, с х, у, ...
Почему мы отказываемся теперь от х, х', х" и xv х2У х3,
х4...? Потому что в булевой алгебре классов мы встречаемся
с математическими объектами лишь одного типа, а не не-
скольких, как в символической логике, в которой нужно
помнить о предметах, свойствах, классах, отношениях,
суждениях и т. д. Поэтому удобно вернуться к системе
обозначений, более сходной с системой обозначений эле-
ментарной алгебры.
2) ayb (читать: «а вэ Ь») означает а ИЛИ Ь ИЛИ ОБА,
т. е. класс предметов, содержащихся либо в классе а,
либо в классе 6, либо в обоих классах.
Иногда в литературе вместо a\Jb применяют а+Ь, но это
неудобно, потому что существует одна интерпретация буле-
вой алгебры (мы изложим ее ниже), при которой элемен-
тами, обозначаемыми буквами а, Ь, с,..., служат числа 1 и О,
и получается, что a\/b=a+b—aby где ПЛЮС (+) и МИ-
НУС (—) имеют теперь свое обычное арифметическое зна-
чение; поэтому целесообразно оставить за знаком плюс
его обычный смысл.
3) a-b, ab (читать: «а точка &», «aft») означает а И Ь,
т. е. класс предметов, содержащихся и в классе а
и в классе Ь.
Удобно, чтобы было два знака для И (точка и написание
рядом), подобно тому как в арифметике операция РАЗДЕ-
58
Глава 4
ЛИТЬ НА обозначается косой чертой (/) и знаком деления (:).
В той интерпретации булевой алгебры, в которой имеются
лишь два числа 1 и 0, обозначаемые буквами а, Ьу с>..., опера-
ция а И & в смысле булевой алгебры есть то же самое, что
операция а УМНОЖИТЬ НА Ь в арифметическом смысле,
и поэтому для того и другого, не впадая в противоречие,
можно применять одно и то же обозначение.
4) а' (читается: «а прим») означает НЕ-а и рассматри-
вается всегда как класс всех предметов, которые не
находятся в классе а.
Иногда в литературе для НЕ-а применяется а (читается
«а с чертой»), но это обозначение неудобно для печати
и написания, особенно когда нужно обозначить повторные
отрицания сложных выражений; например {(а'у b)J у с)'
гораздо удобнее, чем ((а\/Ь)\/с). Иногда в литературе для
НЕ-а применяют —а; это обозначение гораздо удобнее,
чем а (а с чертой), но тильда (~) на пишущей машинке
отсутствует; кроме того, она имеет ширину в три полных
знака, так что выражения будут длиннее, чем в других
обозначениях.
5) Z или 0 (читается: «ничто, пустота, нуль») обозна-
чает нулевой класс, т. е. класс, который не содержит
ничего, т. е. класс, который не содержит совершенно
никаких предметов.
Независимо от того, «существует» ли этот класс или нет,
его удобно рассматривать как существующий. Между чис-
лом нуль и нулевым классом есть, различие: число нуль
есть число элементов в нулевом классе. В булевой алгебре
число нуль в большинстве случае совсем не появляется,
и поэтому удобно применять для нулевого класса знак О
(нуль)., В интерпретации булевой алгебры, состоящей из
двух чисел 1 и 0, нулевому классу соответствует число О,
так что и здесь путаницы не возникает.
6) U или 1 (читается: «всё», «универсальный класс»,
«единица») обозначает универсальный класс, т. е.
класс всех предметов, затрагиваемых при обсуждении
какого-либо вопроса (который поэтому меняется при
переходе к обсуждению другого вопроса, но остается
постоянным в обсуждении одного вопроса). Лица,
Булева алгебра. Основные понятия
59
участвующие в обсуждении, должны условиться и прий-
ти к соглашению об универсальном классе; в против-
ном случае НЕ будет иметь неоднозначный смысл,
тогда как операция ИСКЛЮЧАЯ будет все же одно-
значной.
Между числом элементов в универсальном классе и числом
единица есть различие. В любом случае число элементов
в универсальном классе есть положительное целое число;
часто это большое число или бесконечное число; и лишь
изредка оно бывает единицей. Поскольку число единица
лишь изредка появляется при обсуждении вопросов с по-
мощью булевой алгебры, то цифру 1 удобно использовать
для обозначения универсального класса. В тех случаях,
когда может возникнуть путаница в отношении универ-
сального класса и числа единица, удобно применять для
обозначения универсального класса заглавную бук-
ву U.
7) а=Ь (читается: «а равно Ы) означает: «а взаимоза-
менимо с Ь»; это высказывание а=Ь верно тогда и толь-
ко тогда, когда предметы, содержащиеся в классе а,
суть те же самые предметы, что и содержащиеся в клас-
се Ь.
Здесь обнаруживается различие между свойствами и клас-
сами. Один класс есть то же самое, что другой класс, когда
он содержит точно те же самые элементы. Но одно свой-
ство может быть не тем же самым, что другое свойство, даже
в том случае, если из описаний свойств вытекает, что они
относятся к одному и тому же классу. Например, предполо-
жим, что нас интересуют все ныне существующие животные
и мы рассматриваем свойства «быть единорогом» и «быть
динозавром». В нашем случае класс единорогов пустой
и класс динозавров пустой, и оба класса равны нулевому
классу и, следовательно, равны друг другу. Но необосно-
ванно и не обязательно утверждать, что свойство быть еди-
норогом то же самое, что свойство быть динозавром. Здесь
как бы есть противоречие между понятием свойства и огра-
ничением «класс всех предметов, рассматриваемых в дан-
ном случае». Понятие «свойство» относится как бы к любому
возможному предмету, о котором имеет смысл утверждать
«... имеет свойство».
60
Глава 4
8) афЬ (читается «а не равно Ы) означает: «а не взаимо-
заменимо с ft»; это верно тогда и только тогда, когда
имеется по меньшей мере один предмет, содержащийся
в одном из классов а или & и не содержащийся в другом.
9) acib (читается: «а в Ь, а подкова Ь) означает: «а
НАХОДИТСЯ В &», «а СОДЕРЖИТСЯ В •&»; это
верно тогда и только тогда, когда все предметы, содер-
жащиеся в классе а, содержатся в классе &.
В литературе, кроме подковы (С), для этого отношения
иногда применяются и другие обозначения. Например,
в булевой алгебре высказываний это отношение обычно
выражается стрелкой (—»). Однако стрелка —> в мень-
шей степени подходит для обозначения отношения «а на-
ходится в fot чем С, потому что специфическая форма под-
ковы и соответствующее расположение хорошо выражают
то, что включающим классом является Ь,
2. Распознавание понятий булевой алгебры,
выраженных на обычном языке
Как же мы распознаем эти основные понятия, когда
они выражены на обычном языке? Для них существует
много словесных выражений, помимо тех, которые мы ис-
пользовали выше, когда определяли основные понятия
булевой алгебры. Ввиду этих различий задача их перевода
с обычного языка на язык булевой алгебры не проста
и требует изучения.
Таким же образом, прежде чем люди смогут применять
арифметику, они должны приобрести опыт обращения с от-
дельными числами, такими, как один, два, три и боль-
шие числа. Они должны также развить в себе способ-
ность распознавать числа в окружающей их среде и в языке,
и им нужно научиться распознавать отношения и взаимо-
связи чисел. Все мы начинаем заниматься этой задачей
в очень раннем возрасте; первым числом, которое мы узна-
ем, оказывается два; и к тому времени, когда мы подходим
к первым школьным ступеням, мы уже прошли практиче-
ские повседневные начала арифметики.
Прежде чем мы сможем легко применять булеву алгебру,
мы должны научиться определять, что значит универсал ь-
Булева алгебра . Основные понятия
61
ный класс, нулевой класс и другие классы; мы должны
приобрести навык в распознавании классов. Мы должны
также приобрести способность видеть отношение и взаимо-
связи классов как в окружающей нас среде, так и в языке.
Приобретение этих способностей в общем несложно; оно
основано на рассмотрении многих примеров, показываю-
щих нам постепенно, шаг за шагом, процесс распознавания
классов и их отношений.
Поэтому мы разберем много примеров высказываний
и их переводов в булеву алгебру. Особое внимание будет
уделяться тому обстоятельству, что одно и то же положение
булевой алгебры может выражаться многими различными
перефразировками на обычном языке.
3. Включение классов
Разберем пример. Предположим, что мы берем класс
всех служащих Компании Великих ] озер (несуществую-
щей). Класс этот определяется положениями, приведен-
ными в (гипотетической) брошюре «Устав компании и усло-
вия пенсионной системы». Таким образом, этот класс яв-
ляется универсальным классом для данного обсуждения.
ВЫРАЖЕНИЕ 1.
Все члены пенсионной системы Компании Великих озер
получают пенсионную прибавку.
Перевод.
ВСЕ [члены пенсионной системы Компании Великих
озер (g)] СУТЬ [служащие, получающие пенсионную при-
бавку (d)].
Все g суть d,
g СОДЕРЖИТСЯ В d.
gdd.
Перефразировки.
Члены пенсионной системы Компании Великих озер
получают пенсионную прибавку.
Каждый член пенсионной системы Компании Великих
озер получает пенсионную прибавку.
Всякий член пенсионной системы Компании Великих
озер получает пенсионную прибавку.
&ft
Глава 4
Любой член пенсионной системы Компании Великих озер
получает пенсионную прибавку.
Класс служащих — членов пенсионной системы Компа-
нии Великих озер — включен в класс служащих, которые
получают пенсионную прибавку.
Мы замечаем, как предикат «получают пенсионную при-
бавку» переводится в предикат точно с таким же'смыслом
«суть служащие, получающие пенсионную прибавку»; этот
последний уже относится к классу «служащие, получающие
пенсионную прибавку». Другой пример — предложение
«Все моллюски прячутся» можно преобразовать в предло-
жение «все моллюски суть моллюски, которые прячутся».
Предложение «Все х имеют свойство К» можно преобразо-
вать во «Все х суть х, которые имеют свойство а». Таким
образом, очень много предложений обычного языка легко
преобразуются в высказывания, выражающие отношения
между классами.
Итак, мы привели, во-первых, выражение на обычном
языке (в данном случае полное высказывание), во-вторых,
его перевод в булеву алгебру, последовательные шаги
и результат, и, в-третьих, некоторые из обычных перефра-
зировок этого выражения (т. е. другие способы сказать
то же самое, имеющиеся в обычном языке). Каждая из
этих перефразировок после преобразования дает тот же.
результат, gdd. Слова и су<ЭД>иксы в перефразировках,
обозначающие отношение С и указывающие, что оно везде
то же самое, выделены курсивом ввиду их важности. Этот
пример одного из положений булевой алгебры поясняет,
как эта методика рассуждения сберегает труд мышле-
ния: вместо десятка способов высказать нечто, каждый из
которых требует десятка слов, мы имеем теперь просто
gdd.
Сравним это с примерами из элементарной алгебры.
Пусть нам дано следующее высказывание:
выражение.
Количество работы, проделанной человеком за один
час, прямо пропорционально его почасовой оплате и обрат-
но пропорционально квадратному ^орню из числа часов,
которые он работает в сутки.
Булева алгебра. Основные понятия 63
Перевод.
(Количество работы (м>), проделанной человеком за один
час) ПРЯМО ПРОПОРЦИОНАЛЬНО (его почасовой оп-
лате) (р) И ОБРАТНО ПРОПОРЦИОНАЛЬНО (квад-
ратному корню из) (числа часов (я), которые он работает
в сутки),
w прямо пропорционально р и обратно пропорционально
ук.
т~р\\1Уп).
Очевидно, эти два процесса перевода имеют много об-
щего. Перевод не делается в уме одним махом, сразу из
слов обычного языка в точные символы. Он осуществляется
четырьмя этапами:
1) Отмечают упоминаемые предметы; мысленно выде-
ляют и разделяют их, группируют в целые единицы, за-
ключают их в математические скобки.
2) Выбирают сжатые, способствующие запоминанию
символы для их сокращенного обозначения.
3) Затем отмечают другие слова, выражающие соотноше-
ния.
4) Распознают эти отношения и обозначают их симво-
лами, регулярно используемыми для их выражения.
В элементарной алгебре упоминаемые предметы почти
всегда суть числа. Если в задаче точно указано, какое это
число, мы чаще всего применяем его нормальное обозна-
чение в десятичной системе. Например, если нам говорят
о числе «дюжина», мы пишем 12. Если число не указано,
то мы используем какую-нибудь букву, например а, 6,
х, у, для обозначения числа, упомянутого в этом месте,
точно так же как в языке местоимение обозначает ранее
упомянутое существительное. Отношение, выраженное
оставшимися словами, будет почти всегда состоять из од-
ной или нескольких операций сложения, умножения и дру-
гих, хорошо известных арифметических операций.
В булевой алгебре упоминаемые предметы или являются
классами, или преобразуются в классы в результате пере-
фразировки. Поскольку для классов нет стандартной си-
стемы обозначений, мы обычно должны присвоить им буквы
как в случае, когда точно знаем, какой это класс, так
и в случае, когда мы не знаем, какой это класс. Отношение,
64
Глава 4
выраженное оставшимися словами, можно обычно распо-
знать без затруднения: оно будет той или иной комбина-
цией операций И, ИЛИ, НЕ и других операций булевой
алгебры.
4. Равенство классов
Рассмотрим теперь еще несколько примеров из булевой
алгебры, выраженных на обычном языке.
ВЫРАЖЕНИЕ 2.
Служащие с непрерывным стажем работы не меньше
пяти лет являются членами пенсионной системы Компании
Великих озер.
Перевод,
[Служащие с непрерывным стажем не меньше пяти лет
{f)] СУТЬ ТЕ ЖЕ [служащие, которые являются членами
пенсионной системы (g) Компании Великих озер].
f суть те же g.
f РАВНО g.
Перефразировки.
Служащие с непрерывным стажем работы не меньше
пяти лет состоят членами пенсионной системы Кампании
Великих озер.
Служащие с непрерывным стажем не меньше пяти лет
тождественны со служащими, которые являются членами
пенсионной системы Компании Великих озер.
Служащие с непрерывным стажем не меньше пяти лет —
то же самое, что и служащие, кбторые состоят в пенсионной
системе Компании Великих озер.
Этот пример поясняет два существенных обстоятельства.
Во-первых, когда члены обоих классов одни и те же, от-
ношение РАВНО будет справедливо» каковы бы ни были
словесные описания этих двух классов; в данном случае
описания весьма различны, но содержание одно и то же.
Во-вторых, слово «суть» может выражать либо включение,
либо равенство («суть те же»), так что при отсутствии по-
яснений оно может быть истолковано совсем иначе, чем
имелось в виду.
Булева алгебра. Основные понятия 65
5. Неравенство классов
ВЫРАЖЕНИЕ 3.
Неверно, что служащие с непрерывным стажем работы
не меньше пяти лет те же самые, что и члены пенсионной
системы Компании Великих озер.
Перевод.
НЕ ВЕРНО, ЧТО (служащие с непрерывным стажем
работы не меньше пяти лет) СУТЬ ТЕ ЖЕ (члены
пенсионной системы Компании Великих озер).
Не верно, что / есть то же, что g.
f не равно g.
Перефразировки.
Служащие с непрерывным стажем работы не меньше
пяти лет не тождественны с членами пенсионной системы
Компании Великих озер.
Имеется различие между работниками с непрерывным
стажем работы не меньше пяти лет и членами пенсионной
системы Компании Великих озер.
Выражение 3 противоречит выражению 2. Но, как
и в математике, мы можем рассматривать в ходе решения
задачи как а=Ь, так и а Ф Ь.
6. Нулевой класс
ВЫРАЖЕНИЕ 4.
Нет служащих с особой пенсионной прибавкой 500 дол*
ларов в год или выше.
Перевод.
НЕТ (служащих с особой пенсионной прибавкой 500 дол-
ларов в год или выше).
Нет s.
s РАВНО НУЛЕВОМУ КЛАССУ
s=0.
Перефразировки.
Ни один служащий не получает особой пенсионной при*
базки.500 долларов в год или выше.
Никто не получает особой пенсионной прибавки 500 дол-
ларов в год или выше.
'&_.
Глава 4
Невозможно, чтобы какой-либо служащий получил пен-
сионную прибавку 500 долларов в год и выше.
Назначение какому-нибудь служащему особой пенсион-
ной прибавки 500 долларов в год или выше не соответствует
правилам.
Если какой-нибудь служащий получит особую пенсион-
ную прибавку 500 долларов в год или выше, то он автома-
тически перестанет иметь особую пенсионную прибавку
500 долларов в год или выше.
Число служащих, имеющих особую пенсионную при-
бавку 500 долларов в год или выше, равно нулю.
Нет примеров, когда служащие получали бы особую пен-
сионную прибавку 500 долларов в год или выше.
Осмысленной перефразировкой в данном случае является
следующая: «не соответствует правилам»; большинство слу-
чаев «невозможности» являются лишь случаями положения
«не соответствует правилам», и поэтому они основаны на
правилах. Если бы классом всех обсуждаемых предметов
были бы служащие Компании Великих озер, действительно
существующей при реальных правилах, а не служащие
Компании Великих озер (положение которых определяется
правилами упомянутой брошюры), то вполне возможно,
что служащие могли бы получить особые ежегодные пен-
сионные прибавки более чем по 500 долларов.
7. Классы, которые не являются пустыми
ВЫРАЖЕНИЕ 5.
Имеются служащие, получающие пенсионную прибавку.
Перевод.
ИМЕЮТСЯ в(служащие, получающие пенсионную при-
бавку).
Имеются d.
d НЕ РАВНО НУЛЕВОМУ КЛАССУ.
dj=0.
Перефразировки.
Некоторые служащие получают пенсионную прибавку.
То, что работник получает пенсионную прибавку, соот-
ветствует правилам.
Служащему возможно получить пенсионную прибавку.
Булева алгебра. Основные понятия 67
Имеются некоторые примеры, когда служащие полу-
чают пенсионную прибавку.
Число служащих, получающих пенсионную прибавку,
не равно нулю.
Во второй и третьей перефразировке этого выражения
явно подчеркивается, что мы рассматриваем правила бро-
шюры, а не действительное положение вещей. В первой,
четвертой и пятой перефразировке это обстоятельство
подразумевается, потому что при всяком строгом обсужде-
нии всегда имеют в виду класс всех обсуждаемых предметов.
На самом деле в какой-нибудь промежуток времени слу-
чайно может не оказаться работников, получающих пен-
сионную прибавку, в то же время право на получение ее
работниками вполне соответствует правилам; брошюра
должна была бы содержать пункты, предусматривающие
этот случай.
8. И; распознавание классов несколькими способами
ВЫРАЖЕНИЕ 6.
Служащие мужского пола с непрерывным стажем работы
не меньше пяти лет, получающие пенсионную прибавку.
Перевод «а».
(Служащие (е) мужского пола с непрерывным стажем
работы, получающие пенсионную прибавку.)
е
Перевод «б».
Служащие, которые суть (работники мужского пола (т))
И (служащие, имеющие стаж непрерывной работы не мень-
ше пяти лет (/)) И (служащие, получающие пенсионную
прибавку (d)).
т и / и d.
m-f-d.
mfd.
Перефразировки.
Служащие мужского пола,^которые имеют стаж непре-
рывной работы не меньше пяти лет и получают пенсионную
прибавку (заметим, что запятая и союз «и» также представ-
ляют важную часть языка, указывая на отношение).
Служащие, которые удовлетворяют всем следующим
условиям: 1) являются мужчинами; 2) имеют стаж неп'ре-
68
Глава 4
рывной работы не меньше пяти лет; 3) получают пен-
сионную прибавку.
Очевидно, что e=mfd1 так как содержание е то же самое,
что содержание tnfd. Различные переводы получаются
из-за того, что применение булевой алгебры допускает
некоторую свободу в выборе классов, подлежащих обозна-
чению и обсуждению. Какой перевод лучше, зависит от
цели рассмотрения. Перевод «б» поясняет также, какое
из нескольких значений слова И является значением опера-
тора-точки (•) булевой алгебры, а именно И, которое экви-
валентно ограничительному относительному предложению,
И, которое обособляет и ограничивает какой-нибудь род
предметов.
9. Отрицание класса
ВЫРАЖЕНИЕ 7.
Не члены пенсионной системы Компании Великих озер.
Перевод.
НЕ-(члены пенсионной системы (g) Компании Великих
озер).
HE-ff.
fff.
ВЫРАЖЕНИЕ 7а.
Все служащие Компании Великих оз§р, которые яв-
ляются не членами пенсионной системы Компании Вели-
ких озер.
Перевод.
Служащие, которые суть (служащие Компании Вели-
ких озер), НО НЕ (члены пенсионной системы Компании
Великих озер).
1 и не g.
1*'.
В чем различие между этими двумя выражениями?
Один ответ может быть таким: (7а) представляется точным
и ясным, а (7) — двусмысленным. В тех случаях, когда лица,
участвующие в обсуждении, пришли к соглашению об
универсальном классе, т. е. классе всех обсуждаемых пред-
метов, (7) и (7а) в точности эквивалентны: g'= 1 -g'. в булевой
алгебре, так же как (—8) = 1 УМНОЖЕННОЕ НА —8
Булева алгебра. Основные понятия 69
в элементарной алгебре; выражение (7) является точным
и ясным. Именно это и происходит в данном случае, так
как мы условились, что нас интересуют все служащие
Компании Великих озер. Но в тех случаях, когда обсуж-
дающие не договорились об универсальном классе, не вы-
брали одну и ту же область, подлежащую обсуждению,
НЕ является двусмысленным, так как обозначает разные
предметы для разных лиц. Поэтому выражение (7) неясно,
и применение булевой алгебры не достигает цели вслед-
ствие несоблюдения ее правил.
Перефразировки выражений (7) или (7а).
Все служащие Компании Великих озер, за исключением
входящих в пенсионную систему Компании Великих озер.
Служащие—не члены пенсионной системы Компании Ве-
ликих озер.
Другие служащие, помимо членов пенсионной системы
Компании Зеликйх озер.
10. Исключение
ВЫРАЖЕНИЕ 6.
Служащие, которые не входят в пенсионную систему,
будучи приемлемыми кандидатами, за исключением служа-
щих, которые, будучи приемлемыми кандидатами, не рабо-
тают.
Перевод.
(Служащие, которые не входят (t) в пенсионную си-
стему, будучи приемлемыми кандидатами), ИСКЛЮЧАЯ
[служащих, которые, будучи приемлемыми кандидатами,
не работают (больны) (ft)].
/ исключая ft
/ и не ft
/.ft'
Перефразировки.
Служащие, которые не входят в пенсионную систему,
будучи приемлемыми кандидатами, но не служащие, кото-
рые, будучи приемлемыми кандидатами, не работают.
Служащие, которые не входят в пенсионную систему,
будучи приемлемыми кандидатами, помимо служащих,
которые, будучи приемлемыми кандидатами, не работают.
70
Глава 4
Служащие, которые не входят в пенсионную систему,
будучи приемлемыми кандидатами, исключая случай, когда
таковые служащие, будучи приемлемыми кандидатами,
не работают.
Служащие, которые не входят в пенсионную систему,
будучи приемлемыми кандидатами, за исключением служа-
щих, которые, будучи приемлемыми кандидатами, не рабо-
тают.
П. ИЛИ (И/ИЛИ, ИЛИ ЖЕ)
ВЫРАЖЕНИЕ 9.
Все служащие, имеющие право на ежегодную пенсион-
ную прибавку или особую пенсионную прибавку.
Перевод.
(Служащие, имеющие право на ежегодную (а) пенсион-
ную прибавку) ИЛИ (служащие, имеющие право на особую
(р) пенсионную прибавку),
а или р или оба.
aVp.
Перефразировки.
Служащие, имеющие право на ежегодную пенсионную
прибавку или на особую пенсионную прибавку или и на
то и другое.
Служащие, имеющие право на ежегодную пенсионную
прибавку и/или на особую пенсионную прибавку.
Служащие, которые удовлетворяют одному или обоим из
следующих условий: 1) имеют право на ежегодную пенсион-
ную прибавку; 2) имеют право на особую пенсионную при-
бавку.
Значение оператора ИЛИ (V) в булевой алгебре есть
значение союза ИЛИ, которое не исключает наличия обоих,
нескольких или всех упомянутых альтернатив. Ниже по-
ясняется «исключающее» ИЛИ.
ВЫРАЖЕНИЕ. 10.
Служащие, имеющие право на ежегодную пенсионную
прибавку или на особую пенсионную прибавку, но не имею-
щие право на то и другое.
Перевод.
(Служащие, имеющие право на ежегодную пенсионную
прибавку) ИЛИ (служащие, имеющие право на особую пен-
Булева алгебра. Основные понятия 7}
сионную прибавку), НО НЕ (служащие, имеющие право
и на ежегодную и на особую пенсионные прибавки).
а или р, но не а и р.
{а\/р).{ар)'.
Перефразировки.
Служащие, имеющие право на ежегодную пенсионную
прибавку или же на особую пенсионную прибавку.
Либо служащие, имеющие право на ежегодную пенсион-
ную прибавку, либо служащие, имеющие право на особую
пенсионную прибавку.
Служащие, имеющие право нгту или иную из пенсион-
ных прибавок — ежегодную или особую, исключая тех,
которые имеют право на обе.
Слово ИЛИ иногда применяют в смысле «или же»^
а иногда в смысле «и/или». Это двусмысленное применение
является одной из наиболее неприятных двусмысленно-
стей обычного языка. В булевой алгебре эта двусмыслен-
ность пропадает, так как разные значения передаются раз-
личными символами. Но при переводе со слов обычного
языка в булеву алгебру нужно уметь правильно определять
из контекста, какое ИЛИ в действительности имеется
в виду — И/ИЛИ или ИЛИ ЖЕ.
12. Нулевой класс и универсальный класс
ВЫРАЖЕНИЕ 11.
Никто из служащих не может быть и мужчиной, и жен-
щиной.
Перевод.
(Никто из служащих не) ЕСТЬ И (мужчина (т)) Й НЕ
(мужчина).
О есть и т, и не т
Перефразировки
Нет ни одного служащего, являющегося и мужчиной
и не мужчиной.
Число служащих, каждый из которых является и муж-
чиной, и не мужчиной, равно нулю.
ВЫРАЖЕНИЕ 12.
Все служащие суть либо мужчины, либр женщины,
72
Глава 4
Перевод.
(Все служащие) СУТЬ ЛИБО (мужчины), ЛИБО НЕ
(мужчины).
1 есть либо т, либо не т.
1=(т у т') (т-т')'.
Перефразировки.
Любой служащий есть или мужчина, или же не
мужчина.
13. Только ... может быть...
ВЫРАЖЕНИЕ 13.
Только служащие, являющиеся конторскими служа-
щими, могут получить особую пенсионную прибавку.
Перевод.
ТОЛЬКО (служащие, являющиеся конторскими (с) слу-
жащими) МОГУТ БЫТЬ (служащими, получающими осо-
бую (р) пенсионную прибавку).
Только с могут быть р.
Все р суть с.
pCZc
Перефразировки.
Только конторские служащие являются приемлемыми
кандидатами на особую пенсионную прибавку.
В число служащих, работающих в конторе, входят все
служащие, получающие особую пенсионную прибавку.
Служащие, работающие в конторе, включают всех слу-
жащих, получающих особую пенсионную прибавку.
Следует заметить, что это выражение является просто
обратным по отношению к выражению «все... суть...».
14. Последний пример
ВЫРАЖЕНИЕ 14.
Служащие, оставляющие работу в Компании Великих
озер, не получают компенсации взамен пенсии, которая
могла бы быть им гарантирована, если бы они продолжа-
ли работу, за исключением служащих женского пола
с непрерывным стажем работы не меньше одного года,
которые увольняются ввиду выхода замуж, предупреждая
об этом заранее.
Булева алгебра. Основные понятия 73
Перевод.
(Служащие, оставляющие работу (г) в Компании) СУТЬ
[НЕ (служащие, которым выплачивается компенсация
взамен причитающейся (q) им пенсии)], ИСКЛЮЧАЯ: слу-
жащие, которые суть НЕ (мужского пола (т)) И имеют
(непрерывный стаж работы не меньше одного (о) года) И
(увольняются ввиду выхода замуж (w)) И (подают заранее
заявление (п) об уходе), СУТЬ (служащие, получающие
при увольнении компенсацию взамен причитающейся (q)
им пенсии).
Все г суть (не q), исключая: гине^иоишип суть q
rm'ownCZq-, r(m'own)' d<7'-
Из этого примера можно сделать несколько выводов.
Во-первых, во многих фразах, в которых понятие «слу-
жащие», по-видимому, отсутствует, его можно заставить
появиться, задавая тем самым некоторый класс; ведь
класс — основной элемент булевой алгебры классов, как
число — основной элемент арифметики. Во-вторых, слово
«исключая» в этом выражении описывает скорее отношение
между двумя предложениями, чем отношение между двумя
классами.
15. Сводка переводов
В табл. 4.2 дается сводка переводов обычных выражений
русского языка в булеву алгебру.
Таблица 4.2
Обычные слова Стандартные булевы Стандартное выраже»
слова 1) нне булевой алгебры
1. Все а суть b а находится в b ad b
2. Все а не суть b ДВУСМЫСЛЕННО—
см. № 3 и № 17
3. Все а суть не-6 а находится в не-6 aab'
4. а есть b а находится в b aCLb
5. а и Ь ДВУСМЫСЛЕННО—
см. № 7, № 22, № 25
') Булевы слова сил hi и «hi не являются двусмысленными.
Продолжение табл. 4.2
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
25-
Обычные слова
Любое а есть 6
То, что есть и а и
6
q исключая 6
Все есть а
а за исключением
b
Если это есть я,
то это есть 6
Это есть а тогда
и только тогда,
когда это есть b
а включены в b
Никакие а не суть
b
Ни а ни b
Не а и 6 одновре-
менно
Не все а суть Ь
Ни одно а не есть
ь
а или же 6
а или 6, но не оба
а или b
а или & или оба
Это есть а только
в том случае, если
это есть b
Некоторые а суть b
а, которые суть b
6, которые суть а
а
а
а
а
а
а
а
а
а
Стандартные булевы
слова 1)
находится в b
и b
и не-6.
равно универсаль-
ному классу
и не-6
находится в b
равно b
находится в b
и b пусто
не-(а или Ь)
не-(а и 6)
а
а
а
а
и не-6 не пусто
и 6 пусто
и не-6 или 6 и не-а
или 6 и не (а и 6)
ДВУСМЫСЛЕННО—
а
а
а
а
Ь
см. Кз 19 и 22
и/или 6, а или 6
находится в 6
и 6 не пусто
и 6
и а
Стандартное выраже-
ние булевой алгебры
ас*
а-Ь
с-6'
а=1
а-6'
асб
а=6
асб
а»6=0
(flVb)'
(ab)f
а-Ь'фО
а-6 = 0
а-6' V&-e'
(а\уЬ)-(аЬ)'\ что
сводится к
а-6' \yb-a'
а\/Ь
асб
а-6=^0
а-6
6-а, то же самое,
что а-J
Продолжение табл. 4.2
27.
28
29.
30.
31.
32.
Обычные слова
Не существует ни
одного а
Не существует
никаких а
Существует неко-
торое а
Существуют не-
которые а
Имеется некоторое
а
Нет ни одного а
Стандартные булевы
слова 1)
а пусто
а пусто
а не пусто
а не пусто
а не пусто
а пусто
Стандартное выраже-
ние булевой алгебры
а = 0
а=0
афО
афО
афО
а=0
1) Булевы слова снли» н «н»~не являются двусмысленными.
ГЛАВА Ь
БУЛЕВА АЛГЕБРА. ВЫЧИСЛЕНИЯ
1. Сводка правил для символических вычислений
с помощью булевой алгебры
Как же производить вычисления в булевой алгебре?
В булевой алгебре имеется дюжины три правил, доста-
точных для того, чтобы решать почти все задачи. Сформуй
лируем их в символах и словах:
1. а V 6 = 6 V а а или Ь есть то же самое,
что Ь или а
2. {a\lb)\Jc = a\J{b\/c) (а или Ь) или с есть то же
самое, что а или (Ь или с).
3. а Ь = Ь а а и 6 есть то же самое,
что Ь и а
4. (а-Ь)-с = а-(6 с) (а и Ь) и с есть то же
самое, что а и (6 и с).
Эти четыре правила совпадают с правилами обычной ал-
гебры для операций ПЛЮС и УМНОЖИТЬ НА. Первое
и третье правила называются коммутативными, или переме-
стите льными, законами; другие два — ассоциативными, или
сочетательными, законами.
5. a(b\/c) = ab\/ac а и (6 или с) есть то же
самое, что а и 6 или а и с.
6. a\/bc = (a\/b)(a\/c) а или (6 и с) есть то же
самое, что (а или Ь) и
(а или с).
Эти два правила суть дистрибутивные, или распредели-
тельные, законы булевой алгебры. В обычной алгебре чисел
имеется только один дистрибутивный закон: а(Ь + с) =
= ab + ac.
Булева алгебра. Вычисления 77
7. а\/а = а а или а есть то же самое,
что а
8. fl-fl = fl а и а есть то же самое,
что а
Первое правило верно в обычной алгебре только для
числа 0. Второе правило верно только для чисел 0 и J.
Напротив, в булевой алгебре эти правила верны для всех
классов без исключения.
9. а\/{а-Ь)=а То, что есть а или (а и 6),
есть то же самое, что а.
10. a(ayb) = a То, что есть а и (а или 6),
есть то же самое, что а.
Эти два правила называются законами поглощения, так как
добавочный член или коэффициент в выражении «погло-
щается».
Теперь мы переходим к шести правилам об уни-
версальном классе и нулевом классе:
11. а\/0 = а То, что есть а или ничто,
есть то же самое, что а.
12. а-1=а То, что есть и а и все,
есть то же самое, что а.
13. aVl = l То, что есть а или все,
есть то же самое, что все.
14. a«0 = 0 То, что есть и а и ничто,
есть то же самое, что ничто.
15. a\Ja' = \ Все есть а или не-a (вы-
ражено в обратном поряд-
ке ввиду свойств языка).
16. a«a' = 0 Ничто не есть и а и не-a
(выражено в обратном по-
рядке).
Некоторые правила об отрицании:
17. aV& = (a'-6')' а или Ь есть то же самое,
что не (не-a и не-6).
18. (a\jb)'= а'-b' То, что не есть ни а, ни 6,
есть то же самое, что есть
не-a и не-6.
19. a-& = (a'V&')' а и b есть то же самое,
что не-(не-а или не-6).
78
Глава 5
20. (a-6)'=a'V6' То, что не есть и а и 6,
есть то же самое, что есть
не-a или не-6.
21. abyab' = а То, что есть а и 6 или а
и не-6, есть то же самое,
что а.
22. (aV6)(aV6') = a То, что есть и (а или 6)
и (а или не-6), есть то же
самое, что а.
23. (а')'=а То, что не есть не-a, есть
то же самое, что а.
24. 0' = 1 То, что есть не-ничто,
есть все.
25. Г = 0 То, что есть не-все (есть
не-что-либо), есть ничто.
Правила об отношении НАХОДИТСЯ В или о включении
классов:
26. a С 6 эквивалентно а -6' = 0, или ab = а, илиа'\/6=1,
или а\/6 = 6, или b' da'. Выражая это словами, мы гово-
рим, что следующие высказывания все вэаимозаменимы:
1) а находится в 6.
2) Ничто не есть иди не-6.
3) То, что есть и а и 6, есть то же самое, что а.
4) Все есть не-a или 6.
5) То, что есть а или 6, есть то же самое, что 6.
6) Не-6 находится в не-a.
Обобщение предыдущих правил для большего числа
классов:
27. l=(aVa')(6V6,)(^V^)--.
Все есть либо а, либо не-a, и 6 или не-6 и с или не-с...
28. {ауЬусу...)'=а'Ь'с'...
То, что не есть (а или 6 или с или ,..), есть то же
самое, что есть не а и не-6 и не-с
Правила об отношении равенства между классами:
29. а = 6 эквивалентно отношениям a6'Va,6 = 0f или
aVb —аб, или a6Va,6/ = l, или и aCZ6 и бСа.
Все следующие высказывания эквивалентны:
1) Класс а равен классу 6.
2) Ничто не есть а и не-6 или 6 и не-a.
Булева алгебра. Вычислений
»
3) Все есть и а и Ь или и не-а и не-6»
4) а находится в 6, и Ь находится в а.
Некоторые правила для действий с равенствами, функция-
ми и значениями переменных:
30. xVУ = 0 эквивалентно х = 0 и у = 0.
Следующие высказывания взаимозаменимы:
1) Ничто не есть х или у.
2) Ничто не есть х и ничто не есть у.
31. xVy=l и ху = 0 эквивалентно х=г/' или у = х\
Следующие высказывания взаимозаменимы:
1) Все есть х или у, или ничто не есть и х и у.
2) х есть не-t/.
3) у есть не-х.
32. Любое выражение можно привести к виду Ах\/Вх'> —
«нормальной форме» функции /(х) одной переменной х так:
/(x)-/(l).*V/(0).*'f
f(B) = AB,
/(0)f=B
ЛВс/(х)С>4\/5 для всякого х.
33. Уравнение Лх\/Я*' = 0 эквивалентно BcixczA\
или х = Ви'\/А'и для любого и.
34. Для любого a, OCZadl.
35. Для любых а и Ь не обязательно, чтобы имело место
либо aCZb, либо 6cZa.
2. Пример вычислений
В дальнейшем мы приведем много примеров вычислении
с помощью этих правил. Однако чтобы уже сейчас пока-
зать, каким образом можно применить эти правила, обра-
тимся к задаче Дж. Венна, сформулированной на стр. 51,
и решим ее.
Задача. В уставе одного клуба записаны следующие
правила: 1) Финансовый комитет должен быть избран из
80 Глава 5
состава общего комитета. 2) Никто не может быть
членом и общего и библиотечного комитетов, если он не
входит также в финансовый комитет. 3) Никто из членов
библиотечного комитета не может быть в финансовом
комитете. Упростить эти правила.
Решение. Пусть /—члены финансового комитета, g —
члены общего комитета и Ь — члены библиотечного комитета.
Данные условия можно перевести на язык булевой
алгебры следующим образом:
1) Все / суть g.
fczg
fg' = 0 на основании правила 26
2) Все, которые суть и g и Ь> суть /.
gbczf
gbf' = Q на основании правила 26
3) Нет членов, являющихся и / и g.
6/ = 0
fg'Vgbf'Vbf = 0
fg'Vbf'gVbf = 0
fg'Vbf'g\/bf(gVg') = 0
fg'Vbf'gVbfgVbfg'=0
(fg'Vbfg')V(bf'gVbfg) = 0
fg'Vbg(fVf') = 0
fg'\/bg = 0
Для объединения этих усло-
вий пишем каждое условие
так, чтобы оно равнялось
нулевому классу и связываем
посредством ИЛИ (правило 30)
Располагаем члены в алфавит-
ном порядке, чтобы облегчить
систематическую обработку.
Используем правило
а = а (с\/с') (правило 21)
Используем правило а (с Vс')=
= ас\/ас' (правило 5)
Перегруппировка
Используем правило а\/ас = а
и ab\/ac = a{b\/c)
(правила 9,5)
Используем правило а\/а' = I
и а • 1 «= а (правила 15, 12)
Булева алгебра. Вычисления
81
/£' = 0, bg = Q Если *v*/ = 0, то х = 0 и
у—О (правило 30)
fdg Если ab' = 0, то adb
(правило 26)
Переводим эти два упрощенных предложения:
Ответ, Правила можно упростить следующим образом:
1) финансовый комитет должен быть избран из состава
общего комитета; 2) никто из членов общего комитета не
может быть в библиотечном комитете.
3. Почему верны правила вычислений в булевой алгебре?
Для того чтобы правильно ответить на этот вопрос,
нужно сначала установить различие между истиной, осно-
ванной на наблюдениях, и истиной, основанной на логиче-
ском рассуждении, различие между «фактами» и «обосно-
ванными доводами», между истинами наблюдаемыми и исти-
нами доказываемыми.
С точки зрения внимательного наблюдателя реального
мира эти правила верны потому, что они подытоживают на-
блюдаемые свойства и отношения классов, причем не заме-
чалось никаких исключений. Мы можем сказать, например,
что ученые изучали классы и их отношения и подытожили
свои наблюдения в этих эмпирических правилах. Например,
в следующем параграфе этой главы мы рассмотрим изобра-
жения точек на листе бумаги и сами сможем произвести
достаточно наблюдений, чтобы убедиться в том, что мно-
гие из этих правил почти наверное истинны.
Однако с точки зрения, математика или логика эти пра-
вила истинны по другой причине: они логически вытекают
из нескольких основных исходных понятий и допущений.
Если принять эти «неопределимые понятия» и «недоказу-
емые допущения», то все вытекающее отсюда должно быть
логически правильным. Цсе приведенные выше правила
вычислений либо вклюиены в допущения, либо могут быть
доказаны методами логики на*основе этих допущений.
Далее, можно доказать, что булева алгебра внутренне
свободна от противоречий, непротиворечива в том смысле,
что не могут быть одновременно верными какое-либо
предложение булевой алгебры и его отрицание.
82
Глава б
Между прочим, для элементарной алгебры (алгебры
обычных чисел) было обнаружено, что отсутствие противо-
речия нельзя доказать. Это недавнее и довольно обескура-
живающее открытие. Таким образом, в шутку можно было
бы утверждать, что булева алгебра лучше элементарной.
4. Сводка правил для графических вычислений
с помощью булевой алгебры
Как можно представить графически классы, их свойства
и отношения? Мы изображаем универсальный класс, класс
всех обсуждаемых предметов, прямоугольником:
Каждый из упоминаемых классов может перекрываться
со всеми остальными. Поэтому мы изображаем их в ви-
де замкнутых областей внутри прямоугольника так, что
каждый класс перекрывается со всяким сочетанием осталь-
ных. НЕ-а изображается всей областью в прямоугольнике
вне а.
Для одного класса а:
Для двух классов а и Ь:
Для трех классов а, Ь и с:
С Т' Ю-ъа'
1 <tir | /
гзи,
Нулевой класс как таковой не имеет специального
местоположения. Но класс, который мы считаем пустым,
Булева алгебра. Вычисления
83
изображается заштрихованной областью.
НЕ-а пусто:
а' = 0:
Класс, о котором известно или доказано, что он непу-
стой, отмечается звездочкой в его области.
Некоторые а суть Ь:
аЬфО:
Если не ясно, где находится непустой класс, то звез-
дочка соединяется прямой линией с другими звездочками,
чтобы указать многозначность положения непустого
класса.
Некоторые а суть Ь:
аЬ ф 0:
Вот некоторые примеры графического представления
отношений классов:
Все а есть Ь:
aczb:
а&' = 0:
а есть то же, что Ь:
а = Ь:
ab'ya'b = Q\
84
Глава 5
Все а есть Ь или с:
acz&Vc:
а(Ьус)':
Ни одно а не есть Ь:
а6 = 0:
Только а может быть Ь:
baa:
Ьа* = 0:
Для изображения отдельных предметов, содержащихся
в классах, можно применять точки. Например, допустим,
что мы рассматриваем всех служащих инспекционного от-
дела Компании Великих озер на 1 января 1938 г. (пусть
это будут Адаме (А), Браун (В), Коэн (С), Дэйвис (D),
Эдварде (£), Филдс (F), Грей (G)) и служащих, имеющих
непрерывный стаж работы.не меньше пяти лет (пусть это
будут Адаме, Браун и Грей), и служащих, являющихся
пароходными инспекторами (пусть это будут Браун, Коэн,
Дэйвис и Грей). Эту ситуацию можно изобразить следую-
щей графической диаграммой:
В этом случае можно начертить огромное число диаг-
рамм, и все они будут одинаково хороши. Например,
/ можно с таким же успехом изобразить любой дру-
гой границей, охватывающей Л, В, G, ибо, по опреде-
лению, если предметы класса d те же самые, что и
предметы класса Ь, то а=Ь. Теперь ясно, почему
Булева алгебра. Вычисления
85
>
а с
cm
тм
цш
w
MF
а с
/7^
|
х
*
-.
^—««
н+н
Шике/
нулевой класс не имеет специального местоположения:
его можно поместить где угодно, лишь бы он не
содержал ни одной из семи точек А, В, С, D, £, F и
G. Граница класса не обязательно должна быть одной
86
Глава 5
замкнутой кривой. Однако если каждый член представлен
одной областью, то обозревать отношения классов стано-
вится значительно легче. Поэтому было приложено много
усилий, чтобы построить диаграммы для 4, 5,6... классов,
в которых каждый класс был бы ограничен одной кривой
и все границы перекрывались, образуя 16,32,64... подраз-
делений. Простейшим решением является, по-видимому,
последовательность диаграмм на стр. 85 (при этом нужно
представлять себе, что каждая диаграмма расположена
внутри прямоугольного универсального класса). Для этой
последовательности правило перехода от диаграммы п
к диаграмме п+1 можно сформулировать следующим обра-
зом: «Выбрать чередующиеся прямые в прямоугольном
участке диаграммы и отметить их. Проследовать по этим
прямым в криволинейный участок диаграммы и также от-
метить их. Используя эти отметки в качестве «наброска»
размещения искомого дополнительного класса, перечертить
диаграмму, включив новые классы». Таким образом, при
переходе от диаграммы № 4 к диаграмме № 5 отрезок грани-
цы класса а, отмеченный перекрестными штрихами, обрисо-
вывает расположение и подковообразную форму класса е.
Функции булевой алгебры, например f(x)=Ax \J Вх\
и уравнения, например DyV Еу'=0 (решение: у=Еи \/D'u
для любого и), можно представить графически следующим
образом:
Для х$ указанного на ри-
сунке, / есть заштрихованная
область.
D Е
5. Пример графического вычисления
Как применять эти правила графических вычислений?
Вернемся к задаче Венна о трех комитетах (формулировка
задачи—на стр. 79). Три сформулированных выше условия
Для некоторых ы, указан-
ных на рисунке, решение у есть
заштрихованная область.
Булева алгебра. Вычисления
87.
можно изобразить различными штриховками:
г/; пиши fg'*0
f JAwww bf*0
w
Рассматривая диаграмму, мы видим» что можно выделить
те же области двумя штриховками вместо трех:
(2)z
!9'*0
bg--0
'Щ>'
Эти две штриховки изображают упрощенные правила.
Г Л А О А б
БУЛЕВА АЛГЕБРА. МАТЕМАТИЧЕСКОЕ ОПРЕДЕЛЕНИЕ
К Математическое определение булевой алгебры
До сих пор у нас фигурировали три интерпретации
булевой алгебры:
1) Алгебра классов, существо которой мы подробно объ-
яснили выше.
2) Алгебра переключательных элементов, о которой мы
упомянули лишь однажды и которая подробно излагается
и объясняется в дальнейших главах.
3) Алгебра множеств точек или областей, которую
мы использовали для графических вычислений в булевой
алгебре.
Существуют и другие интерпретации, причем все они
интересны и некоторые из них важны. Но прежде всего
зададим вопрос: когда что-либо называется булевой ал-
геброй? каково определение булевой алгебры?
Та или иная математическая система есть булева алгеб-
ра, если она отвечает (удовлетворяет) известному набору
требований, изложенных ниже (или другим наборам требо-
ваний, взаимозаменимых с первыми). Набор требований,
определяющий математическую систему, называется систе-
мой постулатов.
Постулаты суть требования. Постулаты булевой алгеб-
ры — это такие требования, которые (если они удовлетво-
рены) позволяют логически вывести все остальные поло-
жения булевой алгебры. Иными словами, постулаты в дан-
ной системе — это основные высказывания, или аксиомы,
которые приводят через цепочки логических шагов ко вся-
кому другому высказыванию о данной системе. Постулаты
состоят из понятий и предложений, которые принимаются
Булева алгебра. Математическое определение 89
как данные. Тогда другие понятия устанавливаются по-
средством определения, а предложения доказываются путем
рассуждения.
Существует несколько способов выбора системы (набора)
постулатов для булевой алгебры. Ниже изложена одна
из возможных систем постулатов. Постулаты булевой
алгебры оказываются полезными при проверке любой пред-
ложенной математической системы, если желают узнать,
обладает ли она свойствами, аналогичными свойствам буле-
вой алгебры.
По существу, проверка математической системы по си-
стеме постулатов напоминает сопоставление выборочных
случаев с общими положениями с целью проверить, яв-
ляется ли общее положение ложным для какого-нибудь
одного случая или истинным для всех случаев. Любая си-
туация, в которой изучают ряд отдельных случаев и сопостав-
ляют их с правилами, которым подчиняются эти случаи,
есть по существу ситуация, относящаяся к «математической
теории постулатов», к теории первичных высказываний.
2. Система постулатов
Ниже изложен набор постулатов, определяющих бу-
леву алгебру, который предложил Э. В. Хантингтон в
1904 г. Всякая математическая система, описываемая
этими постулатами, являе!ся булевой алгеброй.
Понятия, принимаемые как данные:
а, Ь, с,...— элементы; их можно представлять себе как
предметы в каком-то списке К (возможно, бесконечном).
0 (читается «псевдоплюс») — операция; ее можно
представлять себе как правило, посредством которого два
элемента из списка, например а и 6, определяют другой
предмет или предметы (может быть, входящие в этот спи-
сок, может быть, и не входящие), обозначаемые совокупно
символом а@Ь. Правило" этр по существу есть таблица
с двумя входами, указывающая для каждого значения а
в боковой графе и для каждого значения Ь в верхней графе,
что такое предмет или предметы а@Ь. Хотя знак плюс (+)
входит в ®, эта операция может существенно отличаться
от сложения.
90
Глава 6
Предложения, принимаемые как данные:
1) а®а = а.
2) а@Ь = Ь@а.
3) (а@Ь)®с = а@(Ь®с).
4) Существует по меньшей мере один элемент*, такой,
что а@г=а для всякого а,
5) Существует по меньшей мере один элемент и, такой,
что w@a=u для всякого а.
6) а ® Ь определяет некоторый элемент в /С.
7) Существует по меньшей мере один элемент а для
всякого а, такой, что если х ® а=а и если х ® а'=д',
*=z (где z —такой элемент, что Ь@г=Ь
для всякого 6) и а©а'=и (где и — такой элемент,
что и®с=и для всякого с).
8) Если а@Ь'фЬ\ то существует по меньшей мере
один элемент х> такой, что дфл:=а и b@x=b и,
однако, для некоторого с, с@*¥=с.
1) ad Ь эквивалентно a@b=b.
2) а©6=(а'®&').
3) и, которое оказывается единственным, так как весьма
легко доказать на основании постулатов, что суще-
ствует только одно и, удовлетворяющее постулатам.
4) z, которое оказывается единственным, поскольку
можно точно так же легко доказать, что существует
только одно z, удовлетворяющее постулатам. ..;*
Иначе говоря, если мы сталкиваемся с собранием или
перечнем математических элементов (которые, очевидно,
можно обозначить через а, Ъ, с,...) и операцией (которую,
конечно, всегда можно назвать псевдоплюсом®), связываю-
щей два из них и указывающей третий (который может быть
тем же самым элементом или иным), то мы можем найти,
проверяя свойства этой математической системы (т, е. со-
брания и операции) по каждому из-вышеизложенных восьми
положений, является ли эта система булевой^ алгеброй
или нет.
В этом и состоит определение булевой алгебры. Оно не
только указывает набор критериев для проверки—более
того, всякое правило и теорема булевой алгебры могут быть
строго доказаны на основе этих.постулатов. Оказывается
также, что постулаты в этой системе независимы: ни один
Булева алгебра. Математическое определение 91
из них нельзя доказать на основе какого-либо сочетания
других; это можно доказать на восьми умело подобранных
примерах математических систем, где каждому постулату
соответствует одна система. Наконец, следует отметить,
что, помимо этой хантингтоновской системы, имеются,
конечно, и другие системы постулатов булевой алгебры.
3. Интерпретации булевой алгебры
Постулаты булевой алгебры описывают по меньшей мере
шесть математических систем. Другими словами, понятия
и правила, выраженные постулатами, можно истолковать
так, чтобы они верно описывали по меньшей мере шесть
различных сторон действительности.
Интерпретация 1. КЛАССЫ. В этой интерпретации
символам, содержащимся в постулатах, приписаны такие
значения:
а, Ь% с. Классы
афб a\Jbt а ИЛИ Ь ИЛИ ОБА
а© Ь а-Ь, а И Ь
а' а\ НЕ-а
а © Ь aQb, а СОДЕРЖИТСЯ В Ь
и 1, УНИВЕРСАЛЬНЫЙ КЛАСС, ВСЕ
г О, НУЛЕВОЙ КЛАСС, НИЧТО
Этой интерпретацией мы уже воспользовались, когда вво-
дили понятия и разъясняли смысл булевой алгебры.
Обратимся к примеру. Предположим, что мы рассма-
триваем всех служащих инспекционного отдела Компании
Великих озер [пусть это будут Адаме (А), Браун (В),
Коэн (С), Дэйвис (D), Эдварде (£), Филдс (F) и Грей (G)]
и служащих, имеющих непрерывный стаж работы не меньше
пяти лет (пусть это будут Адаме, Браун и Грей). Мы сразу
переходим на язык булевой алгебры, где:
1 = все служащие инспекционного отдела (т. е. класс,
содержащий члены i4,B,C,D,£,/7 и G);
f = служащие этого отдела с непрерывным стажем
работы не меньше пяти лет (т. е. класс, содержа-
щий члены A.B.G);
92
Глава 6
/' = служащие этого отдела, не имеющие непрерывного
стажа работы не меньше пяти лет (т. е. класс,
содержащий члены CfDtE,F);
О = нулевой класс, не содержащий ни одного работ-
ника.
В перечне К элементов математической системы мы
будем иметь как раз четыре элемента 1, /, f и 0, но не боль-
ше. Таблица операции © будет иметь вид:
е | 1 / г о
1
f
г
0
liii
1 / 1 /
1 \ V Г
1 / /' о
Если мы будем проверять каждый постулат с помощью
этой математической системы, то обнаружим, что постулаты
совершенно верно описывают эту систему. Следовательно,
мы доказали, что данная система есть булева алгебра.
Интерпретация 2. ДВУХП03ИЦИ0ННЫЕ ПЕРЕ-
КЛЮЧАТЕЛЬНЫЕ ЭЛЕМЕНТЫ. В этой интерпретации
символам в постулатах присвоены такие значения:
а,6,с,... переключательные элементы электрических
схем, например контакты, которые могут быть замкнуты
или разомкнуты, или провода, которые могут проводить или
не проводить ток, и т. д. На схеме кружок О означает
«источник» тока, А означает «спад» тока или землю и
знаком Л обозначен подвижный контакт переключателя.
'1 [п (п
а0 6 а и 6, соединенные параллельно:
с=а V Ь\ т. е. ток есть
в с тогда, когда а замкнуто
ИЛИ Ъ замкнуто ИЛИ ОБА
замкнуты.
FT>
с^
Булева алгебра. Математическое определение 93
.. ^-,, ._ ..._ _
а©Ь а и 6, соединенные последовательно:
п.
• с=а- ft; ток в с есть тогда, когда а
сг* замкнуто И Ь замкнуто.
а с=а'\ ток в с есть тогда, когда а
не замкнуто.
Ток в с есть всегда: с=1.
I Тока в с нет никогда: с=0.
Интерпретация 3. ОБЛАСТИ.
а, 6, с, ... Области на плоскости.
а®Ь Область, содержащая а и содержащая Ь, но
так, что всякая их общая часть считается
лишь однажды; объединение а и 6.
а 06 Область, общая а и 6; пересечение а и 6.
а' Область вне а.
а ©6 Область а НАХОДИТСЯ В области 6.
и Вся плоскость, везде,
г Нигде.
Интерпретация 4. МНОЖИТЕЛИ НЕКОТОРЫХ
ЧИСЕЛ.
я, 6, с, ... Множители числа 30 (другими словами
любые из чисел I, 2, 3, 5, 6, 10, 15, 30),
а @ Ь Наименьшее общее кратное чисел а и 6.
aQb Наименьший общий делитель чисел а и
а' 30. деленное на а.
a&b а есть множитель числа b.
и 30.
2 1.
Вместо 30 можно взять любое число, не содержащее
кратных множителей, являющихся простыми числами.
Интерпретация 5.. НУЛЬ и БЕСКОНЕЧНОСТЬ.
Числа 0 - НУЛЬ и оо - БЕСКОНЕЧНОСТЬ.
а ПЛЮС Ьу согласно таблице
0 + 0 = 0 или
0 + ОО = ОО, 0 00
а, &, с, ..
а@Ь
aQb
а\
и
г
оо+0=оо, 0
00+00 = 00, 00
0 оо
оо оо
а, УМНОЖЕННОЕ НА 6, согласно таблице
0
оо
0 00
0 0
0 оо
ОБРАТНОЕ а, согласно таблице
а
0
оо
а'
00
0
оо
о
4. Интерпретация с помощью значений истинности
предложений
Имеется еще одна интерпретация булевой алгебры, кото-
рая столь важна, что сама по себе заслуживает внима-
тельного рассмотрения. Эту интерпретацию можно назвать
«алгеброй значений истинности» или «алгеброй предложе-
Булева алгебра. Математическое определение 95
ний». Мы объясним сейчас смысл выражений «значение
истинности» и «предложение».
В этой интерпретации основным символам,содержащимся
в постулатах, присвоены такие значения:
а, Ьу су переменные, каждая из которых означает
число 1 или 0; двоичные переменные.
а®Ъ a\Jby согласно таблице
aQb
и
Z
а
0
0
1
1
Ь
0
1
0
1
avb
0
1
1
1
a bf согласно таблице
а
0
0
1
1
Ь
0
1
0
1
a, b
0
0
0
1
а'у согласно таблице
а
0
1
а'
1
0
1, число ЕДИНИЦА
0, число НУЛЬ.
Следует отметить, что число переменных a, ft, с, ... и
т. д, может быть велико, как и в элементарной алгебре; но
число различных элементов4 в этой математической сис-
теме равно в точности двум: 1 и 0, тогда как в элементар-
ной алгебре число различных элементов бесконечно велико,
будучи равно числу различных чисел, таких, как 2, 3,
и 1/7, 0,1429, Т/Щ"и т. д.
96
Глава 6
Что такое предложение и что такое значение истин-
ности?
Предложение есть высказывание или утверждение,
которое может быть истинным или ложным, взятое или
рассматриваемое независимо от конкретных слов или языка,
использованных для выражения высказывания. Напри-
мер, высказывания «два и три равно пяти», «two and three
are five», «deux et trois font cinq», «2+3=5» — все они
выражают одно и то же предложение; это предложение,
конечно, истинно.
Предложение является тем же самым, что и другое
предложение, только тогда, когда оба предложения «гово-
рят в точности об одном и том же». Обычно мы будем счи-
тать, что подлежащее и сказуемое каждого предложения
должны иметь соответственно одно и то же значение или
смысл. Предложение часто обозначают заглавной буквой Р,
или Q, или R.
Значение истинности предложения Р есть «истина»,
если предложение истинно, и «ложь», если предложение
ложно. Значение истинности можно изобразить такими
словами или знаками, как «да», «галочка» (V), Т, 1, «верно»,
«правильно», «истина», «справедливо» и т. д. Значение
истинности «ложь» можно изобразить такими словами или
знаками, как «нет», «не так», «крестик» (х), F, 0, «ложно»,
«ложь», «неверно», «неправильно» и т. д.
Из всех этих символов для обычных вычислений лучше
всего подходят 1 и 0, Мы получаем возможность произво-
дить численные вычисления, обращаясь с 1 и 0 как с числа-
ми. В дальнейшем мы будем обычно применять для зна-
чений истинности знаки 1 и 0.
Значение истинности одного предложения может быть
таким же, как значение истинности другого предложения,
хотя между предложениями может и не быть никакой связи.
Удобно выражать «значение истинности от...» симво-
лом Т (...) и писать Т(Р)=р, где Р— предложение; если
Q —другое предложение, то пишем T(Q) = q. Благодаря
этому, когда мы не знаем значения истинности р предложе-
ния, мы можем все-таки говорить определенно о р, как и в
том случае, когда не знаем действительного числа элемен-
тов в некоторой совокупности и тем не менее можем гово-
рить определенно об я.
Булева алгебра. Математическое определение
97
В этой булевой алгебре применяются три обычные отно-
шения, или связки, высказываний: ИЛИ, И, НЕ. Если
Р и Q — высказывания, то значение истинности выска-
зывания Р ИЛИ Q (в зависимости от значения истинности
Р и Q) будет определяться следующей таблицей:
Я
0
0
1
1
Q
0
1
0
1
Я или Q
0
1
1
1
Значение истинности высказывания Р и Q задается сле-
дующей таблицей:
Р Q I Р и Q
О О
0 1
1 О
1 1
Значение истинности высказывания НЕ-Р (отрицание Р)
задается следующей таблицей:
р
0'
1
НЕ-Я
1
0
Легко показать* что
Т (Я ИЛИ Q ИЛИ ОБА) =р V?
Т (Я И Q) -р.,
Т (НЕ-Я) = р'
Т (Я ИЛИ ЖЕ Q) =pq'\/p'
Т (НИ Я, НИ Q) =Р'-Я'
Т (НЕ-Я ИЛИ Q) =/>' V.tf
Т (ЕСЛИ Я, ТО Q) =>' V Я
Т (Я ТОГДА И ТОЛЬКО ТОГДА, КОГДА (?) = pqVp'q
Т (Я ИСТИННО) .=;>
т (я ложно) =р':
Т (Я ЛОЖНО ИЛИ Q ИСТИННО) -=р'Уя
98
Глава 6
T (ЛЮБОЕ ИСТИННОЕ ПРЕДЛОЖЕНИЕ) == 1
Т.(ЛЮБОЕ ЛОЖНОЕ ПРЕДЛОЖЕНИЕ) =0
Далее, поскольку 1 и 0 — числа, мы можем задать такой
вопрос: имеются ли какие-нибудь выражения в обычной
элементарной алгебре чисел, дающие нам р у qf р- q и
р'? Ответ на этот вопрос утвердительный. Это видно из
следующих проб:
Р я
0 0
0 1
1 0
1 1
р УМНОЖЕННОЕ НА q
1 =РЯ
0
0
0
1
р
0
1
Продолжая дальнейшие one
1 и 0, легко показать, что
T (Р ИЛИ ЖЕ
Т (НИ Р, НИ (
Т (ЕСЛИ Р, ТС
Т (НЕ-Р ИЛИ
Т (Р ТОГДА И
Т (Р ЛОЖНО 1
Q)
2)
)Q)
Q)
только ТОГДА,
4ЛИ ИСТИННО Q)
р ПЛЮС q МИНУС pq
= p + q—pq=p\/q
0
1
1
1
1 МИНУС р
=1_р=р'
1
0
рации с этой алгеброй чисел
КОГДА
= Р + Я~ 2 pq
= (1-р)(1-<7) =
= \—p—q+pq
= 1— p+pq
= 1— Р+РЯ
Q) ^l-p-q+Upq
= 1— p+pq
Отсюда мы видим также, что отношения значений истин-
ности сами имеют свои значения истинности. Поэтому мы
можем сразу написать:
р
0
0
1
1
я
0
1
0
1
Т {р=я)
1
0
0
1
Т (РФЯ)
0
1
V
0
Т(Р><7)
0
0
1
0
Булева алгебра. Математическое определение 99
р
0
1
Т(р=1)
0
1
Т (р=0)
1
0
Численные операции над 1 и 0, не приводящие к иным
числам, кроме 1 и 0, находят применение. Например:
Т(Р ИЛИ ЖЕ QH(P-?)2 = P2-2p? + <72 = p + ?-2p<7,
так как р2=р для значений р, равных 1 или 0.
С помощью арифметики единицы и нуля можно быстро
и просто вычислить логические значения истинности во
многих трудных случаях.
Интерпретация № 1 (классы) является наилучшей для
ознакомления с булевой алгеброй и выяснения ее понятий.
Интерпретация № 2 (переключательные элементы) и интер-
претация № 6 (значения истинности высказываний) наи-
более важны с точки зрения применения к проектированию
и конструированию разумных машин и представления
об их работе. В дальнейшем мы приведем много примеров
этих приложений.
ГЛАВА 7
РАЗУМНЫЕ МАШИНЫ
1. Существуют ли в действительности разумные машины?
Если мы придем к соглашению относительно понима-
ния, что такое разум, и примем словарное определение
разума, процитированное в предисловии:
«Способность учиться или извлекать уроки из опыта,
приобретать и сохранять знания и ... быстро и целесооб-
разно реагировать на новые ситуации, добиваясь ... успеха
при решении различных задач», то по существу не может
быть сомнения в том, что разумные машины действительно
существуют.
Однако наилучший способ доказать общее высказыва-
ние типа «То или иное действительно существует» — это
показать что-нибудь, что удовлетворяет требованиям. На-
пример, наилучший способ убедиться в том, что луна иногда
затмевает солнце,— это присутствовать при затмении и ви-
деть, как оно происходит, видеть, как черная луна совершен-
но закрывает солнце и тьма охватывает всю землю. Мне
однажды посчастливилось видеть это самому в Уиллиман-
тике, штат Коннектикут, в 1925 г. Итак, рассмотрим неко-
торые примеры разумных машин.
2. Пример разумной машины
Простой пример разумной машины, с которой каждый
хорошо знаком,— это светофор — не тот глупый светофор,
который загорается красным или 'зеленым светом по рас-
писанию без учета происходящего движения, а такой,
Разумные машины
101
который способен обнаруживать приближение транспортного
потока и загораться красным или зеленым светом в опре-
деленном соответствии с его интенсивностью.
За два квартала от моего дома, на перекрестке Отис-
стрит и Лоуэлл-авеню, стоит светофор, обладающий неко-
торым разумом. На Лоуэлл-авеню движение гораздо силь-
нее, чем на Отис-стрит, и поэтому нормально горит зеле-
ный свет для Лоуэлл-авеню и красный свет для Отис-стрит.
Но на мостовой Отис-стрит имеются две педали для машин,
приближающихся по Отис-стрит в обоих направлениях.
Если автомобиль, едущий по Отис-стрит, подъезжает к пере-
крестку, то регулярно и независимо от того, какое движе-
ние на Лоуэлл-авеню, практически почти мгновенно заго-
рается зеленый свет для водителя с Отис-стрит и он может
преодолеть перекресток под зеленый свет почти без всякой
задержки. Но этот зеленый свет горит для Отис-стрит
лишь столько времени, что через перекресток успе-
вают проехать две или три машины, а затем снова зажи-
гается красный свет. Если теперь по Отис-стрит прибли-
жается другая машина, светофор остается красным долгое
время независимо от того, имеются ли на Лоуэлл-авеню
машины, чтобы воспользоваться им. По моим наблюдениям,
красный свет горит в течение примерно двух минут и за-
тем снова загорается зеленый свет для водителя с Отис-
стрит.
Очевидно, что эта машина не очень разумна и, по-види-
мому, ее можно сделать гораздо умнее, если установить
педали, обнаруживающие движение по Лоуэлл-авеню.
И все-таки такой светофор не столь неприятен, как его
«собрат», который переключает свет в определенные мо-
менты, не обращая внимания на действительную интенсив-
ность движения в данный момент.
Сопоставим теперь свойства этого светофора с каждым
требованием в нашем определении разума.
Способна ли эта машина действительно учиться на
опыте и приобретать и сохранить знания? Да, в небольшой
степени способна; она способна воспринимать информацию,
удерживать ее и различать элементы информации по вре-
мени; например, она отличает машину, приближающуюся
по Отис-стрит, от второй машины, которая следует за
ней. Эта способность различения основана на памяти.
102
Глаза 7
Реагирует ли машина быстро и целесообразно на новые
ситуации, и выполняет ли она успешно свою задачу? Да,
несомненно, если даже вы иногда обманываете ее, наступив
ногой на педаль. И хотя этот светофор разумен лишь в не-
большой степени, известно, что есть и более сложные све-
тофоры, в которых применяется много педалей, располо-
женных в разных местах около перекрестка, и которые
столь хорошо приспособлены к задаче регулирования дви-
жения на данном перекрестке, что они пропустят через
него больше машин и с меньшей задержкой, чем любой
полисмен9.
3. Как машина сохраняет знания?
Как светофор сохраняет знания? Обычно он сохраняет
знания (или помнит, или хранит информацию) при помощи
электрических реле. В общем случае реле называется любое
устройство, которое:
1) сохраняет одно из двух состояний, соответствующих
тому, что «такое-то событие произошло» или «такое-то
событие не произошло», и
2) способно передавать эту информацию, о событии.
На рис. 7.1 схематически изображено электрическое.
реле.
Когда по катушке из медной проволоки, намотанной
вокруг сердечника из мягкого железа, не течет ток от
подводки к земле, реле не возбуждено и пружина натяже-
ния прижимает кусок железа, называемый якорем, к нор-
мально замкнутому (размыкающему) контакту, и электри-
ческий ток или импульс, приходящий 6т общего зажима,
направляется к зажиму нормально замкнутого контакта.
Когда же по катушке вокруг мягкого железного сердечника
течет электрический ток, сердечник становится магнитом;
он пересиливает пружину, тянет якорь вниз и прижимает
переключающий (общий) контакт к нормально разомкну-
тому {замыкающему) контакту. В результате этого пере-
ключающий контакт перемещается от нормально замкнуто-
го контакта к нормально разомкнутому контакту, и элек-
трический ток или импульс от общего зажима направ-
ляется к зажиму нормально разомкнутого контакта.
Разумные машины
103
Но отсюда совершенно ясно, что одно реле не может
хранить большое количество знаний или информации.
Оно не может хранить книгу, или абзац, или предло-
жение, или даже десятичную цифру от 0 до 9. Но, по-
скольку реле может быть возбуждено или не возбуж-
дено, оно может хранить «да» или «нет», «истинно»
Нормально Л
замкнутый
контакт
Общий
(переключающий)
контакт
Шарнир
Медный
провод
Нормально
разомкнутый
контакт
Сердечник
из мягкого
железа
Общий
зажим
йемля
НЕ ВОЗБУЖДЕНО
Нормально Нормально
разомкнуто замкнуто
Общий Подвод Нормально Нормально
зажим тока Земля разомкнуто замкнуто
ВОЗБУЖДЕНО
Рис. 7.1. Электрическое реле.
или «ложно», утверждение, что данное событие произошло
или не произошло. Это и есть первичная основная единица
информации, называемая двоичной единицей или битом.
Если «да», или возбужденное состояние реле, обозначить
через 1, а «нет», или спокойное состояние,— через 0, то
два реле могут хранить 00, jpi, 10 или 11 (читается слева
направо). Три реле могут хранить любую из восьми пор-
ций информации: 000, 001, 010, 011, 100, 101, ПО, 111
и т. д. А так как п реле могут хранить любую из 2П пор-
ций информации, то даже небольшое число реле позволяет
хранить большое количество информации.
104
Глава 7
Мы объяснили, как электрическое реле может хранить
и передавать информацию. Но многие другие физические
устройства также могут хранить и передавать информацию.
Совсем нетрудно сделать физическое устройство, которое
может хранить сведения, что данное событие произошло
или не произошло. Но для того чтобы заставить его сво-
бодно передавать эту информацию другим физическим
устройствам, требуется изобретательность.
Для этой цели можно использовать физические устрой-
ства разных типов, не только электрические реле. Один
тип — электронная лампа, которая может проводить или
не проводить ток. Другой тип — маленький участок на
магнитном поверхностном слое (на длинной ленте из пласт-
массы, в которой распределены магнитные частицы, или
на цилиндрическом барабане, покрытом магнитным слоем,
и т. д.). Э>гот участок может быть намагничен либо в пря-
мом, либо обратном направлении. Все эти типы устройств
представляют собой в общем смысле реле: они могут не
только хранить информацию, но при соответствующей допол-
нительной аппаратуре передавать ее.
4. Разумные операции над информацией
Но никто не станет утверждать, что способность хранить
и передавать информацию сама по себе достаточна для того,
чтобы устройство, обладающее этой способностью, можно
было назвать разумным. Ведь если бы было так, то лист
бумаги с записью на нем (нечто, что, несомненно, хранит
информацию и передает ее) можно было бы назвать разум-
ным. Требуется еще что-то. Что же именно?
Для того чтобы устройство или машину можно было
назвать разумными или хотя бы слегка разумными, они
должны обладать еще одной способностью — делать нечто
осмысленное, нечто разумное. Устройство должно, «уметь»
оперировать с информацией автоматически таким образом,
чтобы выдавать разумные результаты. Иначе говоря, оно
должно обладать способностью выполнять над информа-
цией некоторые разумные операции совершенно само-
стоятельно. Устройство не должно «хребовать», чтобы рядом
с ним стоял человек и снабжал его всеми ответами.
Разумные машины 105
В примере со светофором на углу Отис-стрит и Лоуэлл-
авеню аппаратура внутри машины действительно способна
воспринимать впечатления, которые она получает от педали
на мостовой, и преобразовывать их при помощи электри-
ческих цепей или механизмов в размыкание и замыкание
переключателей красного и зеленого света, благодаря чему
светофор действительно управляет движением.
Поскольку светофор существует на самом деле и рабо-
тает именно так, мы располагаем полным доказательством
того, что в нем имеется устройство, которое действительно
разумно перерабатывает информацию, несмотря на то, что
нам сначала показалось трудным представить себе, как
оно действует. В дальнейшем мы вернемся к вопросу о схе-
мах, при помощи которых светофор управляет своими
сигналами. Однако способность этой машины воспринимать
информацию, разумным образом перерабатывать ее и выда-
вать ответы очевидна и несомненна;.это обстоятельство поз-
воляет нам называть такую машину разумной или по край-
ней мере слегка разумной.
5. Типы разумных машин
«Чуть-чуть разумный» светофор не является единствен-
ной машиной, которая может воспринимать, хранить,
передавать, перерабатывать и выдавать информацию. Дру-
гие машины способны воспринимать, получать команды,
помнить, рассуждать, вычислять, решать и давать от-
веты.
В настоящее время существуют следующие типы разум-
ных , машин — машин, которые могут автоматически пере-
рабатывать информацию и выполнять разумные операции:
1) Специализированные машины, или машины специаль-
ного назначения (машины, предназначенные для конкретной
задачи в определенной области науки или техники):
Аппаратура управления движением на воздушных ли-
ниях (включая наземное оборудование), которая может
управлять подходом самолета к посадочной площадке,
может воспринимать информацию о местонахождении
самолета в полете и выдавать информацию или управляю-
щие сигналы, ведущие самолет при полете.
166
Глава 7
Системы управления и регулирования на фабриках,
химических предприятиях, нефтеочистительных- заводах
и т. д., которые воспринимают указания о потоке, темпе-
ратуре, давлении, оСгьеме и других параметрах жидких
или порошкообразных веществ, указания о размещении
и положении твердых предметов, сведения о наличии машин
и т. д. и выдают информацию о положении клапанов,
рычагов, резцов и т. д. согласно программе управления или
регулирования, введенной в систему с помощью перфори-
рованной ленты или другими способами.
Приборы управления огнем, которые воспринимают
указания о наличии, местоположении и скорости целей
с помощью оптических и радиолокационных средств и выда-
ют моменты и направления прицела и стрельбы орудий
согласно программе, вычисляющей движение цели, движе-
ние снаряда, свойства воздуха, сопротивление и темпера-
туру воздуха и т. д.
Имитаторы полета, или авиационные тренажеры, кото-
рые воспринимают имитированные условия" полета в само-
лете и действительное поведение членов экипажа, прохо-
дящих Ъбучение, и показывают необходимые следствия
с целью тренировки экипажей самолетов в «макетах»
на земле, прежде чем им придется решать самостоятельные
задачи в воздухе и т. д~
Играющие машины — машины, играющие против лю-
дей либо в простые игры, такие, как «крестики и нолики»
или «ним» (для которых были построены некоторые спе-
циальные машины), либо в более сложные игры; такие,
как шашки, бильярд или шахматы (которые действительно
были запрограммированы на машинах, относящихся к упо-
минаемым ниже универсальным автоматическим цифровым
вычислительным машинам).
Аппаратура управления станками, в которую вводится
программа команд, равносильная чертежу или модели
в уменьшенном масштабе или схеме действий опытного
рабочего, и которая затем задает движение управляющих
винтов и колес обрабатывающего инструмента, так что
заготовка получает форму, в точности соответствующую
командам.
Навигационные и пилотирующие системы, которые
воспринимают положение звезд, сигналы времени, радио-
Разумные машины
107
пеленг, указания о движении воздуха» указания об инерции
и т. д., и вырабатывают команды для рулевого механизма.
Анализаторы электрических сетей, которые восприни-
мают информацию, изображающую измеренные значения
сопротивлений, индуктивностей и емкостей для сети линий
и нагрузок электрической станции, и позволяют модели-
ровать и вычислять поведение системы, что дает возмож-
ность надлежащим образом спроектировать надежную и эко-
номичную систему.
Аппаратура железнодорожной сигнализации, которая
позволяет, например, на большой конечной станции сос-
тавить график движения поездов так, что в течение часов
пик они прибывают и отправляются через каждые 20 сек
без каких-либо катастроф и почти без опозданий.
Спектроскопические анализаторы, которые анализиру-
ют спектр паров образцов материала и сообщают о наличии
и относительном содержании в нем химических элементов.
Стратегические машины, которые позволяют при обу-
чении офицерского состава проводить военные игры и испы-
тывать стратегии, причем электронные устройства авто-
матически вводят скорости убывания и роста боевых сил
и промышленных ресурсов, применяемых в игре.
Телефонная аппаратура, в том числе центральные теле-
фонные станции, системы автоматического учета раз-
говоров и т. д., которые позволяют абоненту вызывать
другого абонента и разговаривать с ним и начисляют соот-
ветствующую сумму за разговор.
Аппаратура наведения телескопов, которая устанав-
ливает телескоп в астрономической обсерватории таким
образом, что он сохраняет направление на тот участок
небесного свода, который астроном хочет исследовать.
Оборудование для сбора дорожных пошлин, которое
записывает, отмечает, передает и суммирует пошлины за
проезд мостов, шоссе и турникетов.
Устройства управления светофорами, которые обнару-
живают машины, приближакащиеся к перекресткам, и дают
сигналы остановки и свободного пути согласно програм-
ме соответственно подобранных реакций на условия дви-
жения.
Торговые автоматы, которые принимают различные
монеты и сигналы о требуемых услугах и производят соот-
106
Глава 7
ветствующий размен, или выдают товары, или позволяют
сыграть определенное число партий в какую-либо игру
и т, д.
2) Универсальные машины, или машины общего назна-
чения [машины, которые могут быть использованы для
решения любой из многих задач в двух (или более) различных
областях]:
Учетно-бухгалтерские машины, которые воспринимают
числа через клавишное устройство, и печатают их столбцами
на листе, но управляются устройствами, действующими по
программам команд, которые в соответствии с рядом кла-
виатуры, куда вводится число, или другими указаниями
направляют число со знаком плюс или минус в один из
шести или более итоговых счетчиков, после чего можно
по желанию напечатать результаты или очистить счетчики.
Адресные машины, которые получают числа и адреса
на металлических пластинках или перфорированных картах
и печатают имена и адреса на конвертах, бандеролях и т. д.
в соответствии с программой печатания в зависимости от
меток, перфорированных отверстий и других сигналов на
пластинках или картах.
Вычислительные машины, которые делятся на два основ-
ных вида:
а) Аналоговые вычислительные машины, которые вос-
принимают числовую информацию в виде относительных
измерений физических величин, выполняют арифметиче-
ские и математические операции, управляются программой
команд и выдают числовые ответы.
б) Цифровые вычислительные машины, которые полу-
чают числовую, алфавитную или иную информацию в виде
знаков или последовательностей сигналов «да — нет»
и т. д., выполняют арифметические, математические и логи-
ческие операции, управляются программой команд и вые-
дают ответы в вите чисел, букв алфавита и т. д.
Справочно-библиографические машины, которые хра-
нят большие картотеки информации, например сфотогра-
фированные рефераты и названия статей вместе с кодом
для каждой статьи, и очень быстро разыскивают и находят
рефераты, соответствующие программе поисков.
Инвентаризационные машины, Которые запоминают от-
дельные итоги для десятков тысяч артикулов в таком же чис-
Разумные машины J09
ле регистров и которые прибавляют к ним, вычитают из них,
стирают и сообщают по требованию содержание любого
регистра.
Счетно-перфорационные машины, которые получают ин-
формацию, выраженную конфигурацией перфорированных
отверстий в карточке стандартных размеров и формы,
и сортируют, классифицируют, копируют, перечисляют,
суммируют, печатают и т. д., выполняя канцелярскую,
счетную, статистическую и другую конторскую работу.
Читающие и распознающие машины, которые про-
сматривают печатную цифру или букву, наблюдают
конфигурацию точек или линий, пропускают эту конфигу-
рацию через классифицирующие цепи и тем самым распо-
знают цифру или букву и в соответствии с этим приводят
в действие выходные устройства.
Роботы, которые воспринимают окружающий мир через
чувствительные устройства, производят действия посред-
ством «исполнительных» устройств и коррелируют свои
ощущения и действия посредством «думающих устройств» —
схем или механизмов, содержащих одну или несколько,
программ команд.
Балльно-испытательные машины, которые получают бу-
магу с данными испытаний, заполненную специальным
карандашом, оставляющим электрически проводящие
отметки, и подсчитывают баллы при испытании.
Печатные машины, которые хранят на длинном свит-
ке бумажной перфорированной ленты предложения, абза-
цы и другую информацию и составляют из этих "предложе-
ний и абзацев (в соответствии с командами) письма, рас-
поряжения и т. д., останавливаясь и принимая рукопис-
ный текст, если этого требует команда.
6. Принятые названия разумных машин
Несмотря на то что машины всех этих типов в большей
или меньшей степени являются разумными, их обычно не
называют «разумными машинами». Из употребляемых вместо,
этого названий наиболее общими являются следующие:
1) счетно-решающие машины, где слово «решение» ука-
зывает не только на «вычисление», но и на «мышление»;
110
Глава 7
2) машины для обработки данных, где слово «данные»
обозначает информацию, а слово «обработка» — действия
над ней.
Более специальные термины:
автоматические вычислительные машины;
счетно-аналитические машины;
автоматические регуляторы;
моделирующие устройства;
анализаторы;
автопилоты.
Машины для обработки данных, пожалуй, образуют
более широкий класс, чем «разумные машины». Этот термин
охватывает машины, которые почти не «рассуждают» и,
согласно принятой нами точке зрения, не являются «разум-
ными». К таким машинам относится: 1) устройство пере-
писи с ленты на карты, которое получает перфорированную
бумажную ленту и производит перфорированные карты,
причем выходная запись содержит точно такую же инфор-
мацию, как входная запись, но на другом физическом
носителе; 2) копировальная машина, которая «смотрит»
светочувствительным электрическим глазом (т. е. фотоэле-
ментами) на последовательные маленькие пятна на бумаж-
ном листе и там, где она «видит» темное место, приводит
в действие перо, делающее такую же отметку на втором листе
бумаги в соответствующем месте.
Такие преобразователи данных осуществляют перевод
с одного «машинного языка» на другой «машинный язык».
Это, однако, часто требует «редактирования» — моди-
фикации кодов или символов согласно программе команд.
Поскольку здесь осуществляется редактирование, мы опять
имеем дело с «разумной» машиной.
7. Основные принципы разумных машин
Нельзя отрицать, что машины, подобные перечисленным
выше, существуют и работают; они разумно обращаются
с информацией; они приобретают и хранят знания; они
быстро и целесообразно реагируют на новые ситуации;
многие из них могут или могли >бы учиться на опыте.
Но как они это делают? Каковы их основные принципы?
Разумные машины
111
Первый из этих принципов — принцип организации.
Почти все представители разумных машин организованы
одинаково и состоят из пяти частей:
1) каждая такая машина имеет один или несколько
входов — путей, по которым она может воспринимать
информацию;
2) она имеет один или несколько выходов — путей,
по которым она может выдавать информацию;
3) она имеет накопитель, или память, — средства, бла-
годаря которым она может хранить информацию;
4) она имеет вычислительные средства (называемые
также «арифметическим устройством») — оборудование,
с помощью которого она может получить две порции инфор-
мации Л и В и наименование разумной операции О, на-
пример сравнения, выполнить эту операцию над Л и В и
выдать как результат порцию информации С;
5) она имеет управляющее устройство, которое может
управлять операцией и выбирать программу выполняемой
операции; часто управляющее устройство и само тоже
подчиняется командам, выработанным машиной, так что
машина может управлять сама собой.
Второй основной принцип разумных машин заклю-
чается в том, что существует много типов приборов, физиче-
ских устройств и аппаратуры, обладающих такими свой-
ствами и способностями, что они, эти приборы и устрой-
ства, могут воспринимать, хранить, передавать информа-
цию, производить над ней разумные операции и выдавать
ее во вне.
Из этих свойств аппаратуры труднее всего поддается
интуитивному пониманию способность осуществлять разум-
ные действия над информацией, иначе говоря способность
вычислять.
Какой пример этой способности привести? Обыкновен-
ная суммирующая машина, снабженная бумажной лентой
для контрольной записи вводимых в нее чисел, и клавишей»
управляющей печатью итогов^ гашением счетчиков, слу-
жит неоспоримым доказательством того, что машина обла-
дает по крайнем мере некоторой способностью к вычисле-
нию. Основным элементом суммирующей машины являет-
ся устройство, называемое счетным колесом, которое раз-
делено на десять равных сегментов, расположенных по
ш
Глава 7
ободу и соответствующих цифрам 0, 1,2, 3, 4, 5, 6, 7, 8, 9.
Счетное колесо имеет небольшой добавочный зуб, распо-
ложенный между 9 и 0, вследствие чего, проходя через
эту точку, оно сцепляется со следующим счетным колесом,
расположенным выше, и заставляет его повернуться с той
цифры, на которой оно стоит, к следующей цифре. Этот
остроумный маленький зубец, изобретенный французским
математиком Паскалем в XVII в., воплощает в металле
принципы арифметического переноса.
Правда ли, что машина может выполнять* логическую
и мыслительную операцию любого типа, арифметическую
и математическую операцию любого типа? Насколько нам
в настоящее время известно, это действительно так. Мате-
матики и логики показали, что огромное число сложных
операций можно определить через более простые, а послед-
ние в свою очередь—через еще более простые, пока в конце
концов мы не придем примерно к шести простейшим опе-
рациям. Все другие операции можно осуществить в виде
комбинаций этих простейших действий. Эти простейшие
операции и многие более сложные можно непосредственно
воплотить в приборы в виде наличия или отсутствия сигна-
лов, замыкания и размыкания цепей, способов взаимодей-
ствия многих «да» и «нет».
/
ГЛАВА 8
МАЛЫЕ РАЗУМНЫЕ МАШИНЫ. НЕКОТОРЫЕ ПРОСТЫЕ ЗАДАЧИ
1. Поведение машин
Машину, которая должна вести себя определенным
образом, часто можно представить себе как «черный ящик»,
как некий неопределенный предмет, наполненный какими-
то приборами, который тем не менее обладает вполне опре-
деленным свойством: известные входные факторы произ-
водят известные выходные факторы. Например, большин-
ство людей имеет лишь весьма смутное представление о том,
как работает телефон, но все знают, что если проделать
с телефоном такие-то действия, то можно получить такие-
то результаты. То же можно сказать и об автомобиле:
мы упрощенно представляем его как черный ящик, как
нечто, характеризуемое определенными входными и вы-
ходными факторами.
Каковы основные входные факторы автомобиля в дан-
ное мгновение? Рулевое колесо: на какой угол вы его пово-
рачиваете; педаль подачи газа: как сильно вы ее нажимае-
те; тормозная педаль: как сильно вы ее нажимаете.
Каковы основные выходные факторы автомобиля в дан-
ное мгновение? Скорость: как быстро едет автомобиль;
направление: куда он едет.
Если это поведение автомобиля представить в абстракт-
ном виде, то мы можем думать о нем как о «черном ящике»*
изображенном на рис. 8.1.
На рисунке показаны физические переменные а, б, в,
г, д. Эти переменные можно представить в числах: а —
в градусах отклонения от прямого направления вперед
(со знаком плюс или минус); б и в —в дюймах или
долях дюйма; г — в милях в час; д — в градусах отклоне-
114
Глава 8
ния от прямого направления вперед (со знаком плюс или
минус); гид являются математическими функциями от
а, б и в. Например, мне говорили, что д обычно равно одной
четвертой а (за исключением автомобиля «Фольксваген»,
входы
а. Угол поворота
рулевого колеса
S. Степень нажатия А
педали подачи газа~^Л
л Степень
нажатия
Автомобиль
Выходы
е Спорость
движения
автомобиля
д. Направление
движения
автомобиля
пажити** ~
тормозной педали
Рис. 8.1. Диаграмма поведения автомобиля.
где д равно а). Но здесь существенно, что наше управление
автомобилем основано на знании того, как определяются
гид, когда мы установили а, б и е.
Такая же общая диаграмма — «черный ящик» с тремя
входами и двумя выходами — применима и для другой маши-
ны — схемы освещения, обладающей следующими свой-
ствами.
Входы: выключатель в вестибюле, который может быть
в верхнем или нижнем положении; выключатель на
верхней площадке, который может быть в верхнем
или нижнем положении; выключатель в мансарде, ко-
торый может быть в верхнем или нижнем положении.
Выходы: лампа в подъезде, которая может быть вклю-
чена или выключена; лампа в гараже, которая может
быть включена или выключена.
Мы можем представить эту схему освещения так, как
показано на рис. 8.2. Однако между этими двумя машинами
есть существенное различие: в автомобиле переменные от
а до д измеряются в масштабе и записываются обычными
числами; в осветительной же схеме переменные от а до д
принимают только по два значения, соответствующие двум
состояниям: верхнему или нижнему положению, состоя-
ниям «включено» или «выключено». Для их записи удобно
использовать булеву алгебру с! и 0, алгебру значений
истинности (переключательных элементов).
Малые разумные машины. Некоторые простыв задачи 115
С переключательными элементами, или элементами типа
«да — нет», мы бесчисленное количество раз сталкиваемся
в машинах (и всюду в мире). Выключатель может быть
разомкнут или замкнут. Кнопка может быть нажата или не
нажата. Рычаг машины может быть наверху или внизу.
Указатель в лифте может показывать «занято» или «свободно».
По проводу может течь или не течь ток. Электрическое реле
может быть возбуждено (через обмотку течет ток) зди спо-
койно (через обмотку не течет ток). Электронная лампа
Вхо§ы Черный ящик Выходы в
о. Находите* ли
переключатель в
вестибюле в
верхнем uhu нижнем
положении
б Находи тещ ли
переключатель на этажё[
в верхнем
Схема
освещения
г. Включена ли
лампа в
подъезде
д. Включена ли
лампа в
гараже
или нижнем положении
в. Находится, ли
переключЬтель на *
чердаке в верхнем или
нижнем положении
Рис. 8.2. Диаграмма поведения схемы освещения.
может проводить ток (поток электронов) или не проводить.
Полезно и удобно называть все эти элементы элементами
типа «да — нет», а те из них, которые используются в
электрических цепях — электрическими элементами типа
«да — нет».
Любой элемент типа «да — нет» в механизме или схеме
соответствует высказыванию Р «Элемент Е включен».
Высказывание имеет значение истинности Т(Р), равное р.
Если высказывание истинно, оно имеет значение истин-
ности р, равное 1, и данному состоянию элемента мы ста-
вим в соответствие 1. Если высказывание ложно, то оно
имеет значение истинности 0, и состоянию элемента мы
ставим в соответствие 0. Поскольку большей частью мы
хотим охватить оба состояния: «включено» и «выключено»,
элементу Е мы ставим в соответствие переменную р. Итак,
Е есть конкретное устройство, Р есть высказывание о нем,
говорящее, что оно «включено», а р есть переменная, прини-
мающая значение либо 1, либо 0. Мы можем назвать р двоич-
ной переменной. Такой подход является общим и поэтому
весьма эффективным.
116
Глава 8
Часто удобно представлять р как состояние элемента
цепи или как информацию или сигнал, содержащийся
в схемном элементе. Таким образом, об элементе, который
может быть в любом положении п (на какой-либо шкале),
мы будем говорить, что п есть положение или числовое
значение этого элемента.
Например, если элементе — переключатель, то выска-
зывание Р может гласить: «Выключатель замкнут». Тогда р
равно 1, если, он замкнут, и равно 0, если он разомкнут.
Если элемент — реле, то высказывание может гласить:
«Реле под током». Если элемент — провод, то высказы-
вание может гласить: «По проводу течет ток». Если эле-
мент — анод электронной лампы, то высказывание может
гласить: «Напряжение на аноде высокое»,—причем мы усло-
вимся, что нас интересуют лишь два уровня напряжения —
«высокий» и «низкий». Аналогичным образом мы поступаем
при рассмотрении неограниченного числа различных типов
схемных элементов, работающих по принципу «да — нет».
Но поведение машины будет определено, если мы ука-
жем все возможные значения входных переменных и все
возможные значения выходных переменных и опишем,
как они связаны друг с другом. Знание поведения машины
означает знание этой связи.
2. Переключатели
Из элементов электрических цепей наиболее интерес-
ным для нас является электрический переключатель. Он
существует во многих формах. Он применяется гораздо
шире, чем любой механический элемент типа «да — нет»,
потому что переключатель действует на расстоянии—на кон-
цах проводов или других электрических соединителей.
Поэтому пространственные ограничения во всех трех изме-
рениях, которым строго подчинены механические элементы
и для учета которых нужна большая изобретательность,
не оказывают влияния на переключатели.
Первоначально переключатель представлял собой уст-
ройство для переключения стрелки на железнодорожных
путях. В настоящее время он, кроме этого, выполняет
еще функции переключения тока с одной цепи на другую.
Малые разумные машины. Некоторые простые задачи 117
На рис. 8.3 показаны детали обычного переключателя:
общий провод и зажим; шарнир, при помощи которого можно
поворачийать пластинку переключателя; нормально замк-
нутый зажим с проводом и нормально разомкнутый
Зажим /V- «нормально замкнутб»
Ы провод
Пластинка j
Общий
провод =
Шарнир'
Зажим Z - «нормально разомкнуто»
I
I
Рис. 8.3. Переключатель. Рис. 8.4. Схематичес-
кое изображение, пере-
ключателя.
зажим с проводом, к каждому из которых может быть
присоединена пластинка переключателя. На рис. 8.4 и
8.5 представлены не столь подробные, более схематичные,
изображения переключателей.
v I • I •
Рис. 8.5. Рис. 8.6. Пе- Рис. 8.7. Пе-
Схематичес- реключатель реключатель на
коеизображе- на три поло- четыре положе-
ние переклю- жения. ния.
чателя.
Переключатель может иметь три, четыре или большее
число положений (позиций)] в этом случае его положения
могут быть обозначены любым образом, лишь бы эти
обозначения были достаточно удобными (рис. 8.6, 8.7,
8.8 и 8.9).
Одиночный переключатель может быть сконструирован
так, что у него будут две, три или большее число элект-
рически несоединенных между собой секций (часто
118
Глава 8
называемых полюсами), так что когда переключатель по-
ворачивают, он одновременно переключает несколько
т общий т общий
контакт f контакт
_ j
ABC
замкнуто разомкнуто
Нормально Нормально
-- — розо* -"
Рис. 8.8. Названия и обозначе-
ния контактов.
электрически независимых путей. На чертежах схем это
свойство переключателя можно изобразить при помощи
г-/ т-г т-з г-*
iiit
• • • • • • ••• •••
АЧ В-1 С-Г А-2 В-2 0-2 А-3 В-3 С-3 А-4 &4 С4
Рис. 8.9. Четырехполюсник переключатель на три
положения.
какого-нибудь обозначения для переключателя и номеров
1, 2, 3 и т. д* для полюсов. Например, на рис, 8.9 и 8.10
Ukmo9j-2) в-г. ы ^
с-гх X Х^;
. В-1 (Полюс Z-U
А-3 J^sr '"' теэ1л-/
(Полюс Z-JJB-
С-3
С-4
18-4 (Полюс Z-4J
А-4
Рис. 8.10. Четырехполюсиын переключатель
Z на три положения.
схематически показан переключатель Z с тремя положе-
ниями А, В и С и четырьмя полюсами 1, 2, 3, 4.
Малые разумные машины. Некоторые простые задачи 119
Многие другие электрические элементы типа «да —
нет» в том или ином смысле эквивалентны переключателю.
Например, электрическое реле представляет собой автома-
тически управляемый переключатель, в котором для пере-
носа пластинки от одного полюса к другому вместо пальцев
человека применяется * электромагнит. Наибольшая ско-
рость переключения при этом составляет около одной
тысячной секунды. Две электронные лампы, соединенные
друг с другом так, что, когда одна проводит электричество,
другая не проводит» и наоборот (триггер), равносильны
переключателю; обычная скорость переключения этой пары
ламп—порядка нескольких миллионных долей секунды.
3. Проектирование малых разумных машин
Перейдем теперь от общего рассмотрения всех машин
и их поведения к более узкому вопросу — проблеме малых
разумных машин и включим сюда вопрос о том, как при-
меняется булева алгебра для их проектирования. Ибо
интересным и важным фактом является то, что набор выска-
зываний, описывающих поведение малой рассуждающей
машины (если его перевести на язык булевой алгебры),
становится ключом к подбору такой комбинации или связи
электрических элементов типа «да—нет» друг с другом, при
которой машина будет работать. Мы сейчас поясним это.
Что понимается под малыми разумными машинами?
Это — машины, у которых входные и выходные сигналы
состоят из двоичных переменных и вся комбинация еди-
ниц и нулей на выходах является математической функ-
цией единиц и нулей на входах.
Разберем простой пример.
4. Задача об освещении вестибюля
Задана. В одном доме нужно сделать электрическую
сеть. В ней должны быть два переключателя: переключа-
тель на нижнем этаже и переключатель на верхнем этаже.
Должна быть одна лампа в вестибюле. Когда поворачивают
любой из этих двух переключателей, лампе должна вцлю-
120
Глава 8
чаться, если она была выключена, и выключаться, если
она была включена.
Спроектируйте схему.
Решение. Пусть и — состояние переключателя U на
верхнем этаже, равное 1, если этот переключатель вклю-
чен, и равное 0, если он выключен.
Пусть d — состояние переключателя D на нижнем
этаже, равное 1, если он включен, и 0, если он выключен.
Пусть А — состояние лампы вестибюля Я, равное 1,
если она включена, и 0, если она выключена.
Два переключателя могут быть в четырех возможных
комбинациях состояний, приводящих к четырем случаям
1, 2, 3, 4, как показано ниже:
Случай №
1
2
3
4
и d
0 0
0 1
1 0
1 1
Как мы можем удовлетворить условиям задачи?
Предположим, что в случае 1 лампа вестибюля выклю-
чена и h равно 0. Тогда, если повернется один из пере-
ключателей, лампа должна включиться. Следовательно, h
должно быть равно 1 в случаях 2 и 3. Наконец, если повер-
нуть другой переключатель, то мы придем к случаю 4
и лампа должна опять выключиться. Поэтому таблицу
можно заполнить следующим образом:
Случай №
1
2
3
4
и d
0 0
0 1
1 0
1 1
А
0
1
1
0
Рассматривая таблицу, можно сделать следующий вывод:
h равна 1 тогда и только тогда, когда и равно 1 и d не
равно 1 или и не равно 1 и d равно 1. В символах: h=ud' \/ud.
Поэтому мы можем составить/ схему, изображенную
на рис. 8.11. В этой схеме мы используем два полюса пере-
Малые разумные машины. Некоторые простые задачи 121
ключателя U и два полюса переключателя D. Единствен-
ный сигнал, который может пройти по левому пути,— это
ud't потому что общий контакт переключателя U должен
перейти в другое положение, ^ общий контакт переклю-
чателя D должен остаться в том положении, в каком он
изображен. Единственный сигнал, который может пройти
по правому пути,— это u'd. Поэтому единственный сигнал,
который может достигнуть лампы Я,—это ud'V u'd. Сле-
довательно, схема правильна.
/
Источник
\ ~\
■4nW
ud'\
ud'vu'd
Рис. 8.11.
ud
Земля
С
H (V)h'Ud'vu'i
Рис. 8.12.
Но использовали ли мы имеющиеся схемные средства
наилучшим образом? Мы не используем нормально замк-
нутый зажим полюса UA и нормально разомкнутый
зажим полюса U-2.
Если мы исследуем различные комбинации переключа-
телей и напишем их уравнения в булевой алгебре, то най-
дем лучшую схему; она описывается тем же уравнением,
но в ней используется меньше оборудования; эта схема
изображена на рис. 8.12. Теперь мы обходимся более деше-
выми переключателями: у каждого из них один полюс
вместо двух.
Упрощение подобного рода часто оказывае1*ся возмож-
ным в известных границах.^Выражения булевой алгебры
дают одно решение, и затем конкретные свойства переклю-
чателей (ручных, электромеханических, как реле, или
электронных, как триггер) позволяют улучшить решение
с точки зрения экономии схемных средств при тех же
результатах.
5. Задача о завещании Брюса Кемпбелла
Рассмотрим теперь несколько более сложную задачу
о малой разумной машине и решим ее.
Задача. Вот завещание Брюса Кемпбелла:
«Если в день моей смерти мой сын, Брюс; Кемпбелл II,
не будет находиться в живых и если тогда • не будет в жи-
вых его сына и моего внука, носящего имя Брюс Кемпбелл III,
то 40% моего состояния будет выплачено наследникам мо-
его сына. Если мой сын в день моей смерти будет в живых *
и не будет иметь диплома Эдинбургского университета,
и не будет женат, и не будет иметь в живых сына по имени
Брюс Кемпбелл III, то 40% моего состояния будет выпла-
чено моему сыну. Если мой сын будет в живых, но будет
иметь диплом Эдинбургского университета или будет женат,
но не будет иметь в живых сына по имени Брюс Кемпбелл III,
то 60% моего состояния будет выплачено моему сыну*
Если мой сын будет в живых и будет иметь в живых сына
по имени Брюс Кемпбелл III, то мой сын получит все мое
состояние, если он будет иметь диплом Эдинбургского
университета, но. лишь 80% моего состояния, если он не
будет иметь диплома. Если же мой сын не будет находиться
в живых, но оставит сына по имени Брюс Кемпбелл III,
который будет в живых в день моей смерти, то 80% моего
состояния будет выплачено Брюсу Кемпбеллу III или
его законному опекуну. Во всех случаях оставшаяся часть
моего состояния будет выплачена Гэльскому дому для
бедных и престарелых».
Какая часть состояния Брюса Кемпбелла будет выпла-
чена его сыну или наследникам его сына?
Как построить машину, которая укажет сразу, что выпла-
чивается при любом сочетании условий?
Решение. В этой задаче налицо четыре условия. Мы мо-
жем представить себе класс всех возможных событий, кото-
рый будет определяться этими четырьмя условиями; сле-
довательно, мы можем использовать булеву алгебру клас-
сов. Итак:
Сын находится в живых (L) или не находится в живых
(L')\ (1)
Свга женят (Af) или не игепят {М')\
(2)
Малые разумные машины. Некоторые простые задачи 123
Сын имеет диплом Эдинбургского университета (G)
или не имеет диплома (G'); (3)
Особо поименованный внук Брюс Кемпбелл III
находится в живых (N) или не находится в живых (ЛГ). (4)
Приведем вновь первое предложение из текста зада-
чи: «Если в день моей смерти мой сын, Брюс Кемпбелл II,
не будет находиться в живых и если тогда не будет в живых
его сына и моего внука, носящего имя Брюс Кемпбелл III,
то 40% моего состояния будет выплачено наследникам
моего сына». Мы можем перевести это предложение сле-
дующим образом:
ЕСЛИ (сын не в живых) И (поименованный внук не
в живых), ТО 40%.
На языке символов:
Z/.tf'-»40%. (5)
Если таким же образом перевести второе предложение, то
получим:
ЕСЛИ (сын в живых) И (сын не имеет диплома)
И (не женат) И (поименованный внук не в живых), ТО 40%.
На языке символов:
ЬС.ДГЛГ~>40%. (6)
Третье предложение после перевода будет выглядеть так:
ЕСЛИ (сын в живых).И [(сын имеет диплом) ИЛИ
(сын женат)] И (поименованный внук не в живых), ТО 60%.
На языке символов:
L(GVM)tf/-»60%. (7)
Четвертое предложение после перевода превратится в сле-
дующие:
ЕСЛИ (сын в живых) И (поименованный внук в жи-
вых) И (сын имеет диплом), ТО 100%;
ЕСЛИ (сын в живых) И (поименованный внук в жи*
вых) И (сын не имеет диплома), ТО 80%.
На языке символов:
L.N-G-* 100%, (8)
i../V>G'->80%. (0)
124
Глава 8
Пятое предложение после перевода будет:
ЕСЛИ (сын не в живых) И (поименованный внук в
живых), ТО 80%.
В символах:
I'.JV->80%, (10)
Теперь мы проверяем, правильно ли сформулирована
задача. Является ли набор условий исчерпывающим и нет
ли несовместимых условий? Условия (6) и (7) не имеют
общих Случаев, так как (G'M')-(G V М) = 0; объединяя
их, мы получим
LG'M'N' v L(GV M)Nt = LN'. (11)
Условия (8) и (9) не имеют общих случаев, так как
G«G' = 0. Объединяя их, мы получим
L-N. (12)
Условия (8), (10), (11) и (12) не имеют общих случаев
и образуют в совокупности универсальный класс
L'N'y L'NV LN'V LN = L
Следовательно, задача сформулирована правильно и усло-
вия являются исчерпывающими и взаимно исключающими.
Поэтому можно построить внутренне непротиворечивую
машину, которая укажет выплату при всех сочетаниях.
Как же построить эту машину?
У машины будут четыре переключателя. Один переклю-
чатель обозначим надписью «Внук по имени Брюс Кемпбелл
III в живых». Этот переключатель может находиться в двух
положениях: «да» и «нет». Второй переключатель обозначим
надписью «Сын в живых»; этот переключатель тоже будет
иметь два положения: «да» и «нет». Третий переключатель
обозначим надписью «Сын имеет диплом»; переключатель
тоже будет иметь два положения: «да» и «нет». Четвертый
переключатель будет соответствовать высказыванию «Сын
женат» и будет иметь два положения: «да» и «нет». В схеме
будет четыре выходных лампочки с обозначениями «40%»,
«60%», «80%» и «100%».
Почему машина должна иметь 'такую структуру? Во-
первых, она должна быть способна принимать сообщения
Малые разумные машины. Некоторые простые задачи 125
«да» и «нет» о каждом из этих четырех условий. Для такой
машины удобно получать информацию «да» или «нет» при по-
мощи установки переключателей в то или иное положение.
Во-вторых, машина должна быть способна выдавать любой
из четырех возможных ответов. Различные ответы» давае-
мые машиной, удобно указывать при помощи лампочек.
Какой должна быть структура машины от ее входа
до выхода? Существует, конечно, очень много способов соз-
дания этой структуры; на рис. 8.13 представлен один из
вариантов — реальная электрическая схема. Проследим
действие схемы.
Источник
/.
J.
4.
Переключатель N - адии
переключающий контакт
ПереключательI -два
переключающих контакта
^\ J\«—.£ Переключатель G - два
переключающих контакта
Переключатель М — один
переключающий контакт
N1
\(GvC'M)\
NLbNLG'
NLG
ф ф ф ф
40% 60% 80%
100%
Земля
i
Рис. 8.13. Машина для завещания Брюса Кемпбелла.
Маленький кружок на чертеже (в верхней его части)
обозначает источник тока; в нижней части чертежа обозна-
чена земля. Если угодно, их можно представить себе как
два полюса электрической батареи. Представим ; теперь
электрический ток как движение потока частичек электри-
чества (электронов) по полым трубкам, изображенным на ри-
сунке прямыми линиями (в действительности это провода).
Электроны выходят из источника; затем они приходят
к разветвлению на своем пути (1-й каскад на чертеже), где
стоят слова «переключатель N — один контакт». Переклю-
чатель изображен в положении «нет». Предположим, что
этот переключатель находится в положении «нет»; тогда
126
Глава 8
электроны побегут по пластинке переключателя влево,
через контакт, отмеченный стрелкой, и далее вниз в-примы-
кающий левый провод. Этот провод обозначен буквой N'
в соответствии с содержащейся в нем информацией: «Поиме-
нованный внук не в живых». Предположим теперь, что
переключатель повернут и поставлен в положение «да». Тогда
поток электронов не пойдет прямо вниз, но потечет по пути,
обозначенному пунктиром (положение пластинки), и далее
через контакт, обозначенный стрелкой, потечет вниз через
примыкающий правый провод. Этот провод обозначен сим-
волом N в соответствии с содержащейся в нем информацией:
«Поименованный внук в живых».
Переходим теперь ко 2-му каскаду на схеме. Оба кон-
такта в этом ряду представляют собой контакты одного
и того же переключателя L. Они электрически разделены,
но перемещаются одновременно, так что если один из кон-
тактов перемещается, то перемещается и другой. Вслед-
ствие этого четыре провода, отходящие от контактов пере-
ключателя Л/, несут четыре различные порции информации
N'L\ N'Ly NL' и NL, читая слева направо.
Сопоставляя эти порции информации с выходными сиг-
налами, мы видим, что L'N' приводит к 40%, a L'N —
к 80%. Поэтому мы можем сразу же соединить эти две линии
с двумя лампочками. Но мы должны еще классифицировать
информацию, содержащуюся в двух других линиях, исполь-
зуя контакты третьего переключателя G и четвертого пере-
ключателя М. Один контакт переключателя G достаточен
для выбора случая выплаты 100%; линия N И L И G (GNL)
соответствует 100%. Линия LNG' соответствует 80% и может
быть соединена с лампочкой для 80%. Два контакта —
один контакт переключателя G (3-й каскад) и один контакт
переключателя М (4-й каскад)—используются для передачи
G'M' поодной линии и GyG'M (это то же самое, что G\/M)
по другой линии, так что линия N'L' \/N'LG'M' идет к лам-
пе для 40%, a N'L(G v G'M) — к лампе для 60%.
ГЛАВА 9
МАЛЫЕ РАССУЖДАЮЩИЕ МАШИНЫ.
СИЛЛОГИСТИЧЕСКАЯ МАШИНА И ДРУГИЕ ЗАДАЧИ
1. Задачи о силлогистической машине
Теперь рассмотрим задачу, непосредственно связанную
с обычным логическим рассуждением,— задачу создания
машины, которая будет правильно рассуждать силлогиз-
мами.
Прежде всего, что такое силлогизм?
Силлогизм, согласно словарю, есть логическая схема
формального доказательства, обладающая следующими свой-
ствами: 1) силлогизм состоит из двух предложений, назы-
ваемых посылками, и третьего предложения, называемого
заключением, и 2) заключение непременно следует из посы-
лок, иными словами, если обе посылки истинны, то заклю-
чение также должно быть истинно.
Вот один из наиболее известных примеров силлогизма:
«Все люди смертны. Сократ — человек. Следовательно,
Сократ смертен». Доказательство такого же типа: «Все
птицы имеют перья. Этот сокол в небе — птица. Следо-
вательно, этот сокол имеет перья». Строение рассуждения
выявляется в словах: «Все... суть... . Этот... есть... . Следо-
вательно, этот... есть...». Эту структуру можно передать
также так: «Все В суть С. Это А есть В. Следовательно, это Л
есть С». А, В и С называются членами силлогизма.
В рассуждении такого рода мы можем (имея в виду наши
цели) игнорировать разницу^между единственным и мно-
жественным числом. Не обязательно различать класс, содер-
жащий один элемент, и класс, содержащий более одного
элемента. Например, деньги можно представить себе во мно-
жественном числе как совокупность денежных единиц, или
в единственном числе как собирательное существо подоб-
128
Глава 9
но воде, гравию или народу. Поэтому мы можем сказать,
что то же самое строение свойственно и доказательству:
«Всякое В есть С. Всякое А есть В. Следовательно, всякое
А есть С».
Слово «силлогизм» имеет также второе значение, обо-
значая способ рассуждения, который выглядит как силло-
гизм или кажется силлогизмом, но логически неверен.
Причина этого в том, что люди хотят располагать назва-
нием для способа рассуждения, похожего на силлогизм;
поэтому могут потребоваться некоторые вычисления, чтобы
обнаружить, правильно данное рассуждение или нет.
Две посылки и заключение силлогизма часто имеют одну
из следующих форм:
1.
2.
3.
4.
Первая посылка
Всякое А есть В
Никакое А ие есть В
Некоторое А есть В
Некоторое А ие
есть В
5.
6.
7.
8.
Вторая посылка
Всякое В есть С
Никакое Б ие есть
С
Некоторое В есть С
Некоторое В ие
есть С
9.
10.
11.
12.
Заключение
Всякое А есть С
Никакое А ие есть
С
Некоторое А есть
С
Некоторое А ие
есть С
Здесь перечислены не все формы посылок и заключений,
составляющих силлогизм, но охвачена большая часть
рассуждений, основанных на силлогизмах. Но, конечно,
неправильно думать, что любое случайное сочетание посы-
лок и заключения составит правильное рассуждение.
Например, если мы возьмем высказывания 2 и 7, то не смо-
жем вывести из них высказывание 9. Другими словами, из
предложений «Никакое А не есть В» и «Некоторое В есть С»
нельзя заключить «Всякое А есть С». Некоторые ложные
умозаключения легко устранить. Но другие заблуждения
часто отстаивают люди, которые должны были бы в этом
разбираться. Например, бывший сенатор от штата Вискон-
син Джозеф Маккарти утверждал: «Все коммунисты напа-
дают на меня. Такой-то нападает на меня. Следовательно,
такой-то — коммунист». То, что этот так называемый
«силлогизм» ложен, видно из сопоставления его с таким
рассуждением: «Все гусеницы едят салат. Я ем салат. Сле-
довательно, я гусеница». Но учащихся в американских
школах обычно не учат тому, как логически доказать, что
Малые рассуждающие машины. Силлогистическая машина 129
такой силлогизм ложен, пока они не приступают к курсу
логики или философии в колледже.
Разберем теперь одну задачу.
Задача. Построить машину, которая будет получать
на один вход любое одно из высказываний — от 1-го до
4-го, а на второй вход любое одно из высказываний от 5-го
до 8-го и будет указывать на выходе какое-либо одно
из высказываний от 9-го до 12-го (или, если потребуется,
большее число высказываний), если такое высказывание
является правильным заключением.
Если мы решим эту задачу, то в нашем распоряжении
будет машина, способная автоматически анализировать
16 силлогизмов, показывая, какое заключение можно сделать*
если, вообще, можно сделать какое-либо заключение, и отме-
чая в противном случае: «Никакое заключение относительно
Л и С невозможно!.
Мы можем решить эту задачу, как будет показано ниже.
Получающаяся в результате «силлогистическая машина»
представляет собой весьма убедительный пример логи-
чески рассуждающей малой машины. По существу эта
машина представляет собой не один, а три примера: 1) она
служит примером того, как машина может производить логи-
ческое рассуждение; 2) машина служит примером того, как
можно построить рассуждающую схему при помощи буле-
вой алгебры, и 3) задача, которую она решает, является
примером вычислений в булевой алгебре.
Решение. Эта машина состоит из двух входных переклю-
чателей, каждый из которых может быть в одном из четы-
рех положений, и четырех или более ламп, которые могут
быть включены или выключены. Один переключатель
обозначен надписью «Первая посылка». Он может быть уста-
новлен в какое-либо одно из четырех положений:
1) Всякое А есть В.
2) Никакое А не есть В.
3) Некоторое А есть Я.
4) Некоторое А не есть В+
Второй переключатель обозначен надписью «Вторая
посылка»; он может быть установлен в какое-либо одно
из четырех положений:
5) Всякое В есть С.
6) Никакое В не есть С.
iao
Глава 9
7) Некоторое В есть С.
8) Некоторое В ле есть С.
Первые четыре лампы имеют обозначения:
9) Всякое А есть С.
10) Никакое А не есть С.
11) Некоторое А есть С
12) Некоторое А не есть С.
Оказывается, что нужны еще три лампы. Они обознача-
ются так:
13) Некоторое С не, есть А.
14) Некоторое не-А есть.не-С.
15) Невозможно никакое заключение относительно
А и С.
Создание этой машины связано с решением двух задач.
Первая задача — использовать булеву алгебру для выво-
да всех заключений, которые мы можем составить из 16
возможных сочетаний первой посылки и второй посылки.
Вторая задача — выразить посредством булевой алгебры
все 16 ответов в виде электрической схемы машины»
Применение булеэой алгебры для вывода заключений
из 16 возможных случаев всего проще показать на диа-
граммах Венна. Диаграммы Венна выражают некоторые
отношения двух классов следующим образом:
Штриховка
области показы-
вает, что она
пустая.
Веяное А есть В Ни одно А не есть В
ш ш
Некоторые А есть В Некоторые А
ив есть В
Звездочка в об-
ласти показы-
вает, что об-
ласть непустая.
Вот результаты вычисления 16 случаев:
Малые рассуждающие машины. Силлогистическая"машина 131
Случай Диаграмма Венна
Словами
1. 5
Всякое А есть В.
Всякое В есть С.
Следовательно, всякое А
есть С (Лампа 9),
1. 6
1, 7
Всякое А есть В.
Никакое В не есть С.
Следовательно, никакое
не есть С (Лампа 10).
Всяксе А есть В.
Некоторое В есть С.
Следовательно, никакое за-
ключение относительно А
и С невозможно (Лам-
па 15).
Заметим, что нам не известно, расположена ли звездочка
по ту или по другую сторону от границы класса А. По-
этому мы рисуем две звездочки и соединяем их прямой,
пересекающей границу, чтббы выразить эту неопределен-
ность.
1. 8
2, 5
Всякое А есть В.
Некоторое В не есть С*
Следовательно, никакое за-
ключение относительно А
и С невозможно (Лам-
па 15).
• Никакое А не есть В.
Всякое В есть С.
Следовательно, никакое за-
ключение относительно А
и С невозможно (Лам-
па 15).
132
Глава 9
2. 6
Никакое А не есть В.
Никакое В не есть" С.
Следовательно, никакое за-
ключение относительно А
и С невозможно (Лам-
па 15).
2, 7
Никакое А не есть В.
Некоторое В есть С.
Следовательно, некоторое С
не есть А (Лампа 13).
2, 8
Никакое А не есть В.
Некоторое В не есть С.
Сле довател ьно, некоторое
не-Л есть не-С (Лампа 14).
3, 5
Некоторое А есть В.
Все fi есть С.
Следовательно, некоторое Л
есть С (Лампа 11).
3, 6
Некоторое А есть В.
Никакое В не есть С.
Следовательно, некоторое А
не есть С (Лампа 12).
3, 7
Некоторое А есть В.
Некоторое Я есть С.
Следовательно, никакое за-
ключение относительно А
й С невозможно (Лам-
па 15).
Малые рассуждающие машины. Силлогистическая машина 133
Некоторое А есть В.
Некоторое В не есть С.
Следовательно, никакое "за-
ключение относительно А
и С невозможно (Лам-
па 15).
Некоторое А не есть В (Лю-
бая посылка).
Следовательно, никакое за-
ключение относительно А
и С невозможно (Лам-
па 15).
Мы приступаем к задаче синтеза схемы. Составляем таб-
лицу случаев. Между прочим, таблица случаев служит
одним из самых распространенных и самых простых спо-
собов выполнения операций булевой алгебры и других ло-
гических рассуждений.
Вот таблица случаев:
Первая Вторая Выходной
посылка посылка сигнал
1 5 9
1 б 10
1 7 15
1 8 15
2 5 15
2 6 15
2 7 13
2 8 И
3 5 11
3 6 12
3 7 15
3 8 15
4 Любая 15
Эту таблицу случаев можно превратить в выражение буле-
вой алгебры следующим образом. Заметим, что числа при-
меняются отнюдь не в арифметическом смысле, а лишь как
условные обозначения высказываний или схемных эле-
3, 8
и ка-
кой-ли-
бо из
5, 6, 7,
8
134
Глаза 9
ментов, или, иными словами, лишь как элементы булевой
алгебры.
9=1(5), 13 = 2(7),
10=1(6), 14=2(8),
11 = 3 (5), 15= 1 (7 V 8) V 2 (5 V 6) V 3 (7 V 8) V 4.
12 = 3(6),
Таким образом, получается электрическая схема, изо-
браженная на рис. 9.1. Чтобы получить четыре полюса
h
Некоторое А
4 не есть В
* некоторое А п
есть В
^НиодноА 14
\с не есть В
1 Всякое А П
есть В
Некоторое В есть ме-Q
2 Некоторое В есть С
Ни одно В не есть С
Всякое В есть С
15
Першая посылки
Вторая аосылт
(ft (ft (ft (ft (ft (ft (ft
9 15 пТг 1з к к +
фея кое А Ни одно А Некоторое Некоторое Некоторое Некоторое Никакое'
есть С не есть С А есть С А есть С есть ке-А есть заключение
кв-С ке-А кв-С относительно
А и С
Рис. 9.1. Силлогистическая машина.
переключения для второго высказывания, мы используем
разные секторы одного и того же многопозиционного пере-
ключателя.
Другое выражение булевой алгебры для этой таблицы
случаев:
9 = 5(1),
10 = 6(1),
11=5(3),
12 = 6(3),
13 = 7(2),
14 = 8(2),
15 = 5(2 \M)V6(2V4)V 7(1 V*V4)V8(1 V3 V 4) =
= (5V6)(2V4)V(7V8)(3V4).
Малые рассуждающие машины. Силлогистическая машина 135
Этому выражению соответствовала бы другая схема, кото-
рая выполняла бы те же функции.
2. Задача о вычислителе логической истинности
В предыдущем разделе мы познакомились с. машиной,
которая находит заключение, если даны две посылки.
Возможно ли дальнейшее развитие машины такого рода
для логических* рассуждений? Можно ли построить машину,
которая будет вычислять логическую истинность или
ложность сочетаний' высказываний?
На это можно ответить положительно. Чтобы показать
это, рассмотрим две задачи, взятые из сборника «Brainiacs»
(см. стр. 245).
Первая задача. Сэнди Кемпбелл, инженер-электрик,
начал проходить курс алгебры логики в Эдинбургском
университете с профессором Хиггинсом. Однажды профес-
сор Хиггинс говорит своим студентам, что существует
семь важных логических операторов и связок для выска-
зываний и что их можно выразить с помощью самых про-
стых и знакомых английских слов. Профессор объясняет:
«Если мы обозначим через Р одно высказывание и через
Q — другое, то существует по меньшей мере семь следую-
щих важных комбинаций:
а) Р И Q (в том смысле, что Р и Q оба истинны);
б) Р ИЛИ Q (в том смысле, что утверждается Р или Q
или оба);
в) НЕ-Р (в том смысле, что высказывание Р отрицается);
г) Р ИЛИ ЖЕ Q (в том смысле, что истинно либо Р, либо Q,
но не оба);
д) ЕСЛИ Р, ТО Q (в смысле утверждения, что Q истинно,
или Р ложно, или то и другое; или, что равносильно, в
смысле отрицания того, что Р истинно и Q ложно);
е) Р ТОГДА И ТОЛЬКО ТОГДА, КОГДА Q (в смысле
утверждения, что Р истинно и Q истинно, или же Р ложно
и Q ложно);
ж) НИ Р, НИ Q (в смысле утверждения, что Р не истинно
и Q не истинно)».
Профессор Хиггинс говорит: «Если для каждой из
этих комбинаций вы знаете, истинно ли Р или ложно и истин-
136
Глаза 9
но или ложно Q, то вы, безусловно, можете решить, истинна
или ложна комбинация, благодаря тому что вы знаете
значение связки».
Сэнди стал размышлять об этом, когда пришел домой,
и несколько дней спустя он принес в класс семь малень-
ких машин, демонстрирующих именно то, что говорил
профессор.
Спроектируйте эти машины.
Решение. У каждой из этих машин, за исключением
НЕ-Р [случай (в)], будут два переключателя: один — для
высказывания Р и другой—для высказывания Q. Каждый
переключатель будет иметь два положения: ИСТИНА и
ЛОЖЬ. У машины будут две лампы: РЕЗУЛЬТАЪИСТИН-
НЫЙ, РЕЗУЛЬТАТ ЛОЖНЫЙ.
В приведенной ниже таблице значений истинности
указана информация, которую должны выражать электри-
ческие цепи.
р
0
0
1
1
Q
0
1
0
1
(а)
PHQ
0
0
0
1
р-я
(б) 1
р
или
Q
0
1
1
1
PV<7
(г)
РИЛИ
же<?
0
1
1
0
РЯ'УР'Я
(д)
ЕСЛИР,
ТО Q
1
1
0
1
ЯУР'
(е)
Я ТОГДА
Итолько
ТОГДА,
КОГДА Q
1
0
0
1
РЯУР'Я'
(ж)
НИ Р,
НИ Q
1
0
0
0
Р'Я9
р
0
1
р
НЕ-Р
1
0
р'
В нижней строке таблиц указано булево уравнение,
выражаемое каждой из этих таблиц значений истинности.
При помощи этих уравнений мы можем решить задачу
и построить электрические схемы машин. Последние изо-
бражены на рис. 9.2.
Малые рассуждающие машины. Силлогистическая машина 137
Вторая задача. Другой студент из класса профессора
Хиггинса, прослушав на следующее утро сообщение Сэнди
Кемпбелла и замечания профессора, поднимает руку и гово-
рит: сМне кажется, что все эти машины, за исключением
машины для НЕ-Р, можно было бы объединить в одну
п
Л*,о
Р и Q РилиИ Не-Р Р или/иначе Q
£слиР,той Р тогда и только HuP,huQ
тогда, когда Q
Рис. 9.2,
машину с переключателем для выбора связки или опера-
тора». Профессор Хиггинс отвечает: «Вы правы. Два моло-
дых человека, по имени Т. Калин и В. Буркгарт, сделали
как раз то же самое несколько лет назад. Они сделали
машину с местом для ввода в нее любого одного из десяти
высказываний и для выбора любой одной из четырех связок
между парами высказываний или сочетаний пар и исследо-
вания затем возможных сочетаний истинных и ложных
высказываний. Поскольку вы предложили идею, то почему
бы вам не принести в следующий раз в аудиторию неболь-
шую машину, которая продемонстрирует, как выбирается
связка, и укажет значение истинности Р и Q?>
Спроектируйте машину, выполняющую эту задачу.
138
Глава 9
Решение. Машина будет иметь три переключателя:
СВЯЗКА, 1-е ВЫСКАЗЫВАНИЕ и 2-е ВЫСКАЗЫВАНИЕ.
Переключатель связки будет иметь положения И, ИЛИ,
2-е высказывание Q
РиС. 9.3.
ИЛИ ЖЕ, ЕСЛИ..., ТО, ТОГДА И ТОЛЬКО ТОГДА,
КОГДА и НИ... НИ. Два других переключателя будут
иметь положения ИСТИНА и ЛОЖЬ. В машине будут две
лампы РЕЗУЛЬТАТ: одна с обозначением ИСТИНА,
другая с обозначением ЛОЖЬ. Схема изображена на рис. 9.3.
3. Задача о рассуждении редактора журнала
Последние две задачи несколько отвлеченны; рассмотрим
более конкретную задачу на логическое рассуждение,
которая (хотя и приведена здесь в несколько измененном
виде) основана на ситуации, действительно имевшей место
в издательском деле автора этой книги.
Задача. Главный редактор м-р Робинсон сказал своему
помощнику м-ру Джонсу: «Рассказ о Датч Харбор набран
Малые рассуждающие машины. Силлогистическая машина 139
столбцами размером в 1/2 страницы, и если мы поместим
его продолжение за этими 2/3 страницы рекламы, то набор-
щик должен будет набрать его снова. Если он наберет его
столбцами в 1/э страницы, то он сделает ошибки. Если
же он сделает ошибки» мы не сможем исправить их,
потому что крайний срок выхода журнала очень близок.
Поэтому будут ошибки в окончательном тексте, и мы
окажемся в глупом положении. Если мы 'не хотим быть
в глупом положении, то мы должны поместить продолже-
ние рассказа о Датч Харбор в каком-нибудь другом месте,
где не нужно будет перебирать набор столбцами в х/э стра-
ницы».
М-ру Джонсу многие пункты этого рассуждения кажутся
сомнительными. Он хочет иметь машину, которая показала
бы, при каких условиях редакция окажется в глупом поло-
жении.
В этом рассуждении имеются такие высказывания:
1) Рассказ о Датч Харбор набран столбцами в V2 страницы.
2)^Если его продолжение поместить вслед за 2/3 страницы
рекламы, то наборщик должен будет перебрать продол-
жение рассказа столбцами в 1/9 страницы.
3) Наборщик сделает ошибки £при наборе продолже-
ния.
4) Редакция не сможет исправить ошибки.
5) Крайний срок выхода журнала очень близок.
6) Будут ошибки в окончательном тексте.
7) Если будут ошибки в окончательном выпуске, редакция
окажется в глупом положении.
8) Редакция не хочет быть в глупом положении,
9) Редакция помещает продолжение рассказа в каком-
нибудь другом месте, где не нужно будет перебирать
набор столбцами в 1/3 страницы.
М-р Джонс вполне соглашается с высказываниями (1),
(2), (7) и (8), но он хотел бы проанализировать возможные
логические альтернативы остальных высказываний при
помощи логической машиньц
Спроектируйте машину.
Решение. Остальные высказывания (3), (4), (5) и (9)
как посылки и (6) как заключение связаны следующим
образом:
если не-9, несли 3, и если 5, и если 4, то 6;
140 Глава 9
Если 9, или если не-9, и если не-3, или если не-9, и если
не-5, и если не-4, то не-6.
Редакция помещает
продолжение а другом
месте (9)
Рис. 9.4.
Эту связь высказываний можно выразить электричес-
кой схемой. В схеме должны быть четыре переключателя:
НАБОРЩИК ДЕЛАЕТ ОШИБКИ (3), РЕДАКЦИЯ
НЕ СМОЖЕТ ИСПРАВИТЬ ОШИБКИ (4), КРАЙНИЙ
СТОК ВЫХОДА ЖУРНАЛА ОЧЕНЬ БЛИЗОК (5) и
РЕДАКЦИЯ ПОМЕЩАЕТ ПРОДОЛЖЕНИЕ В ДРУГОМ
МЕСТЕ (9). Каждый переключатель должен иметь два
положения: «ДА» и «НЕТ». Должны быть две лампы: «ДА»
и «НЕТ», относящиеся к высказыванию ОШИБКИ
Малые рассуждающие машины. Силлогистическая машина 141
В ОКОНЧАТЕЛЬНОМ ВЫПУСКЕ И РЕДАКЦИЯ
В ГЛУПОМ ПОЛОЖЕНИИ (6 и 7) (см. рис. 9.4).,
Примечание. Только при одном из шестнадцати возмож-
ных положений четырех переключателей горит лампа «ДА»
(«Ошибки в окончательном выпуске» и «Редакция в глупом
положении»). В остальных пятнадцати возможных слу-
чаях горит лишь лампа «НЕТ». Поэтому сомнения м-ра
Джонса в справедливости доводов обоснованны, поскольку
эти доводы имеют силу лишь в том случае, если из четырех
высказываний истинны все четыре.
4. Рассуждают ли эти машины?
После того как инженер спроектирует одну из этих
машин, обращающихся разумно с информацией, и техник
соберет ее, так что она станет работать, можно ли будет
сказать, что такая машина рассуждает?
Нельзя отрицать, что машина действительно рассужда-
ет и рассуждает правильнее и быстрее, чем человек.
Но вы можете сказать, что малая машина не понимает
процесса рассуждения, ибо в ее схему не были введены
какие-либо знания о процессе рассуждения.
Это так. Но то же самое можно сказать о человеке.
Человек не знает, как в его мозгу развертывается про-
цесс рассуждения. Человеческий мозг более недоступен
для исследования, чем вершина горы Эверест. Часть чело-
веческого мозга, которая рассуждает, заключена где-то
внутри черепа в непроницаемой тьме, в^ассе нервов, тка-
ней и кровеносных сосудов; она' сразу перестает действо-
вать, если кто-нибудь пытается взглянуть на нее, отделить
ее, испытать ее, наблюдать ее физически,—и никто не смо-
жет собрать ее снова. В самом деле, мы, по-видимому,
скорее выясним, как происходит рассуждение в нашем
мозгу, конструируя модели рассуждающих машин из физи-
ческих элементов, чем непосредственно исследуя неболь-
шие разделы мозга.
Вы можете сказать, что малая машина не может изо-
брести процесс рассуждения или какую-нибудь его часть.
Это так. Но достаточно большая и достаточно мощная
машина теоретически должна быть способна сама приду-
мать процесс рассуждения.
142 Глава 9
И опять-таки то же самое можно сказать и о человеке:
никакой отдельный человек не изобрел процесса рассужде-
ния, которым пользуются люди. Этот процесс является
продуктом шести тысяч лет развития языка, культуры и циви-
лизации, шести тысяч лет развития мышления и вычисле-
ния, непрерывных небольших усовершенствований, шагов
рассуждения и непрерывных- небольших усовершенство-
ваний изобретений (таких, как письмо и счеты), помогаю-
щих капризной, несовершенной памяти приматов, которая
так ясно обнаруживается у многих людей, а также у шим-
панзе и других обезьян.
Действительно, нетрудно доказать, что ни один чело-
век не мог бы изобрести процесс рассуждения, потому что
для этого потребовалась бы такая степень абстракции
и такая мыслительная работа, которая далеко превосходит
способности отдельного человека, изолированного от благо-
творной культуры.
И, заглядывая в завтра, мы можем быть уверены в том,
что.малые рассуждающие машины будут повсюду — в шко-
лах и университетах, в домах и учреждениях; люди будут
использовать их как при обучении процессу рассуждения,
так и при получении результатов посредством строгих
рассуждений, выполненных- машинами.
Г Л А В А 10
БОЛЬШИЕ ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ.
ЗАДАЧИ СЛОЖЕНИЯ ДЕСЯТИЧНЫХ ЧИСЕЛ
Принципы, изложенные и иллюстрированные в преды-
дущей главе, можно также применить к большим вычисли-
тельным машинам, которые производят как логические,
так и арифметические вычисления. Это объясняется тем,
что арифметические вычисления можно легко разложить
на логические вычисления, особенно если использовать
двоичную систему счисления. Двоичная система счисления
знает лишь цифры 0 и 1, а разряды числа обозначаются
последовательными степенями двойки. Например, число 1101
в двоичной системе равно одной восьмерке (которая равна
двойке в кубе) плюс одна четверка (которая равна двойке
в квадрате) плюс нуль двоек (двойка равна двойке в первой
степени) плюс одна единица (которая равна двойке в нуле-
вой степени), или всего тринадцати. В десятичной системе
число 1101 означает одну тысячу (которая равна десяти
в кубе) плюс одну сотню (которая равна десяти в квадрате)
плюс нуль десятков (десятбк равен десяти в первой степени)
плюс одну единицу (которая равна десяти в нулевой степени).
Машина для производства полезных арифметических
вычислений должна быть значительно больше, чем машина,
выполняющая логические вычисления. Это объясняется тем,
что количество информации, которую нужно обработать,
при арифметических вычислениях значительно больше, чем
при логических вычислениях, поскольку арифметическая
информация выражается большим количеством единиц
и нулей; в самом деле, в большинстве случаев числа,
над которыми нужно производить вычисления, имеют при-
мерно от трех до восьми десятичных разрядов, а уже для
144
Глава 10
представления шести десятичных разрядов может потребо-
ваться девятнадцать двоичных разрядов. Это требует доба-
вочного оборудования, или добавочного времени, или того
и другого/
1. Десятичная таблица сложения
в физическом воплощении
Чтобы показать справедливость сказанного, возьмем
в качестве примера элементарную задачу — выразить табли-
цу сложения в десятичной системе с помощью технических
средств. Чтобы машина производила сложение в десятичной
системе, в ее физическую структуру должна быть введена
эта таблица или ее эквивалент.
В табл. 10.1 приведен набор сведений, которые мы долж-
ны выразить в физической структуре машины.
Таблица 10 J
ТАБЛИЦА СЛОЖЕНИЯ В ДЕСЯТИЧНОЙ СИСТЕМЕ
012345678 9
0
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
11
3
4
5
6
7
8
9
10
11
12
4
5
6
7
8
9
10
11
12
13
5
6
7
8
9
10
11
12
13
14
6
7
8
9
10
11
12
13
14
15
7
8
9
10
11
12
13
14
15
16
8
9
10
11
12
13
14
15
16
17
9
10
11
12
13
14
15
16
17
18
Так как мы замечаем в числах этой таблицы плавную
закономерность, то неудивительно, что этот набор 100 истин
сложения был сначала физически выражен небольшими
вращающимися зубчатыми колесами или дисками, имеющи-
ми по окружности десять находящихся на одинаковом рас-
стоянии друг от друга зубцов. БЬш такое колесо стоит
на 4 и если один ход защелки или храповика передвинет его
Большие вычислительные машины. Сложение десятичных чисел 145
на три зубца, то колесо остановится на 7 и тем самым будет
произведено сложение одного столбца. Если следующим
ходом защелки или храповика колесо переместится на 5 зуб-
цов, оно остановится на 2; и в то время как колесо пройдет
через позиции от 9 до 0, добавочный боковой зубец на коле-
се повернет ближайшее к нему колесо вперед на один зубец,
тем самым «перенося 1» в диск, регистрирующий положение
смежного колеса. Эта система насчитывает триста лет и яв-
ляется основой всех механических настольных счетных
машин.
2. Десятичная таблица сложения, выраженная
переключателями на десять положений
Мы попробуем представить 10-позиционный физический
элементе помощью электрических переключателей, работаю-
щих в схеме, весьма близкой к некоторым схемам предыду-
щей главы.
Задача. Спроектировать машину, которая будет воспри-
нимать любую цифру Л от 0 до 9 с помощью десятипозицион-
ного переключателя (переключателя А) и любую цифру В
от 0 до 9 с помощью второго десятипозиционного переклю-
чателя (переключателя В) и выдавать суммы от 0 до 18.
Такая машина будет представлять таблицу сложения в деся-
тичной системе.
Решение, Переключатель А будет иметь десять положе-
ний и один полюс, а переключатель В будет иметь десять
положений и десять полюсов. Машина будет' иметь 19 ламп
суммы от SO до S18. Схема изображена на рис. ЮЛ.
Она выражает весьма просто следующий ряд булевых
уравнений:
SO = АО ВО,
Sl=A0-Bl Vi4bB0,
52 = Л0-Б2 V А\ -B\\J А2-В0,
53 = A0-B3 V AIB2V A2BI V^3.fi0,
S9 = A0B9 V A\ -B8\/A2-B7 V V Л9-В0,
518 = Л9-В9.
Переключатель В8 д
(bfofotoOXbGXbQifafo
Г 6
8 $ 10
(ьахгхыьахь®
C/MAU7. ^_^^__
пампы $ 11 12 13 14 15 16 17 18
Рис. 10.1. Десятичная таблица сложения. Перво-
начальный вариант схемы.
Большие вычислительные машины. Сложение десятичных чисел 147
3. Критические замечания
Однако при первом знакомстве с этой схемой видно,
что, хотя машина и является решением задачи, решение это
не очень хорошее. Во-первых, машина не экономична по
числу используемых в ней элементов; бесспорно, для реше-
ния нашей задачи нам не нужен 121 зажим и 121 провод.
Во-вторых, мы знаем, что нам придется иметь дело не с одним
разрядом, а со многими, как только мы перейдем от чисел
из одного разряда к числам из 8,10 и более разрядов. В-треть-
их, мы должны располагать возможностью снимать резуль-
тат одного сложения, появляющийся на выходе машины,
и передавать его обратно на вход машины, чтобы одну
и ту же машину можно было использовать много раз для
неопределенно большого числа сложений.
Как показал опыт работы с вычислительными машинами,
для этого нужно отказаться от применения механических
или электрических элементов с десятью различными поло-
жениями, подобных дискам или переключателям, о которых
шла речь. Они становятся явно неудобными, когда мы пыта-
емся существенно повысить скорость машины. Они действу-
ют медленно. Наиболее быстродействующие механические
элементы на десять положений могут складывать два числа
примерно за одну пятую секунды, когда одно число уже
находится в накопительном дисковом регистре машины,
а другое уже введено в клавишный регистр и остается лишь
нажать кнопку сложения. Это, конечно, не является недо-
статком, когда машиной управляет человек; ведь для того,
чтобы ввести числа в машину или списать числа из машины,
ему требуется гораздо больше одной пятой секунды. Но как
только мы хотим установить автоматическое управление
длинной последовательностью вычислительных операций
(а именно в этом направлении шло развитие автоматизации
процессов обработки данных с 1944 г.), то мы обнаружим,
что десятипозиционные механические или электрические
элементы медленны и неудобны. Оказывается, нам нужно
перейти к комбинациям механических или электричес-
ких элементов, каждый из которых имеет только два
положения. Мы приходим к двоичной и родственным ей
системам.
148
Глава 10
4. Таблица десятичного сложения, выраженная с помощью
восьми двухпозиционных переключателей
Попытаемся учесть некоторые из этих условий и произ-
ведем некоторые изменения в решении нашей задачи —
построить машину, выражающую таблицу сложения.
Десятичная
цифра
0
1
2
3
4
Четыре
двоичные цифры
0000
0001
0010
ООП
0100
Таблица 10.2
1 Десятичная Четыре
цифра двоичные цифры
\ 5
6
•
0101
ОНО
0111
1000
1001
Во-первых, выразим каждую из двух складываемых
нами десятичных цифр А и 5 не с помощью одного десяти-
позиционного переключателя, а посредством набора четы-
рех двухпозиционных переключателей. Тогда каждое деся-
тичное число будет выражено в виде набора четырех двоич-
ных цифр; один из возможных вариантов такого определе-
ния приведен в табл. 10.2. Кроме того, потребуем, чтобы
машина давала два выходных сигнала: левый десятичный
разряд суммы (0 или 1) и правый десятичный разряд суммы
(от 0 до 9); каждый из этих десятичных разрядов выражается
четырьмя двоичными разрядами, также в соответствии
с табл. 10.2. Какой вид будут тогда иметь схемы?
Задача 2. Спроектировать машину, которая будет воспри-
нимать двоичную цифру А четырьмя переключателями Л8,
Л4, Л2, А\ и десятичную цифру 5 —четырьмя переключа-
телями 58, 54, 52, 51 и которая будет зажигать лампу С1,
если левая цифра суммы будет 1, и будет показывать на лам-
пах S8, S4, S2, S1 значение правой десятичной суммы.
Решение. Четыре переключателя А и четыре переключа-
теля 5 будут иметь по два положения. В схеме будет пять
выходных ламп: CI, S8, S4, S2, S\.
Большие вычислительные машины. Сложение десятичных чисел 149
5. Первый выход 51
Рассмотрим уравнения булевой алгебры, которые будут
определять CI, S8, S4, S2 и S1. Начнем с самого прос-
того — с уравнения для S1. Лампа S1 будет показывать 1
Схема в
Рис. 10.2.
тогда и только тогда, когда А четное и В нечетное яли В
четное и А нечетное. Другими словами,
Sl=A\.BV V А\'*В\.
Это отношение выражено в табл. 10.3 и на' рис. 10.2. На
рис. 10.2, а схема изображена почти в натуральном виде (но
не масштабе). Эта схема соответствует тому случаю, когда
имеются вращающиеся двухпозиционные переключатели;
Таблица 10.3
В
0,2,4,6,8
К 3,5, 7, 9
1,3,5,7,9
0,2,4,6,8
положения 0 (ВЫКЛЮЧЕНО) и 1 (ВКЛЮЧЕНО) изобра-
жены точками и символами, а подвижный контакт изобра-
жен жирной линией, соединяющей два соседних зажима
150
Глава 10
на переключателе, и соединительной линией. На рис. 10.2, б
тот же переключатель изображен схематически и гораздо
проще; контакт 0 изображен соприкасающейся стрелкой
(соответствующей положению нормально ЗАМКНУТО);
контакт 1 изображен несоприкасающейся стрелкой (соответ-
ствующей положению нормально РАЗОМКНУТО); а под-
вижный контакт изображен простой линией, касающейся
конца стрелки при положении ВЫКЛЮЧЕНО. Этот способ
изображения схем мы будем часто применять и в дальнейшем.
6. Второй выход С\
Для того чтобы было С1 = 1, т. е. чтобы левая цифра сум-
мы была единицей, А плюс В должно быть больше или равно
десяти. Это будет справедливо в сорока пяти случаях, при-
веденных в табл. 10.4.
А
1
2
3
4
5
В
9
8,9
7,8,9
От 6 до
» 5 у
9
9 !
1 А
6
7
8
9
Таблица 10.4
В
От 4 до 9
» 3 » 9
t 2 t 9
» 1 » 9
В схеме должны быть представлены все эти случаи, и толь-
ко они. Нам нужно выразить эти 45 случаев в виде булевой
функции переменных Л8, Л4, Л2, Л1, В8, В4, В2, В\.
Начнем с разбора случаев, соответствующих одиночным
булевым уравнениям. Они представлены в табл. 10.5.
Таблица 10.5
Л8=8,9 Л8' = 0,1,2,3,4,5,6,7
Л4 = 4,5,6,7 Л4' = 0,1,2,3,8,9
42 = 2,3,6,7 Л2'=0,1,4,5,8,9
Д1 = 1,3,5,7,9 Л1' = 0,2,4,6,8
Мы видим, что из AS вытекает Д4' и А2' и, следователь-
но, из Л4 вытекает АЪ' и из Л2 вытекает Л8\
Большие вычислительные машины. Сложение десятичных чисел 151
Группируя цифры согласно указаниям табл. 10.5,
мы можем сгруппировать сорок пять случаев в условия,
выраженные на языке булевой алгебры, как показано
в табл. 10.6.
Группа
1
2
Случаи
Л8,9; Д8.9
i44^-7,
В4^-7,
Л2.3, ,
Л44-7,
Л6.7
А1В9,
А9-В\4
ЛЗ-В7,
А7-ВЗ,
АБВ5
В8.9 v
Л8,9
В8,9 и
Таблица 10.
\
В2.3,
В6.7 и В4-г
и
Л8,9
-7,
5
Число
случаев
4
16
8
12
5
Условия
AS В8
Л4Д8уВ4Л8
А4'А2В8\/В4'.В2<А8
А4-В4В2\/В4А4А2
Л1Б1(Л8'Л4'.Л2'.В8\/
\/В8'В4'.В2'.Л8\/
уЛ4'.Л2Л4Я2\/
\/Д4'.Д2.Л4.Л2\/
\fA\JW-B\B2')
Логической суммой этих условий — результатом соеди-
нения этих условий булевым оператором V — йвляется
общее условие, которое должна выразить схема для О.
Используя это общее условие, мы можем 1) начертить без
затруднения схему и 2) доказать, что схема правильна.
Вспоминая, что из AS вытекает Л4' и А2' и что из Л4 или
из А2 вытекает Л8, мы можем написать общее условие
С1=Л8- 58' V
\М8- 58'.54' V
уЛ8'.58*Л4' V
V 48- 58'.54'.52' V
у48'.В8.Л4'*Л2' V
V A8'-B8'<Ai 54-52' V
уЛ8'.58'.Л4.54.Л2' V
у48'.В8.Л4'-Л2;.ЛЬВГ V
V А8- 58'.54'.52''ЛЬ5Г V
\М8'.58'.Л4'.54-52.Л2-Л1.5Г V
уЛ8'.58'.Л4 54'.52Л2ЛЬ51' V
уЛ8/.В8,Л4.54-Л2'.52'.Л1ВГ
152
Глава 10
Это уравнение после сокращения приводится к следующе-
му виду:
С1=Л8-Я8\/
V Л8.£8' (£4 V £2 V А\ -В1) V
V А8' -В8- (Л4 V Л2 V Л1 -51) V
V А8' BS' -[(Л4-В4 (/42 V В2\/Al -В1) V
V (Л4'-54 V Л4.В4/)(Л2-В2.ЛЬВ1)].
А это выражение можно реализовать схемой на рис. 10.3,
содержащей 22 переключающих контакта. Рассматривая
Р и с. 10.3.
Большие вычислительные машины. Сложение десятичных чисел 153
информацию, передаваемую по каждой линии, эту схему
можно еще несколько упростить и привести к схеме, изо-
браженной на рис. 10.4; В ней содержится 14 переключа-
ющих контактов.
AS
j№
%\%-
В8
А4
В8
\В4
1
ф
Рис. 10.4.
7. Следующие три выхода 52, 54, .58
Для того чтобы S2 было равно 1, правая цифра суммы
должна быть 2,3,6 или 7. Это будет иметь место в случаях,
указанных в табл. 10.7.
А
0
1
2
3
4
В
2,3,6,7
1,2,5,6
0,1,4,5
0,3,4,9
2,3,8,9
А
5
6
7
8
9
В
U2,7,8
0,1,6,7
0,5,6,9
4,5,8,9
3,4,7,8
Таблица 10 J
154
Глава 10
Для того чтобы S4 было равно 1, правая цифра суммы
должна быть 4, 5, 6, 7. Это будет иметь место в случаях,
указанных в табл. 10.8.
А
0
1
2
3
4
В
4,5,6,7
3,4,5,6 '
2,3,4,5
1,2,3,4
0,1,2,3
А
5
6
7
8
9
Таблица 10.8
В
0,1,2,9
0,1,8,9
0,7,8,9
6,7,8,9
5,6,7,8
Для того чтобы S8 было равно 1, правая цифра суммы
должна быть 8 или 9. Это произойдет в случаях, указанных
в табл. 10.9.
А
0
1
2
3
4
В
8,9
7,8
6,7 !
5,6 i
4,5 ,
1 А
5
6
7
8
1 9
В
3,4
2,3
1,2
0,1
0,9
Таблица 10.9
Однако если мы применим тот же способ, что и в преды-
дущий раз, то столкнемся с затруднениями. Вычисления
станут слишком сложными, и поэтому нам нужно изменить
подход.
Предположим временно, что нам нужно рассматривать
лишь четные цифры. Тогда задача станет гораздо проще.
Вместо трех таблиц мы получаем одну (табл. 10.10).
А
0
2
4
6
8
в,
если 52=1
2,6
0,4
2.8
0,6
4,8
Таблица
В,
если 54=1
4,6
2,4
0,2
0,8
6.8
10.10
В.
если 58=1
8
6
4
2
0
Большие вычислительные машины. Сложение десятичных чисел 155
Если А и В увеличить на 1, то сумма увеличится на 2.
Мы можем выразить это условие схемой классификационного
типа, как показано на рис* 10.5, Знаком V в этой схеме
изображен выпрямитель или диод, который пропускает элек-
трический ток только в одном направлении, в направлении
>Л11Ю
ф ф
$2
S4
S8
Ф
Рис. 10.5.
своего острия. В итоге мы можем получить выходной сигнал
(сумму двух десятичных цифр) при помощи 44 переключаю-
щих контактов, указанных в табл. 10.11.
Число контактов (44) можно, вероятно, немножко сокра-
тить, если еще поработать над логическим построением
156 Глава 10
Таблица ЮЛ
Выход Требуемое число
переключающих контактов
S\ 2
С\ 14
S2, S4, SS 28
~44~
схем десятичного сложения. Но и 44 контакта все же значи-
тельно меньше, чем 121 контакт, которые требовались
в первой схеме (рис. 10.1).
Г Л А ВАМ
БОЛЬШИЕ ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ.
ПРОБЛЕМЫ ХРАНЕНИЯ, ПЕРЕДАЧИ И ОРГАНИЗАЦИИ
1. Другие задачи для вычислительных схем
Помимо сложения двух десятичных цифр, схемы вычисли-
тельных машин решают, конечно, много других задач.
Рассмотрим некоторые из них. Чтобы получить ясное пред-
ставление о принципах, обратимся к более простым приме-
рам с чисто двоичными, а не с десятичными цифрами. Табли-
ца сложения для двоичной системы счисления имеет вид
Таблица умножения для двоичной системы имеет вид
0
0
1
1
1
10
X
0
1
0
0
0
1
0
1
Ввиду необыкновенной простоты этих таблиц не удивитель-
но, что многие автоматические вычислительные машины
были спроектированы для работы в чисто двоичной системе
счисления.
Теперь мы рассмотрим прежде всего вопросы, являющие-
ся основными для любой автоматической цифровой вычисли-
тельной машины: каким образом мы будем хранить числа?
как производить автоматически последовательные опера-
ции?
158
Глава И
2. Организация автоматической вычислительной машины
Хорошее представление о работе автоматической вычи-
слительной машины дает сравнение с изолированной теле-
графной системой, имеющей ряд сообщающихся станций
и оборудование регулирования^ передач между ними. Сооб-
щения, пропускаемые этой телеграфной системой, являются
обычно порциями информации стандартной длины со стан-
дартным числом цифр.
Одна из станций называется «ВХОД». Здесь информа-
ция из внешнего мира поступает в телеграфную систему;
на входной станции информация преобразуется в такую
форму, чтобы ее можно было послать в другую часть системы.
Входные сообщения могут поступать, например, в виде
перфорированной бумажной ленты; отверстия в ленте
передают определенную информацию, которую прочитывает
аппарат, называемый трансмиттером, и которая превращает-
ся в электрические сигналы, принимаемые телеграфной
системой.
Другая станция называется ВЫХОД. Здесь информа-
ция, преобразованная и переданная телеграфной системой,
выдается опять внешнему миру. На выходе может быть,
например, электрический печатающий аппарат, который
под воздействием импульсных сигналов телеграфной систе-
мы печатает определенные цифры.
В системе имеется большая группа станций, называемых
НАКОПИТЕЛЬ № 1, НАКОПИТЕЛЬ № 2, НАКО-
ПИТЕЛЬ № 3 и т. д. В этих станциях информация может
сохраняться, не претерпевая никаких изменений, в ожида-
нии момента, когда какая-нибудь другая часть системы
потребует информацию в надлежащее время, чтобы сделать
с ней еще что-нибудь.
Весьма важной станцией системы с платформами для
разных поступающих порций информации является ВЫ-
ЧИСЛИТЕЛЬНОЕ, или АРИФМЕТИЧЕСКОЕ, УСТРОЙ-
СТВО. Эту станцию можно мысленно представить себе так,
как будто она соединена с заводом — вычислительной схе-
мой, которая может получать несколько порций информации
и изготовлять из них новые порции информации.
Арифметическое устройство, или вычислительная схема,
может иметь, например, четыре платформы. На две плат-
Большие вычислительные машины .Проблемы хранения и организ. 169
формы схема принимает два числа, скажем 1101 и 111.
На третью платформу схема принимает оперативную коман-
ду «вычесть» (или «умножить», или «найти, какое из двух
чисел больше», и т. д,). На четвертую платформу схема
выдает результат: при команде «вычесть»—число ПО, ре-
зультат соединения чисел 1101 и 111 в соответствии с ко-
мандой «вычесть второе число из первого».
Все эти станции соединяет телеграфная магистраль,
или ШИНА, состоящая из проводов — по одному проводу
для каждого двоичного разряда, которые одновременно
передаются по системе. Если автоматическая вычислитель-
ная машина передает сразу десять десятичных разрядов,
причем каждая из них выражается четырьмя двоичными
разрядами, то шина будет иметь сорок проводов или линий
(сорокалинейная шина).
Чтобы эта телеграфная .система выполняла полезную
работу, необходимо установить какие-то способы органи-
зации (регулирования) движения по ней. Это входит в
обязанности УСТРОЙСТВА УПРАВЛЕНИЯ. Наиболее
автоматизированный способ посылать информацию по си-
стеме заключается в следующем:
1) В данный момент присоединить к шине две телеграф-
ные станции,-например Чикаго и Денвер.
2) Указать направление движения, например «от Ден-
вера в Чикаго».
Затем, как только произведены надлежащие соединения,
посылают сигнал «готово», и- информация из Денвера будет
передана автоматически в Чикаго,
3. Конкретный пример организации
Предположим, что мы начертили схему простейшей
телеграфной системы, рассматриваемой в нашем примере.
Обращаясь к рис. 11.1, замечаем четыре станции с названия-
ми «Атланта», «Бостон», «Чикаго», «Денвер»» Атланта
представлена двумя реле: S1 (2) и S1 (1), образующими регистр
хранения данных № 1. Sl(2) содержит второй двоичный раз-
ряд или разряд двоек; 51(1) содержит первый двоичный раз-
ряд, или разряд единиц. Бостон представлен регистром
хранения №2с двумя реле: S2(2) и 52(1). Чикаго пред-
ставлен регистром хранения № 3 с двумя реле: S3(2)
160
Глава 11
и S3(l); и Денвер представлен регистром хранения № 4
с двумя реле S4(2) и S4(l). Соединительная телеграфная
подвод тока
TS*
Ион тан ты выбора
передающего регистра
Контакты
считывания
Шина
Контакты
входных реле
Блокирующие
контакты
sum Г!
Sm)SI(l) S2(2) SZ(I) S3(2) S3(!) S4(2)SW I
Атланта Бостон Чикаго Денвер "=$•
Реле хранений
Схема а
2-я линия
1-я линия
Блокирующее
п реле
тг
о-
ТП
тз
рГ2г
Р2
I
Реле выбора
передающего
регистра
Схема б
СП.
U XI
Q2 Ql J,
/ О "
Реле выбора
приемного
регистра
Схема в
Et Е2ЕЗ S1
Приемные "="
реле
Схема е
Рис. 11.1.
магистраль, или шина, состоит из двух линий: линии единиц
и линии двоек — по одной линии для каждой из двух двоич-
ных цифр. В каждом из этих четырех регистров может хра-
ниться информация 00, 01, 10 и 11, в зависимости от того,
возбуждено ли реле двоек или реле единиц (хранится 1)
или не возбуждено (хранится 0). Четыре регистра, очевидно,
сами имеют коды 00, 01, 10 и 11, выраженные положениями
реле выбора передающего регистра (реле Р) и реле выбора
приемного регистра (реле Q).
Как же все это работает?
Большие вычислительные машины. Проблемы хранения и организ. 161
Пусть Денвер хранит информацию 01 и мы хотим
передать эту информацию в Чикаго. Это значит, что
регистр хранения №4 хранит 01, т. е. 4то реле 54(2) не воз-
буждено (содержит 0), а реле S4(l) возбуждено (содержит
1). Следовательно, блокирующий контакт в S4(l) замкнут
и контакт считывания в S4(l) замкнут, а в S4(2); содер-
жащем 0, оба эти контакта разомкнуты.
Код передающего регистра S4 есть 11; следовательно,
реле Р2 и Р1 (схема б) возбуждены, и их контакты (контак-
ты реле выбора передающего регистра на схеме а) замкнуты.
Код приемного регистра 53 есть 10, и, следовательно,
реле выбора приемного регистра Q2 возбуждено, а реле Q1
не возбуждено. Под действием схемы г возбуждается лишь
реле £3, замыкая два контакта входного реле ЕЪ (схема а).
На схеме а мы видим, что ток идет от источника Тока ТЪ
через контактную схему регистра передачи и выбора, через
контакты считывания S4 на шину, через контакт входного
реле £3 в обмотки реле S3, причем реле S3(l) принимает
сигнал и возбуждается, а реле 53(2) не возбуждается. Таким
образом информация 01 передается от регистра хранения S4
в регистр хранения S3.
4. Синхронизация
Очевидно, нам нужно тщательно соблюдать синхрониза-
цию этих схем. Пять зажимов П, Т2, ГЗ, ТА и 75 снабжают
током реле согласно графику синхронизации, представлен-
ному на рис, 11.2.
Рассмотрим момент 1. В этот момент ток, текущий от Т\
на землю, проходит через любые замкнутые блокирующие
контакты и обмотки определенных реле регистра хранения
(S), и в частности S4(l), так как регистр хранения № 4 от
предыдущей операции хранит 01; через обмотку реле 54(1)
проходит теперь постоянный ток, идущий от зажима Т\
на землю.
Переходим к моменту 2 и рассмотрим зажим Т2.
В момент 2 реле выбора Р ПЕРЕДАЮЩЕГО РЕГИСТРА
возбуждены согласно коду 11, реализованному контактами,
которые мы никак не обозначили. Этот код был установлен
в предыдущей операции программой вычислительной маши-
162
Глава 11
ны. Программа требует выбрать передающий регистр, соот-
ветствующий коду 11.
Теперь перейдем к моменту 3 и рассмотрим зажим ТЗ.
Мы видим, что реле выбора Q1 и Q2 ПРИЕМНОГО РЕГИ-
СТРА реализуют код 10. Этот код также реализуется безы-
мянными контактами, которые (по программе вычислитель-
Сиъналы Воэбуж-
сконтак- денные Время
товреле реле Схема Зажим I 2 3 4 S
?3г- *
S а г/ tzzz&zzzzzzzzzzzzzzzzzzzzm
7777771
р б TZ у»;;;»;;;;;;»»>Щ
bzzm
й 9 ТЗ Умим/%
q S г Т4 шгшгщшп
p,s,£ $ a TS имммл
Рис. 11.2.
ной машины) в этот момент передают код 10, соответствую-
щий регистру хранения № 3.
Переходя к моменту 4 и рассматривая зажим Г4, мы
видим по положениям контактов Q в схеме г, что входное
реле £3 (и только оно одно) возбуждено. Мы соединили,
таким образом, обмотки регистра S3 через контакты £3
с шиной, и, следовательно, сигнал от шины может принимать
лишь S3.
5. Передача информации
Мы закончили все подготовительные действия, необ-
ходимые для передачи информации от регистра S4 регистру
S3. Теперь переходим к моменту 5. Мы видим, что импульс
тока от зажима ТЬ распространяется по следующему пути:
1) через схему выбора, которая выбирает передающий
регистр S4;
2) через контакты считывания передающего регистра S4;
3) через выпрямители (которые не пропускают обрат-
ный ток);
Большие вычислительные машины. Проблемы хранения и органиэ. 163
4) через шину;
5) через контакты входного реле, принадлежащие при-
емному регистру S3;
6) в обмотки приемного регистра S3 (конечно, возбуж-
дено лишь реле единиц S3);
7) на землю.
6. Схема является общей
Мы привели пример, поясняющий принципы передачи
информации от одного регистра к другому. Схема являет-
ся совершенно общей; информация, «записанная» в одном
регистре, «списывается» в другой регистр.
А повторение инструкций вида
«Из регистра... в регистр...»,
где два пустых места заполняются названиями регистров,
является достаточным (с некоторыми приспособлениями,
обеспечивающими, например, переход от одной программы
к другой) для выполнения программы автоматического вы-
числения почти неограниченной сложности.
ГЛАВА 12
БОЛЬШИЕ ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ. СЛОЖЕНИЕ,
ВЫЧИТАНИЕ. УМНОЖЕНИЕ И ДЕЛЕНИЕ ДВОИЧНЫХ ЧИСЕЛ
1. Сложение двух четырехразрядных двоичных чисел
При проектировании больших вычислительных машин
возникают и другие задачи, например такие: 1) обработка
чисел, имеющих больше одного разряда, и 2) перенос из одно-
го разряда в следующий разряд. Для иллюстрации этих задач
и их решений рассмотрим схемы, осуществляющие сложение
двух двоичных чисел, каждое из которых имеет четыре
двоичные разряда.
Сложение в двоичной системе определяется таблицей
двоичного сложения:
+ 0 1'
0 1
1 10
Например, сложим двоичное число 1101 (равное восьми
плюс четыре плюс один, или тринадцати) и двоичное число
1011 (равное восьми плюс два плюс один, или одиннадцати):
1101
+ 1011
11000
В результате получается 11000 (это равно шестнадцати плюс
восемь, или двадцати четырем). Мы можем получить этот
ответ следующим «школьным» способом: (столбец 1 справа) 1
и 1 дают 10, пишем 0 и переносим 1; (столбец 2) 0 и 1 будут 1,
и 1 в уме будет 10, пишем 0 и переносим 1; (столбец 3)
1 и 0 будет 1, и 1 в уме будет 10, пишем 0 и переносим 1;
(столбец 4) 1 и 1 будет 10, и 1 в уме будет И, пишем 1 и
переносим 1; (столбец 5) пишем перенесенную 1.
Большие вычислительные машины. Операции над двоич. числами 165
2. Уравнения булевой алгебры для двоичного сложения
Имея в виду этот пример, рассмотрим, с помощью каких
булевых уравнений мы будем производить сложение; затем
эти уравнения непосредственно укажут на структуру схемы,
выполняющей сложение.
Пусть требуется сложить два двоичных числа А ц 5,
каждое из четырех двоичных разрядов. Пусть Л4, А$9 А2
Время \Л4 [A3 \а2 [А!
*>г*з и. К* L К*
ИИ
А4 AZ А2 А/,
I I О 1 '
Регистр J-го слагаемого
77
о—
р5 Ш Ш 1*/
U
В4 ВЗ
I о
(о
вг
/
Регистр 2-го слагаемого
Риб 12.1.
и А\ — четыре разряда первого числа, считая слева напра-
во; это число мы можем назвать первым слагаемым. Пусть
54, ВЗ, 52 и 51 — четыре разряда второго числа, которое
нужно прибавить к первому; назовем его вторым слагае-
мым. Каждое.из этих двух чисел будет храниться в регистре,
состоящем из четырех реле. Если реле возбуждено, та будем
считать, что оно содержит двоичную цифру 1; если реле
не возбуждено, то будем считать, что оно содержит двоич-
ную цифру 0. В некоторый предыдущий момент эти реле
были возбуждены или спокойны, а в момент, когда мы начи-
наем рассмотрение цепи, ток от зажима Т\ через блокирую-
щие контакты реле держит их в возбужденном или спокой-
ном состоянии в течение всего времени действия последних
166 Глава 12
цепей (рис. 12.1). Обозначим сумму этих двух чисел через S,
а t-ю цифру числа S — через Siy считая справа налево.
Пусть С{ будет цифрой переноса, которую нужно прибавить
к столбцу i и которая получается после сложения столб-
ца 1—1.
Как спроектировать схему, которая будет выдавать нам
сумму S, представленную пятью реле (а иногда четырьмя
реле), от S5 до S1?
Условия для Si и Ci выражает полностью табл. 12.1
(исключая случай сложения первых столбцов двух двоич-
ных чисел).
Таблица 12 J
Ci
0
0
0
0
1
1
1
1
Ai
0
0
1
1
0
0
1
1
Bi
0
1
0
1
0
1
0
1
В табл. 12.2 даны условия для первого столбца (i рав-
но 1).
Таблица 12.2
Al Bl С2 S1
0 0 0 0
0 10 1
10 0 1
1110
По этим таблицам мы можем записать булевы уравнения:
S^Ai-BivA't-B»
Si**Ci(Ai-Bl V Ai-Bi) VCiMi-Bi- V А\-В\).
Большие вычислительные машины. Операции над двоич. числами 167
Переносимую цифру можно выразить через цифры более
низких разрядов следующим образом:
-A-.BtViAi-B'iVA'rB.).
Hi-r^i-i V {A^-Bi-i V 4J-i BM) •
3. Схемы двоичного сложения
Руководствуясь этими уравнениями, мы можем начертить
сразу же и непосредственно соответствующие схемы. Схема
TZ
Врвмя
?А4 \ЛЗ \
^В4 ^4-ВЗ |
ч
*с
,вг
р I—J
£5 « £7
/ / /
Регистр переноса
Рис. 12.2.
на рис. 12.2 выражает последовательность уравнений для
цифры переноса С{+1. Схема на рис. 12.3 выражает уравнение
для цифры суммы St.
Как работают эти схемы? Рассматривая их, мы видим,
что реле А и В должны быть возбуждены достаточно долго,
чтобы возбудить реле С, и, кроме того, достаточно долго,
чтобы ток прошел через контакты реде А, 5 и С и возбудил
168
Глава 12
реле S. Следовательно, временная диаграмма будет иметь
примерно такой вид:
Зажим Момент времени: 1 2 3
71 V V V
72 — V V
73 — — V
В момент 1 зажим 71 находится под током и состояние
реле А в регистре первого слагаемого и состояние реле В
Регистр суммы
Рис. 12.3.
в регистре второго слагаемого соответствуют двум склады-
ваемым числам А и В, Положение контактов тех реле, обмот-
ки которых возбуждены, изображены пунктиром. Такое
изображение позволяет показать переход этих контактов
из замкнутого положения (при обесточенном состоянии
обмотки) в разомкнутое положение (при возбуждении
обмотки).
В момент 2 зажим Г2 получает ток. Положения контак-
тов Л и В в цепи регистра переноса показывают, что в дан-
ном случае ток может проходить по цепочке. Поэтому при
сложении указанных чисел все четыре реле переноса воз*
буждаются.
В момент 3 получает ток зажим ГЗ и ток течет через
контакты реле Л, В и С. Следовательно, реле S возбуждают-
ся в соответствии с кодом 1, 1, 0, 0', 0, как и должно быть.
Большие вычислительные машины. Операции над двоич. числами 169
4. Усовершенствование схем
Можно ли усовершенствовать эти схемы, и если можно,
то как?
Прежде всего мы можем несколько улучшить схему
на рис. 12.3 и сократить число контактов на реле Л2, A3
'У
Рис. 12.4. Другая схема регистра суммы.
и АА наполовину с помощью преобразований, показанных
на рис. 12.4. С такими случаями в булевой алгебре встре-
чаются довольно часто: выра-
жение булевой алгебры можно • ■ т
упростить, воспользовавшись ■*
особыми свойствами двухпо-
зиционных схемных элемен-
тов, даже если это выражение
трудно или невозможно упро-
стить при помощи обычных,
натуральных символических
формул алгебры. Второй при-
мер представлен на рис. 12.5.
Эта схема выражает булеву*
функцию R='ad\jacey bcd\/Ье\ из приведенного алгебраи-
ческого выражения вовсе не следует, что R можно выразить
схемой только с одним контактом для каждой переменной.
i
К
(£*
Рис. 12.5.
170
Глава 12
Второе упрощение, которое мы можем сделать, если
желаем сэкономить время, это замена См и С\ схемами,
в которых используются контакты реле А и В. Мы можем
определить С'% следующим образом:
c;=x(v*x)'=4vfl;.
Тогда CJ+i определится так:*
С{+, - [Ai-BiV CiiAi-BiV Ai-Bj}' =
-[Ai-BiY-lCiiAi-BlV Ai-BJY-
-Mi V Bl)*[C'i V (ArB[ V Ai-Bi)']-
-(Ai V «MC{ V (Л«-В« V ilJ.B;)]-
-MJ.BiVili-BiV^i-BiXCiV^i-Br^-Bi)-
-^•BiVCJMivBi)-
-^-bjvcjhi.^vV*')-
Следовательно, мы можем реализовать функции Сг
и Ci+i посредствомсхемы, которую можно назвать схемой
переноса нуля. Она изображена на рис. 12.6. Тогда регистр
суммы можно представить только с помощью контактов
реле Л и В, как показано на рис. 12.7.
5. Вычитание двух четырехразрядных двоичных чисел
Предположим, что мы хотим вычесть четырехразрядное
двоичное число из другого четырехразрядного числа. Вспом-
ним, что у нас уже есть схема сложения, и будем считать,
что мы можем свести процесс вычитания к прибавлению
отрицательного числа. Этот способ возможен, и он оказы-
вается эффективным: мы можем воспользоваться дополне-
нием числа и прибавить его.
Дополнение числа в десятичной системе отыскивается
по правилу: вычесть каждую цифру этого числа из 9 и при-
бавить к результату единицу. Таким образом, чтобы произ-
вести вычитание при помощи дополнения, мы прибавляем
дополнение и отбрасываем лишнюю единицу слева. Напри-
А2
вг
G5
О
Ш1т
2. £ %
G4 G3 GZl,
0 0 0*
В1
Рис. 12.6. Схема переноса нуля
о й Й
\.М
S5 S4
/ /
^_
S3 S2
О О
г
Рис. 12.7. Регистр суммы.
172
Глава 12
мер, пусть мы хотим вычесть 746 из 88 965. Мы рассматри-
ваем 746 как 00 746; его дополнение равно 99 253.плюс 1,
или 99 254. Далее, чтобы вычесть 746, мы прибавляем
99 254 и отбрасываем цифру 1 слева, вот так:
88965 88965
-746 + 99254
88219 1 88219—> 88219
Однако в вычислительных машинах прибавление 1,
вследствие которого 99 253 переходит в 99 254, неудобно; по-
этому мы используем так называемое дополнение до девяток
(аналог числа 99 253) и затем применяем так называемый
круговой перенос, исключая единицу в крайнем левом столбце
и прибавляя единицу в крайнем правом столбце:
88965
+ 99253
1| 88218
88219
Очевидно, мы проделываем следующее:
-746 = - 99999+(99999—00746) =
= — 99999+99253 =
= -100000+99253+1.
В двоичной системе счисления аналогом дополнения до девя-
ток является дополнение до единиц. Дополнение до единиц
двоичного числа получается путем превращения каждой
цифры 0 в 1 и каждой цифры 1 в 0.
Возьмем пример: вычесть 101 из 1110. Во-первых, пре-
вратим 101 в 0101. Дополнение 01Щ до единиц есть 1010.
Прибавим дополнение до единиц 1010 к 1110 и сделаем
Большие вычислительные машины. Операции над двоич.числами 173
круговой перенос:
1110
+ 1010
ГП looo
1—1
1001
Правильно ли это? 1110 равно 8 плюс 4 плюс 2, или 14;
0101 есть 4 плюс 1, или 5; 1001 есть 8 плюс 1, или 9,14 минус 5
равно 9. Следовательно, пример правильный.
Итак, чтобы включить операцию вычитания в автомати-
ческую вычислительную машину, мы можем заменить вычи-
тание прибавлением дополнения.
6. Схемы для двоичного вычитания
На рис. 12.8 приведен набор схем, выполняющих двоич-
ное вычитание. Рассмотрим, как они работают.
Уменьшаемое хранится в регистре /, как показано
на рис. 12.8, а.
Контакты «/4-1, /3-1, 72-1, /1-1 являются блокирующи-
ми и блокируют реле в возбужденном состоянии для сохра-
нения информации, которую, возможно, содержит регистр /.
Когда мы хотим передать на шины информацию, хранимую
в этом регистре, мы считываем информацию посредством
контактов /4-2, /3-2, /2-2 и /1-2.
Вычитаемое хранится в регистре /С, изображенном на
рис. 12.8,6. Нормально разомкнутые контакты JC4-1,
КВ-1, /С2-1 и /fl-I являются блокирующими и блокируют
реле в возбужденном состоянии для сохранения информа-
ции, в которой выражено вычитаемое. Нормально замкну-
тые контакты этих реле обеспечивают дополнение до единиц
двоичного числа, хранимого в этом регистре. Обозначим
информацию, содержащуюся в этих четырех линиях, через
Z,4, L3, L2 и LI; L, очевидно, равно дополнению К до единиц.
Схема сложения, рассмотренная в предыдущем парагра-
фе, изображена на рис. 12.8, в в виде блока, представляюще-
J JA -Г \/3-t \/2-t \jH
M J3 J2 Л±
Регистр уменьшаемого
\ M-2 I J3-2 I J2-2 \jh2
n h и н •
' ' ' ' Регистр вычитаемого и конто\
Контакты считывания уменьшаемого дополнения еычитоемого до еда
Схема о Схемо 6
\К*Ч IK3-I \x2-f \КН
4
L4
L3
К3\ К2
LZ
К1
U
Схема сложения: соответствующие цепи
контактов первом слагаемого (реле А) и
контоктоо второго слагаемого (реле В)
<? <? <? 4 j£~
55 S4 \SJ S2 S/ X
Реле суммы
Схема в
Контакты J
Конто кты I \
Контокты S
Контакты Z
Х- а д II
п
Реле А
п. _!п.
Реле В
Реле Z 1
Схема г
Рис. 12.8,
Большие вычислительные машины. Операции над двоич. числами 175
го собой контактную схему из контактов реле первого сла-
гаемого (или реле А) и второго слагаемого (или реле В),
которые вызывают возбуждение реле суммы S.
На рис. 12.8, г показана шина (которая в действительно-
сти состоит не из одной линии, а из четырех) и переключаю-
щая схема, посредством которой можно по выбору подклю-
чать к шине считывающие контакты и воспринимающие
обмотки реле регистров. Тогда вычитание можно произвести
на основе следующей последовательности операций:
1) Считать код с контактов считывания J и передать
через шину в реле Л.
2) Считать код с проводов L и передать через шину
в реле В.
3) Считать код с контактов S и передать через шину
в реле Z, где Z — регистр хранения (обладающий одним
свойством, описанным в следующих двух пунктах), в кото-
ром может храниться число, пока схема сложения приводит-
ся в начальное положение для приема новой информации.
4) Считать код с контактов считывания Z и передать
через шину в реле Л, НО соединить с шиной лишь Z4, Z3,
Z2 и Z1.
5) Считать код с контакта считывания Z5 и передать
через линию единиц шины в реле В\ (круговой перенос).
6) Считать код с контактов считывания S и передать
через шину туда, где вы хотите поместить результат вычи-
тания.
Здесь мы можем сказать: «Глупо иметь дело с автомати-
ческой вычислительной машиной, которая способна обра-
батывать только положительные числа. Машина должна
уметь обрабатывать как положительные, так и отрицатель-
ные числа. Как это сделать?»
Хорошее решение, хотя и не единственное, состоит в сле-
дующем: нужно условиться, что крайний левый разряд
числа будет предназначен jumib для указания знака числа,
положительного или отрицательного. В случае двоичной
системы можно установить правило: если крайняя левая
цифра 0, то остальные цифры составляют положительное
число, а если крайняя левая цифра 1, то остальные цифры
составляют отрицательное число. Нам нужно приспособить
наши схемы сумматора к сложению двух чисел, которые
могут быть оба положительными или оба отрицательными
176 Глава 12
или одно — положительным, а другое — отрицательным.
Нам нужно также предусмотреть в схеме сумматора сигнал
тревоги (или что-либо иное), если результат сложения выхо-
дит за пределы возможностей машины (подобно тому, как
обычная настольная счетная машина дает звонок, если ре-
зультат операции переполняет машину).
Наконец, третье, что нам нужно установить в нашей
вычислительной машине — это местоположение двоичной
запятой. С этим сталкиваются при сложении, например,
11,01 и 111,0. Однако эти задачи решить нетрудно. Поэтому
мы не будем на них останавливаться и сразу перейдем
к следующему основному процессу — умножению.
7. Умножение двух четырехразрядных двоичных чисел
В двоичной системе таблица умножения имеет про-
стой вид:
о о
о 1
или, другими словами, 0 на 0 будет 0, 0 на 1 будет 0 и 1 на I
будет 1. Таким образом, умножение состоит в том, что число
прибавляют или не прибавляют и сдвигают результат.
Трудно представить себе более легкую таблицу умножения.
Например, умножим два двоичных числа 1101 и 1011:
1101
X юн
1101
11Q1
0000
U01
10001111
Результат будет равен 10001111, а это есть единица,
умноженная на 128, плюс нуль, умноженный на 64, плюс
нуль, умноженный на 32, плюс нуль, умноженный на 16,
Большие вычислительны* машины. Операции над двоич. числами 177
плюс единица, умноженная на 8, плюс единица, умножен-
ная на 4, плюс единица, умноженная на 2, плюс единица,
умноженная на единицу, или 143; это число мы, конечно,
должны получить и при обычном десятичном умножении
тринадцати (т. е. 1101) на одиннадцать (т. е. 1011).
На рис. 12.9а — 12.9з представлена совокупность схем,
производящих умножение. Эти схемы реализуют следующую
общую процедуру: берут кратное множимого: 1101 или 0000
в соответствии с последовательными цифрами множителя,
считая справа налево: 1, 1,0, 1; сдвигают эти кратные соот-
ветственно влево; проверяют их соответствие последова-
тельным положениям цифр множителя; наконец, исполь-
зуя сумматор и регистр хранения, складывают последова-
тельно сдвинутые кратные. Этот процесс представлен
в табл. 12.3; здесь промежуточные результаты приведены
в той последовательности, в которой их получают.
Таблица 12.3
Промежуточная сумма 0000 0000
1-е кратное 0000 1101
Новая промежуточная сумма 000О 1101
2-е кратное 0001 1010
Новая промежуточная сумма 0010 0111
3-е кратное 0000 0000
Новая промежуточная сумма 0010 0111
4-е кратное ОНО 1000
Окончательная сумма 1000 1111
Разберем теперь подробно части общей схемы умножения
В 1-й и 2-й частях схемы хранятся множимое и множитель.
В 4-и части схемы нам удается заставить реле С\ указывать
в последовательные моменты последовательные цифры
множителя справа налево: 1, 1, 0, 1. Это необходимо
для того, чтобы мы могли вубрать надлежащее кратное
множимого: 1101, если цифра множителя 1, и 0000, если
цифра множителя 0. Это сделано потому, что в 3-й части
схемы реле К возбуждаются по коду 00, 01, 10 и П.
В 5-й части выбирается кратное множимого. Эта схема
дает последовательные числа 1101, 1101, 0000 и 1101.
г/
I- к |& к ° к к к I*
<р у ф <? , 4
/w /»j яг я/ J. «
Рис. 12.9а. Регистр множимого. Рис. 12.96. Регистр множителе
Т4
о—
Рис. 12.9в. Регистр
счета цифр множителя.
'о Ч* f
j ?
о
I
/
/
о
I
Рис. 12.9г. Регистр выбора
кратного.
/
О
1
? у у у.
/М ДТ/ИДт!"
/ / 0 /
I I О I
ОООО
IIOI
Рис. 12.9д. Регистр кратного.
8L
-► к-
i
<е_$ £
57
0
I
T7.I
£6.
0
0
0
I
£5
0
1
0
0
I
£4
1
1
0
I
£3
1
0
0
0
Контакты K1
Контакты К2
{Контакты KZ
Рис. 12.9е. Регистр сдвига.
Н8 Н7 •> Н6 Н5Н4НЗН2HI ±.
оооооооо-
0 0 0 0 110 1
0 0 10 0 1 1 /•
0 0 10 0 111
10 0 0 1111
Р и!с. 12.9ж. Схема сложения.
Г8.1
о—
\н8 \ Н7
Н7 Н6 HS Н4 НЗ Н2 HI
U/tf 1 l/7\ ljS\ I/SI 1/41 l/3i IjA lj?
<Li
78.2
-o
Ф Ф Ф Ф
18
0
0
0
0
1
J7
0
0
0
0
0
J6
0
0
1
1
0
JS
0
0
0
0
0
J4
0
1
0
0
1
J3
D
1
1
1
1
JZ
0
0
1
/
/
/'
0
1
1
/
/
Рис. 12.9з. Регистр промежуточной суммы
1Й0
Глава J 2
Используются такие контакты: контакт реле С и четыре
контакта реле А\ кратное записывается в реле D\
В 6-й части выбранное кратное, записанное в реле D,
сдвигается на 0, 1, 2 или 3 разряда влево в соответствии
с положением цифры множителя, причем используется
опять реле К (см. описание 3-й части). Таким образом* реле Е
выдает числа
000 1101,
001 1010,
0С0 0000,
110 1000.
В 7-й части (рис. 12.9 ж) схема сложения показана лишь
в виде блок-схемы, поскольку она была полностью разобра-
на в этой главе раньше. Регистр хранения данных (8-я часть
схемы) (рис. 12.9 з) нужен для передачи результата, полу-
чающегося на выходе схемы сложения, обратно на один
из ее входов. При тшощи этих двух схем сдвинутые кратные
складываются одно за другим (как показано в последова-
тельных сложениях в табл. 12.3).
Однако для правильной работы этих схем решающее
значение имеет их синхронизация.
Синхронизация схем показана на графике синхрониза-
ции (см. рис. 12Л0). Эта временная диаграмма содержит
большое количество ценных сведений.
Последовательные промежутки времени перенумерова-
ны (1, 2, 3, 4 и т. д. до 24) и изображены слева направо
в столбцах таблицы с соответствующими номерами. В стро-
ках таблицы сверху вниз указаны двенадцать различных
зажимов и реле от А до /, которым они дают ток.
Толстая горизонтальная линия против каждого зажима
начинается в момент, когда через зажим идет ток от источни-
ка тока, и заканчивается, когда ток через этот зажим пре-
кратится. Например, через зажим 74 проходит ток в момен-
ты 2, 3, 7, 8, 12, 13, 17, 18 и ни в какие другие моменты.
Отрезки горизонтальных линий соединены вертикальны-
ми линиями с отметками ХиО. Эти вертикальные линии
и отметки выражают функциональную связь схем. Знаком X
отмечены реле, возбужденные в данный момент; знаком О—
уже установившиеся в своих кр&йних положениях кон-
такты, через которые возбуждаются упомянутые реле.
Время
Рели Схема Зажим 1 2 3 4 5 6 7 В 9 Ю 11 П 13 14 15 16 17 18 19 20 Z1 22 23 2+
А
Ь
К1
/<2
Л 1,2
С
D
£
И
И
J
J
1
2
3
3
3
4
5
6
7
7
8
9
Tl
тг
Г3.1
Г3.2
Г3.3
Т4
Т5
Т6
T7J
Т7.2
Т8.1
Т8.2
* ф
* ф
* ф
It
"Т.
1т:
ft
■Ч-.
Рис. 12.10.
182
Г лова 12
Например, в момент 8 реле D возбуждены током от зажима
Т5 через контакты реле А и реле С и, кроме того, реле /
остаются возбужденными током от зажима Т8.2 через
блокирующие контакты реле J.
Следует вновь заметить, что существует много способов
упрощения и усовершенствования схем на рис. 12.9а —
12.9з. Например, части схемы на рис. 12.9г — 12.9е
можно было бы объединить и исключить реле Си D. Но полу-
чающуюся в результате схему было бы труднее объяснить
и понять, чем изображенные здесь отдельные схемы.
8. Деление двоичных восьмиразрядных чисел
на двоичное четырехразрядное число
Почти всегда бывает легче начать с примера и затем
перейти к общему правилу. Поэтому при разборе деления
начнем, как обычно, с примера и рассмотрим деление числа
10000101 (133 в десятичной системе) на 1101 (13 в десятич-
ной системе). Мы производим деление в двоичной системе
по такому же общему правилу, как и в десятичной системе,
но поступаем так, как будто нам известны только две цифры:
1 и 0.
Вот как производит
Делимое
1-й делитель
2-й промежуточный остаток
2-й делитель
3-й промежуточный остаток
3-й делитель
4-й промежуточный остаток
4-й делитель
5-й промежуточный остаток
5-й делитель
Остаток
Мы сразу же обращаем внимание на то, что применяются
лишь два кратных делителя: делитель, взятый один раз,
т. е. тот же делитель, и делитель,.взятый нуль рая, п кото-
деление:
10000101.
0000
Тоооо
1101
"оГи
0000
~йю
1101
0011
0000
"Til
1 1101
01010
Делитель
Частное
Большие вычислительные машины. Операции над двоич. числами 183
ром, очевидно, все цифры нули. Никаких других кратных
делителя не нужно. Сравнивая делители с промежуточным
остатком в какой-нибудь момент деления, мы можем опре-
делить, какую цифру нужно написать в частном: 1 или 0.
Деление сводится к тому, что число вычитают или не вычи-
тают и сдвигают результат. Что может быть легче?
Для упрощения схем мы опять не будем рассматривать
некоторые тонкости, а именно дроби, двоичную запятую
(играющую в двоичной системе такую же роль, какую запя-
тая играет в десятичной системе), положительные и отри-
цательные числа, абсолютную величину чисел и т. д,( так
как здесь мы стремимся пояснить основы применения от
логики рассуждений «да — нет» к арифметическому делению.
Схема изображена на рис. 12.11а — 12.11и. Разберем ее
по частям.
В первой части схемы зажим Г1 получает ток в началь-
ный момент рассматриваемого интервала и удерживает
в возбужденном состоянии реле, запоминающие делимое
с помощью своих контактов. Какое именно двоичное число
запоминают эти реле, конечно, зависит от событий, которые
произошли до рассматриваемого момента. Таким же образом
во 2-й части схемы реле, получающие питание от зажима Т2,
запоминают делитель.
На разных шагах процесса деления состояние схемы
будет различным. Поэтому нужны какие-то реле, которые
указывали бы, какой шаг процесса осуществляется в дан-
ный момент. Эту роль выполняют реле К 3-й части схемы.
Они распознают и указывают шаги 0, 1, 2, 3 и 4, соответ-
ствующие первому, второму, третьему, четвертому и пято-
му вычитанию делителя из текущего промежуточного остат-
ка. Текущий промежуточный остаток (см. рис. 12. Иг)
вначале состоит из четырех левых разрядов делимого;
на последующих же шагах он состоит из результата вычита-
ния и еще одного снесенного разряда делимого. Схема на
рис. 12. Иг устроена так, что на каждом шаге деления мы
получаем промежуточный остаток, который нужно запом-
нить с помощью реле Е. Конечно, следует интересоваться
прежде всего схемой на рис. 12.lie, в которой получается
результат вычитания; пока же примем на веру, что реле G,
которые возбуждены, выдадут через свои контакты (входя-
щие в схему на рис. 12.11г) нужные результаты вычитания.
тг
У
И-1 l«-i 1«-| I*-] !«-] T*-i 1^-|
IQ \Q (Q \Q Ф Ф Ф
D8 D7 DS DS Л V3 DZ 2?ГХ
/0000101'
Рис. 12.Па. Регистр делимого.
ТЗА ГЗ.З Т3.2 Т3.1
\м \аз \а2 \а/ <р <Ь (£
1_Щ |—
о I
', ч
о о
Р и> 12.116. Регистр делителя. рис |2.11в. Схема счета
цифр частного.
АН A3 А
ГТ*-
рис 12. Иг Регистр текущего промежуточного остатке.
Блокирующие*-**
контакты /~J
Рис 12. И д. Схе-
ма определения
цифр частного.
Рис. 12.Не. Регистр частного.
•л
т
\М ]аЗ ]А2 \At
та
78
о—
О
вз вг
0 о
1 о
о о
г о
о о
о *
г
о
I
о
1
Схема вычитания
Контакты реле Е
Контакты реле В
G4 G3 G2 Gl
Рис. 12.11ж. Регистр выбора крат- Рис 12.11э. Схема вы-
ного делителя. читания и регистр сле-
дующего промежуточного
остатка.
186
Глава 12
Назначение схемы на рис. 12.11д — определить, делит-
ся ли на делитель текущий промежуточный остаток. Чтобы
решить это, мы должны сравнить промежуточный остаток,
хранимый реле Е, с делителем, хранимым реле Л. Деление
возможно, и мы получаем в частном Q цифру 1 тогда и толь-
ко тогда, когда промежуточный остаток больше делителя
или равен ему. Как же мы это определим?
ГУ
|£* П? \Ы J*!
i у у у ,
и* нз нг м^\
Рис. 12,11и. Регистр окончательного
остатка
Соотношение между ними мы узнаем путем сравнения
двух упомянутых чисел по цифрам. Число £ больше числа А
•или равно числу Л (и цифра частного равна 1) тогда и толь-
ко тогда, когда:
£5 больше, чем Л5, или
£5 равно Л5, а £4 больше, чем Л4, или
£5 равно АЪ и £4 равно Л4 и £3 больше,
чем ЛЗ, или
каждая цифра от £5 до £3 равна каждой цифре
от АЬ до ЛЗ, а £2 больше, чем Л2, или
каждая цифра от £5 до £2 равна каждой цифре
от Л5 до Л2, а £1 больше А\ или равно Л1.
Но как выразить это условие на языке булевой алгебры?
Для двузначной булевой алгебры, имеющей дело лишь
с 1 и 0, справедливы соотношения:
1. х>утогда и только тогда, когда х= 1 и у=0, или х *у'\
Большие вычислительные машины. Операции наддвоич. числами 187
2. х=у тогда и только тогда, когда *=1 и у=\, или
х=0 и #=0, или ху\/х'-у\
Иными словами, наше условие равносильно следующему:
<2^£5.Л5' V
V (Е5-Л5 V ЕЬ'-АЬ9)-ЕА-М9 V
V ( » ) (£4-Л4 V £4'.Л4')-ЯЗ.ДЗ' V
V( )( )
(ЕЗ-ЛЗ V£3'.i43').£2.i42' V
V( » )(»)(«)
(£2.Л2у£2'.Д2') (£ьдг v
VE1M1 V EVyAY
Но, как известно, Л5 равно0, и, следовательно, А5' равно 1;
поэтому получается структура, показанная на рис. 12.11 д.
Как только мы нашли каждую цифру частного, нам нуж-
но запомнить ее, чтобы, закончив деление, мы знали все
частное целиком. Это выполняет схема 6-й части, которая
направляет цифру частного (в соответствии с тем этапом,
на котором она была найдена) на соответствующее место
в частном (рис. 12, 11 е).
Далее нам нужно определить кратное делителя, завися-
щее от цифры частного. Это осуществляется 7-й частью схе-
мы (рис. 12.11 ж); последняя выдает сам делитель, если
цифра частного единица, и нули во всех разрядах, если
цифра частного 0.
В 8-й части кратное делителя вычитается из текущего
промежуточного остатка, и получается новый промежуточ-
ный остаток. Это показано в общих чертах (рис. 12.Из),
так как схемы вычитания были разобраны раньше.
На рис. 12.12 представлена временная диаграмма схем
деления до определения первых двух цифр частного. Здесь
применены такие же условные обозначения, что и во вре-
менной диаграмме для схемы умножения.
На этом мы заканчиваем наше рассмотрение связи боль-
ших вычислительных машин с символической логикой и бу-
левой алгеброй. Очевидна тесная связь между состояниями
Зажим Реле Функция 12 3 4 S S 7 6 Э Ю It 12 13 1* 15 W 17 №
л
тг
Г3.1
тз.г
ГЗ.З
Г3.4
T4.I
П. 2
Т5
те. г
те. 2
Т7
Т8
Т$
D
А
К1
кг
км
К4
£
£
а
с
Е
В
G
и
—
—
—
—
—
—
D,K,G
е
А,Е
к,а
с
а, а
£,ff
G
■ft
ж <J>
н
х ф
ж ф
ж ф
Н
х *
ж_ф
Рис 12.12. Временная диаграмма при делении^
Большие вычислительные машины. Операции над двоич. числами 183
«включено — выключено» схемных элементов и двоичными
переменными булевой алгебры. Хотя в наших примерах
все схемы были построены на электромагнитных реле, со-
всем необязательно ограничиваться только ими. Булева ал*
гебра применима к анализу и синтезу схем на электронных
лампах, транзисторах, магнитных сердечниках, германие-
вых диодах и элементах «да — нет» многих других типов,
лишь бы только операторы ИЛИ, И и НЕ реализовывались
схемными элементами.
ГЛАВА 13
АЛГЕБРА СОСТОЯНИЙ И СОБЫТИЙ.
ОСНОВНЫЕ ПОНЯТИЯ
1. Обобщенная булева алгебра, включающая~время
В предыдущих главах мы описали булеву алгебру и по-
казали некоторые ее применения к классам, высказываниям,
условиям, значениям истинности, переключателям, реле
и другим типам схемных элементов. Мы присвоили символы
многим значениям распространенных выражений обычного
языка и распознали в них понятия, которые можно вычи-
слить с помощью булевой алгебры. К этим выражениям от-
носятся И, ИЛИ, НЕ, ИСКЛЮЧАЯ, ИЛИ ИНАЧЕ, НИ...
НИ, ВКЛЮЧЕНО В и др.
Но имеются и другие более распространенные выраже-
ния обычного языка, которые часто применяют, когда
говорят об отношениях высказываний и условий, а также
когда говорят о проектировании схем, содержащих элемен-
ты типа «да — нет». Это выражения, связанные со временем,
например: КОГДА, ДО, ПОСЛЕ, ПОКА, В ТЕЧЕНИЕ,
ПРОИСХОДИТЬ, ИЗМЕНЯТЬСЯ, НАЧИНАТЬСЯ, КОН-
ЧАТЬСЯ и аналогичные выражения. Эти выражения отно-
сятся к состояниям и событиям, к условиям, которые могут
изменяться со временем. В этих выражениях мы также можем
надлежащим образом распознать понятия, присвоить им
символы и производить с ними вычисления. Мы получим
тогда нечто более широкое, чем булева алгебра, нечто, что
можно было бы назвать «булевым анализом», ибо, подобно
обычному математическому анализу, он имеет дело с изме-
нениями функций. Мы получаем нечто более широкое, чем
«алгебра классов», нечто, что мож^о было бы назвать «ал-
геброй состояний и событий». Мы будем пользоваться преи-
мущественно этим последним названием, потому что оно
ллгебра состоянии и событий. Основные понятия 191
лучше передает смысл, чем термин «булев анализ». Эта новая
область представляет собой расширенную булеву алгебру,
предусматривающую изменения с течением времени.
В булевой алгебре мы рассматривали набор двоичных
переменных р, qt г, причем нам было известно, что р долж-
но быть 0 или 1, q должно быть 0 или 1 и г должно быть О
или 1; мы знали также, что р, qvir сохраняют одно значение
в одной задаче, хотя это значение могло-быть и неизвест-
ным. В алгебре состояний и событий мы рассматриваем тот
же набор двоичных переменных р, qf г, но теперь это уже
суть функции времени, измеряемого или отсчитываемого
в обычных числах. В какой-либо данный момент р, qtr могут
быть равны 0 или 1 или не определены, но за какой-либо
промежуток времени значение р, q% г может превратиться
из 0 в 1 или из 1 в 0, а если это изменение не мгновенное,
то во время изменения значение их остается неопределенным»
Мы считаем, что двоичная переменная р известна нам пол-
ностью, если для каждого' момента в интервале известно»
равна ли она 1 или 0 или имеет неопределенное зна-
чение.
Алгебра состояний и событий (булев анализ) представля-
ет собой, конечно, естественное расширение булевой алгеб-
ры, благодаря которому она приближается к действитель-
ности. Ведь в реальном мире члены любого класса объектов
поступают в класс в определенное время и выходят из него
в определенное время. Например, лошадь становится членом
класса лошадей, когда рождается, и перестает быть чле-
ном этого класса, когда умирает. Далее, высказывание,
истинное в данный момент, может быть неистинным в другой
момент. Например, схемный элемент, включенный в данный
момент, может быть выключенным в другой момент. В нату-
ральных языках обыкновенно говорят о таком изменении
состояния как о событии, и поэтому мы вправе называть
данное обобщение алгебры классов алгеброй состояний
и событий. Двоичная переменная р, выражающая значение
истинности высказывания Я, в котором не упоминается вре-
мя, например высказывания «схемный элемент Е включен»,
становится теперь двоичной переменной p{t)f или ptt или
просто р, выражающей значение истинности высказывания
Р, в котором упоминается время, например высказывания
«схемный элемент Е в момент t включен».
2. Единицы времени
Когда мы1 начинаем рассматривать р, qf г как функции
времени f, перед нами прежде всего возникает вопрос: «На
какие' промежутки мы должны разбить время?» В обычном
дифференциальном исчислении нам. предлагают рассматри-
вать время как «непрерывную переменную», допускающую
разбиение на бесконечно малые деления, намного меньше
микросекунды. Теоретически это может быть желательным,
но не очень хорошо согласуется с действительностью, а мы
прежде всего интересуемся практической работой приборов
и схем. Практически полезно считать время состоящим из
последовательности малых конечных единиц. Для некоторых
схем удобными единицами являются секунды» для других —
миллисекунды, для третьих — микросекунды. Мы будем
предполагать, что можем измерять время в единицах, и часто
будем применять в качестве единицы либо «малую едини-
цу» — время, которое требуется схемному элементу рассма-
триваемого нами типа для изменения своего состояния из О
в 1 или из 0 в 1» либо «большую единицу», представляющую
собой большое кратное малой единицы, например 1000
малых единиц.
Когда мы применяем «малые» единицы времени, то пере-
менной р будет требоваться целая единица (или большая
часть единицы), чтобы перейти от 0 в начале единицы времени
к 1 в конце единицы времени или обратно. При использова-
нии «больших» единиц времени переменная р в течение зна-
чительного промежутка времени обычно будет сохранять
одно из значений, 0 или 1, а происходящие время от времени
изменения будут носить характер скачков в начале, или
в конце, или в какой-нибудь другой точке «большой» еди-
ницы времени. Конечно, в.действительности могут быть
такие положения, когда и то и другое из этих упрощен-
ных допущений окажутся малопригодными. В этих случаях
нам,, возможно, придется принять другие допущения.
3. Ступенчатые функции
Как будут выглядеть в графическом представлении наши
переменные р, ?, г, рассматриваемые как функции от t?
Алгебра состояний и событий. Основные понятия 193
Это будут «ступенчатые функции». Они будут похожи на гра-
фики, изображенные на рис. 13Л. Здесь мы отложили по
горизонтальной оси 8 «больших» единиц времени; мы пред-
полагаем, что для перехода воображаемого схемного эле-
мента из 0 в 1 или из 1 в 0 требуется одна тысячная доля
О
Г~1 . г
t г з 4 5 е 7 8\
р
X
р Ч Не определена
п
Р-9
-*-
р
1
г и{
/ (
П i
/7<
-, ,—| 1
/ 2 3 4 5 6 7 S\
Р'
/
» 1
О
it
Не определено
х означаегп неопределенную точку
Рис. 13.1. Двоичные переменные, являющиеся функциями
времени.
одной из изображенных единиц времени. Кроме того, мы
предполагаем, что изменения могут происходить только
в граничных точках интервалов.
Первый график на рис. 13.1 изображает функцию р,
определенную в табл. 13.1.
Непрерывное /
0-5-1
1-г4
4^-6
6-г8
Р
0
1
0
1
Таблица J3.1
Отсчитанное / р
I
2,3,4
5,6
7,8
0
1
0
1
194
Глава Id
Например, в окрестности момента t—i (непрерывное время /)
мы практически не знаем, равно лир 0 или 1; таким обра-
зом, здесь р не определено. И на практике мы проектируем
Таблица 13.2
Непрерывное t q Отсчитанное t q
0-^2 0 1,2 0
2-1-6 1 3,4,5,6 1
64-8 0 7,8 0
схему так, чтобы в этот момент ее работа не зависела от
такого схемного элемента. С тем же положением мы
сталкиваемся, когда рассматриваем не схемные элементыff
t91234 5G78
р
Ч
р*ч »
pq х
р9 — •
о
Рис. 13.2. Двоичные переменные как функ-
ции времени. Второй способ графического
представления.
а что-нибудь более обыденное. Пусть р есть значение истин-
ности предложения «Джон Смит в момент t мертв». Но Джон
Смит умирает в какой-то день, и в этом дне есть моменты,
когда он еще жив, и моменты, когда он мертв, и промежу-
точные моменты, когда никто —ни друг, ни доктор, ни
ученый — не может определить, жив Джон Смит или мертв.
В этих положениях р в действительности не определено,
и нет смысла настаивать на том или другом определении;
Алгебрй состояний и событий. Основные понятия 195
в действительности мы стараемся не основываться на инфор-
мации р в моменты, когда нельзя определить, равно р 1 или 0.
На рис. 13.1 мы представили также график функции ц,
которая определена в табл. 13.2. На рис. 13.1 представлены
также функции р ИЛИ q=p\/q, р И q=p-qf НЕ-р=р\
функция «всегда 1» и функция «всегда 0». Заметим, что,
хотя p\jq и p-q кажутся непрерывными при f=6, они в
действительности не непрерывны, а не определены в этих
точках.
Есть другой удобный способ изображения двоичных пе-
ременных: чертят прямую, если переменная равна 1; не чер-
тят никакой линии, если переменная равна 0. Этот метод
оказывается часто более удобным, чем первый. На рис. 13.2,
таким образом, представлены упомянутые семь функций.
Когда конечный промежуток времени отсчитан в «малых»
единицах, таблица значений двоичной переменной р может
выглядеть подобно функции в табл. 13.3.
Таблица 13.3
t
6
7
8
9
10
Р
14-0
0
о-н
14-0
0
Такая таблица может, например, представлять запись
состояния больного в медицинских терминах, как показано
в табл. 13,4.
Таблица 13А
t
1
2
3
4
5
Высказывание Р 1
Здоров
Здоров
Заболел
Жар
Жар 1
1 t
6
7
8
9
1 10
Высказывание Р
Доза пенициллина — температура опу-
стилась до нормы
Нормальная температура
Температура снова повысилась
Еще одна доза пенициллина—температу-
ра опустилась до нормы
Нормальная температура
196
Глава 13
4. Новые операторы и их определения
До сих пор мы все еще имели дело почти с булевой алгеб-
рой, но теперь мы вводим новые операторы, которые выра-
жают понятия, содержащиеся в следующих словах и их
синонимах:
ПОКА ЗАДЕРЖКА НАЧАЛО
В ТЕЧЕНИЕ ОПЕРЕЖЕНИЕ КОНЧИТЬ
КОГДА ЗА ИСКЛЮЧЕНИЕМ ТОГО, КОГДА КОНЕЦ
В МОМЕНТ ИСКЛЮЧАЯ ВРЕМЯ, КОГДА ВОЙТИ
В СЛУЧАЕ ДО ОСТАВИТЬ
ПРОИЗОШЛО1 ПОСЛЕ СТАТЬ
В ПЕРВЫЙ РАЗ НАЧАТЬ ИЗМЕНИТЬСЯ
ВО ВТОРОЙ РАЗ СОБЫТИЕ СОСТОЯНИЕ
Определения новых операторов во многих отношениях
довольно очевидны; но после того как они определены, они
дают нам новые возможности применения символической
логики и математики к вычислениям и построению разум-
ных машин, и поэтому представляют некоторый интерес.
5. Оператор ЗАДЕРЖКА
Пожалуй, наиболее важным из новых операторов, при-
меняемых в алгебре состояний и событий, является опера-
тор ЗАДЕРЖКА. Например, рассмотрим высказывание Р:
Р: Схемный элемент Е в момент t включен.
Оно имеет значение истинности р, или p(t), или рь меняюще-
еся со временем t. С этим схемным элементом Е может быть
связан другой схемный элемент F, для которого справед-
ливо следующее высказывание Q:
Q: Схемный элемент F включен в момент t плюс k,
причем в этом высказывании Q каждый момент t есть именно
тот момент t, для которого справедливо высказывание Р.
Высказывание Q имеет значение истинности q, или q(t)%
или qtt которое будет изменяться во времени точно также,
как и значение истинности р, или piy но только будет запазды-
вать на ft единиц. В математических символах это выразит-
ся так:
q(t + k) = p(t) или q{t) = p{t-k).
Алгебра состояний и событий. Основные понятия 197
Конечно, мы можем быть уверены, что если два схемных
элемента Е и F находятся в такой связи, то между ними
имеется тесная причинная связь или корреляция.
Например, если k равно 2, а р есть двоичная переменная,
изображенная в верхней части рис. 13.3, то р, задержанная
О I 2 3 4 5 6 7 8 S Ю
р*Т (схемный
элемент Ев
момент t включен^
а * Т(схемный
элемент F в
* момент t включен)
-p(t-h)-TPp
Рис. 13.3. Оператор ЗАДЕРЖКА.
на 2 единицы времени, представлена в нижней части рис. 13.3.
Очевидно, величина задержки k может быть любым числом
от 0 до бесконечности.
Оператор ЗАДЕРЖКА мы будем изображать буквой D:
0*(р)> или D*p, или pk = p(t — k).
Заметим, что на рис. 13.3 функция р не определена для
f <0. Тогда D2p не определено для t<2. Пунктирная линия
на рисунке изображает ту часть графика переменной р
(задержанной на 2 единицы), где эта функция не определена.
Если задержка отрицательна, то мы получим оператор
ОПЕРЕЖЕНИЕ. Если k — положительное число, то qt
равно D"h(p), или p(t+k). На рис. 13.4 приведен график
переменной р, сдвинутой вперед на 31/2 единицы.
Примером задержки, имеющей существенное значение,
является работа блокирующего контакта реле. Чтобы реле
сработало в результате возбуждения его обмотки, нужно
некоторое небольшое время; поэтому его контакты замыка-
ются не точно в момент возбуждения обмотки. Время сраба-
тывания быстродействующего реле равно 2 или 3 мсек,
тогда как для обычного реле оно равно приблизительно 15 или
20 мсек, а замедленного рем — от 50 мсек до 5 сек и больше.
Рассмотрим, например, рис. 13.5; здесь изображены
реле R и зажим Г, обозначенный как вход; при соединении Т
198
Глава 13
с источником тока реле R возбудится. Как только это про-
изойдет, контакт ЯЛ замкнется. Тогда независимо от того,
течет ли ток от источника Т или нет, при наличии источника
-J -2 -I 0 1 2 3
pi
4tmP*
Подвинуть вперед
на 3 !/г единицы
•pft+З'/г)
5 6 7 В 9 Ю
Рис. 13.4. Оператор ОПЕРЕЖЕНИЕ.
тока, соединенного с зажимом £/, реле будет оставаться
возбужденным. Уравнение булевой алгебры для информации
в реле R имеет простой вид:
Однако это уравнение недостаточно точно отражает
действительное положение, ибо существует небольшой
ВхнГ
и
-о
\ R-i блокирующий
•*- контакт
W*l, Вжда есть тая
\** Я
Рис. 13.5. Блокировка реле
в возбужденном состоянии.
Рис. 13.6. Преры-
вистая работа реле
в случае зуммера.
промежуток времени т, когда обмотка реле R возбуждена,
но контакт /?-1 еще не перешел из разомкнутого положения
в замкнутое.. Поэтому, используя алгебру состояний и собы-
тий и оператор задержки, мы пишем для этого случая урав-
нение
/? = TV£/-Dm(/?).
Алгебра состояний и событий. Основные понятия 199
Рассмотрим второй пример, изображенный на рис. 13.6.
На зажиме W всегда имеется ток; он течет в обмотку реле R
и заставляет реле срабатывать; как только реле полностью
возбудится, сердечник становится достаточно сильным
электромагнитом и перемещает размыкающие контакты
реле из замкнутого положения в разомкнутое. Как только
это произойдет, контакт R-2 реле R размыкается; тогда ток
уже больше не течет в обмотку реле, ее магнитное поле
р *Т (ток течет е I 1 1 I I I
обмотку реле R) Г г Г"| Г"|
а*Т(контакт R-2 I LJ I I I I
реле Rразомкнут) I I I || ll I
Время Ымилли- О Ю 20 30 40 50 SO 70 SO
секундах
Рис. 13.7.
исчезает и реле отключается. Но если обмотка реле R обесто-
чивается, то контакт R-2 не сможет остаться в разомкну-
том положении и возвращается к нормально замкнутому
положению, после чего реле вновь начинает возбуждаться,
и т. д., причем это будет продолжаться сколь угодно долго.
Подобная схема применяется для обычного дверного звонка.
Обозначим через р значение истинности высказывания
«ток течет в обмотку реле #» и через q — значение истинно-
сти высказывания «контакт R-2 реле R разомкнут». Если
мы хотим составить уравнение для схемы на рис. 13.6,
используя обычную булеву алгебру.и игнорируя задержку,
то мы должны написать
p = q' и <7 = р, откуда р = р', что является противоречием.
Однако, используя алгебру состояний и событий, мы
можем написать непротиворечивые уравнения следующим
образом. Пусть время будет измеряться в миллисекундах,
и допустим, что для перехода реле R из спокойного в воз-
бужденное состояние или обратно требуется 10 миллисекунд.
Тогда уравнения для схемы будут иметь вид
p = Nq = q\ q = D">(p).
20в
Глава 13
На рис. 13.7 дано графическое представление этих соотно-
шений. Мы видим, что повсюду, за исключением отдельных
точек, где функции не определены, ру<7=1 и p-q=0, что
подтверждает равенство р=?\
6. Оператор ПРОИСХОДИТЬ
Теперь мы определим следующий из новых операторов —
оператор ПРОИСХОДИТЬ. Пусть Р — высказывание,
например «переключатель S в момент t включен», и пусть
р — значение истинности высказывания Р; тогда мы опре-
деляем Н(Р) как высказывание «переключатель S был вклю-
чен в некоторый момент, предшествующий Ь, или «оказалось,
что переключатель S был включен в некоторый момент,
предшествующий t», и определяем Н(р) как значение истин-
ности этого высказывания.
Если р и q — две двоичные переменные, изображенные
на графиках (см. рис. 13.8), то Н(р) и H(q) также суть две
двоичные переменные. Их график изображен на рис. 13.8.
Н(р), или Нр, равно 1 для любого момента t пос-
ле того, как переменная pt приняла значение 1;
иными словами, Н(р,) равно 1 в том и только в том случае,
если существует момент f2, такой, что t2<t и p(t2) равно 1.
Операторы ЗАДЕРЖКА и ПРОИСХОДИТЬ связаны
некоторым уравнением. Обозначим через m небольшой про-
межуток времени, достаточный для того, чтобы схемный
элемент «да — нет» рассматриваемого типа перешел навер-
ное из состояния 0 в состояние 1 или обратно (например,
время срабатывания реле, взятое с некоторым запасом).
Предположим, что длительность состояния р по меньшей
мере равна т. Тогда H(p)=p\/DmH(p).
Если 1(р) равно р, где I обозначает оператор ТОЖДЕ-
СТВО, и если т равно 1, то мы можем написать это уравне-
ние, используя только операторы:
H=I VDH.
Полезно добавить к этим операторам оператор N для не.
Итак, мы определяем Np как р', равное 1—р.
Мы замечаем, что нужно проврдить различие между
высказыванием «р не произошло»'(которое можно сокра-
t: 01234587»$
Hfp), ,
T(p произошли
Щ),
изошл
T(p произошло»
Рис. 13.8. Оператор ПРОИСХОДИТЬ
f.
Р
Пр
Нр
ър*т\р
Ар*Нр-Нр
Рис. 13.9. Соотношение между операторами
НЕ и ПРОИСХОДИТЬ. ДО и ПОСЛЕ.
0 <
г ,
? .
1 <
i .
Г i
ч
7 1
? 9
е |
202
Глава 13
щенно записать как NHp) и высказыванием «Не-р произо-
шло», которое можно записать сокращенно как HNp.
Различие между ними хорошо видно из графического пред-
ставления на рис, 13.9.
7. Функциональные операторы в обычной алгебре
и анализе
В обычной алгебре и ее обобщениях, называемых диф-
ференциальным и интегральным исчислением и исчислени-
ем конечных разностей, также имеются функциональные
операторы, подобные определенным выше. Вот некоторые
из них:
Е/(*) = /(*+!),
Ehf(x) = f(x + k)9
д*/(*)«Д[Д*-7(*)].
Df(x)=limf{x+h)-f(x) ,
л^о Л
Dkf(x)=D[&-4(x)],
\f(x)=f{x).
Можно доказать много важных соотношений между этими
функциональными операторами, по крайней мере для поли-
номиальных функций [когда / (х) = а0 + ахх + а2х2 + ... +
+ апхп]. Вот одно такое соотношение: Aft = (E — 1)\ и при-
мер этого правила:
Д2/(л:) = /(л: + 2)-2/(х+1) + /(*).
Можем ли мы применять эти функциональные операторы
в алгебре событий и состояний? Мы можем применять
!/(*) = /(*) и Е/(*) = /(* + 1)= ЗАДЕРЖКА "* /(*).
Но нет особого смысла применять другие функциональные
операторы для наших функций, принимающих только зна-
чения 1,0 и «не определено». Например, применение опера-
тора А к функции /(/) дает: 1,0, «не определено» или— 1;
но —1 нет в значениях ступенчатых функций /(/), кото-
рые мы рассматриваем.
Алгебра состояний и событий. Основные понятия 203
8. ДО, ПОСЛЕ, ПРИХОД и ОСТАВЛЕНИЕ
Рассмотрим высказывание Р:
«Схемный элемент Е в момент t включен» со значением
истинности р.
Мы можем рассматривать состояние элемента £ как
состояние «выключено» в некоторые моменты и как со-
стояние «включено» в другие моменты; и мы можем рассма-
тривать события перехода от состояния «выключено» к со-
стоянию «включено» и наоборот.
Обратившись к рис. 13.9, мы можем взять для примера
верхнюю линию, изображающую.график функции р. Этот
график показывает, что схемный элемент Е включен от
момента 1 до момента 4, от момента 6 до момента 8, а осталь-
ное время выключен. В этом случае у нас будет пять состоя-
ний: три состояния «выключено», два состояния «включено»
и четыре события в моменты 1, 4, б и 8.
При таком описании наблюдаемых условий мы вправе
считать эквивалентными три выражения:
«до того как элемент Е включен»;
«до того как двоичная переменная р принимает значе-
ния единица»;
«до р».
Они эквивалентны в том смысле, что таблица единиц и нулей,
указывающая те моменты, когда выражение правильно,
остается одной и той же для всех трех выражений.
До. Какой смысл выражения «до р»?Оно означает: «р еще
не произошло». Обозначим «до» через В. Тогда
Bp=NHp.
После. Какой смысл выражения «после р»? Рассматри-
вая график двоичной переменной р на рис. 13.9, мы видим,
что выражение «после р» может означать: «после момента 4»
или «после момента 8»—в зависимости от того, имеем ли мы
в виду время после первого включенного состояния элемен-
та Е или после всех включенных состояний элемента £.
Если р — двоичная переменная, принимающая значе-
ние 1 только в одном непрерывном интервале времени, то
состояние «после р» однозначно и означает «не-р, но р
произошло». Обозначим «после» через А. Тогда
Ap = Hp>Np.
204
Глава 13
Удобно применять то же определение и для других двоич-
ных переменных.
Приход. Элемент Е «приходит» в состояние «включе-
но» в момент 1 и в момент 6. Как это можно определить?
Как и ранее, обозначим через т наименьший промежу-
ток времени, достаточный для того, чтобы элемент типа
«да — нет» наверное перешел из состояния 0 в состояние 1
или из состояния 1 в состояние 0. Тогда для Ер, где Е озна-
чает «приход», можно дать такое определение: «р, но еще
не Dmp»:
Ep = p.NDm(p).
Оставление* Подобно этому для Lp, где L означает
«оставление», можно дать такое определение: «не-р, но
еще Dmp»:
Lp = Np.Dmp.
На рис. 13.10 дается иллюстрация этих определений;
здесь т принято равным приблизительно одной пятой
единицы, в которой измеряется время t.
р
№тр
Ep-p-HQmp
HP
Ьр»Ьр-Птр\
И 1'1 И И п г И И г г
Рис. 13.10. Приход и оставление.
Из этих определений следует, что Ер есть часть от р
и Lp часть от Np; поэтому указанные определения позволя-
ют разрешить некоторые случаи неоднозначности.
Нетрудно видеть, что если т уменьшается, но не дохо-
дит до нуля, то состояния Ер и Lp все еще могут иметь
Алгебра состояний и событий. Основные понятия 205
значение 1. Но в предельном случае, когда т равно 0, Ер
и Lp будут равны р*р*', что согласно правилам булевой
алгебры равно 0. Когда имеют дело с физическими схемны-
ми элементами, предела не достигают; всегда требуется
по меньшей мере конечное время, чтобы схемный элемент
подействовал на другой схемный элемент. Поэтому допу-
щение обычного анализа о неограниченном приближении
к нулю здесь не применимо.
9. ПЕРВЫЙ РАЗ, ВТОРОЙ РАЗ
Если имеется двоичная переменная с несколькими интер-
валами (на которых она сохраняет значение 1), то может
о tj t2 t3 t, г, о t, t2 t3 t4
p
HP
H/7
Hp-Hp
HiHpHp)
HH(Hp-hp)\
р-ттр-щ
P Случай p0aO
Рис. 13.11. Вычисление Iхp.
понадобиться умение различать их. Положим:
1хр означает «р только в первом интервале», или «р в
первый раз»;
12р означает «р только во втором интервале», или «р
во второй раз»
и т. д.;
Н2р означает «р произошло второй раз»
и т. д.
Можно ли определить эти операторы через операторы ЗА-
ДЕРЖКА, ПРОИСХОДИТЬ и НЕ? Можно!
Вычисление Vp можно провести графическим способом,
как показано на рис. 13.11. Существуют два случая: р0=б
р
Ыр
ННр
НННр
-Vp
Случай р0*/
206
Глава 13
и р0=1. Определим Z(p) как 1 при Р0=1 и как 0 лри р0=0;
тогда мы можем написать для обоих случаев одну 4>ормулу:
I1(p) = [Z^I-NH(N.H)VNZ.NHN](p).
Очевидно,
I1p+Pp+I»p+....=Ipi
ибо интервалы от р в совокупности тождественно равны р.
to tt I'z tj t4 ts t$ t7
*P ——————
H/7-H/7
HiHpHp) bin———
р-ШНрНр)
н[/7.н(Цр-Н/7)]| I I———I—I
Рис. 13.12. Вычисление И2р.
На рис. 13.12 показано вычисление выражения Н2р
при р0=0. Оно имеет в данном случае вид
H2p = H[bH(N-H)]p.
Мы могли бы продолжить наш разбор и рассмотреть много
других разветвлений алгебры состояний и событий, но,
по-видимому, из изложенного достаточно ясно, какими
способами ее можно развить дальше.
10. Заданные моменты
Помимо условий, или двоичных переменных, или функ-
ций со значениями единица и нуль, или ступенчатых функ-
ций, зависящих полностью от состояний и событий, суще-
ствуют двоичные функции, совсем не зависящие от состоя-
ний и событий или зависящие от;них лишь частично. Вот
примеры таких функций:
Алгебра состояний и событий. Основные Понятия 207
а) функция, равная 1 во всем рассматриваемом проме-
жутке времени, представляющая то же самое, что p\/Np,
если допустить, что нет неопределенных точек;
б) функция, равная 1 в течение четных десятых секунды;
в) функция, равная 1 точно через 26 мсек после почти
мгновенного события е\
г) функция, равная 1 точно в течение 5 сек после собы-
тия е.
Чтобы выразить эти функции, мы определим оператор U.
Во-первых, мы условимся, что и£(р) (где Ь>а) равно функ-
ции, которая принимает значение 1 в течение временного
интервала, начинающегося в момент а после первого момента
tlt в который переменная р равна 1, и прекращающегося
в некоторый момент & после tx\ эта функция равна Т(^+а<
<tf <*!+&)—значению истинности высказывания «Момент
/ лежит между /й+а и ^+6». Мы принимаем также, что
Ua(p) можно записать иначе: Ua(p). И наконец, мы усло-
вимся, что само Va равно значению истинности высказыва-
ния «t больше или равно аи меньше или равно &», Т(а < t < b).
В нашем изложении первый рассматриваемый момент
будет обычно t=0°t а последний рассматриваемый момент
будет обычно /=360°, потому что, во-первых, у значитель-
ного числа механизмов первичный цикл определяется одним
полным оборотом главного вала или какого-нибудь его экви-
валента и, во-вторых, имея дело с конечным, а не бесконеч-
ным временем, можно выбрать такую единицу времени, что
все рассматриваемые моменты будут находиться в интерва-
ле от 0 до 360°.
Выразим теперь четыре приведенные выше «выборочные»
функции. Они будут соответственно:
a) U03eo;
б) u12+u34+u6*+u7e+iy°+...;
в) U26 (е);
г) ил*).
Подразумевается, что при рассмотрении этих функций из
контекста ясно, в каких единицах измеряется время.
Для функции «б» вместо знака ила (V) можно употреблять
знак плюс (+), так как функции, связываемые этим знаком,
не перекрываются.
208
Глава 13
11. Состояния и события
Состояние есть условие, длящееся некоторое время,
так же как событие. Но в общем случае состояние есть
условие, которое длится довольно долго, а событие есть
условие, которое длится лишь в течение очень короткого
интервала времени; таково основное различие между ними.
Но это различие относительно, а не абсолютно, поскольку
событие должно быть не короче m — наименьшего времени,
необходимого для перехода схемного элемента из одного
состояния в другое, и само пребывание в некотором состоя-
нии может быть столь же кратковременным. Однако собы-
тия обычно происходят без перекрытия, т. е. их перекрыти-
ем обычно можно пренебречь. Напротив, состояния длитель-
ны, и обычно между ними имеет место перекрытие.которое
нужно учитывать.
Событие «ПЕРЕХОД из одного состояния р в другое
состояние г» есть то же самое, что «оставление первого
состояния и приход во второе состояние»:
С(р, r) = Lp-Er.
«СОСТОЯНИЕ от одного события е до другого собы-
тия /» нужно рассматривать для двух случаев. В первом
случае мы рассматриваем состояние от первого появле-
ния е до первого появления /, т. е. мы имеем дело с ситуа-
цией «событие е произошло, а событие / еще не произошло»:
to-NH/.
Во втором случае мы рассматриваем состояние от любого
появления е до ближайшего появления /. Обозначим это
событие через S(e, /). Эта функция может быть представлена
в виде
S(e. /)-N/.[eVDmS(e, /)].
Во многих случаях это может служить удовлетворительным
определением; оно с пользой применяется в проектировании
схем. Если же е и/оба равны 1 в течение одного и того же
промежутка времени,то S в этом промежутке не определено.
Если длительность е меньше m (наименьшего времени, доста-
точного для того, чтобы схемный элемент изменил свое
состояние), то это равносильно случаю, когда длительность
е равна 0; то же самое справедливо для /.
ГЛАВА 14
АЛГЕБРА СОСТОЯНИЙ И СОБЫТИЙ. ПРИЛОЖЕНИЕ
К НЕКОТОРЫМ ЗАДАЧАМ
1. Применение алгебры состояний и событий к анализу
работы схемных элементов
С помощью алгебры состояний и событий мы можем
проводить более точный и более полный анализ работы
последовательностных схем — схем, действие которых зави-
сит от последовательности состояний, продолжающихся
разное время, и событий, происходящих время от вре-
мени. Хотя сущеструет много видов элементов типа «да —
нет», которые можно было бы использовать для иллю-
страции применения алгебры состояний и событий к схем-
ным элементам, тем не менее мы будем придерживаться
реле из-за их гибкости, распространенности и ввиду того,
что, поняв, как проектировать схемы с реле, нетрудно
перейти к синтезу схем из элементов других типов.
Прежде всего нам нужно показать, цак можно предста-
вить релейными схемами шесть главных функций алгебры
состояний и событий: Dp, Np, Dftp» Нр, Vba и U£(p). Обозна-
чим опять через т «надежное время срабатывания» реле, че-
рез k —любой более продолжительный промежуток времени,
причем длительность любого состояния р не меньше чем т.
На рис. 14.1 а — 14.1 д изображены схемы, построенные
из реле, кулачков и т. д., которые удовлетворительно пред-
ставляют эти функции. Их нужно изучить. Комбинируя
эти схемы, мы можем построить много других схем.
Разберем устройство, изображенное на рис. 14.1 г.
Это чертеж кулачкового механизма — вращающегося дис-
ка с выступами. Когда диск поворачивается по часовой
стрелке, его выступы замыкают кулачковый контакт, благо-
даря чему цепь замыкается и обеспечивается поступление
информации q. Энергия для кулачкового механизма может
К (ключ)
(информация
на ключе)
)Р(рвлв)-
И (контакт реле Р)
г а (информация
е выходных
_L _L линиях)
r-N$-NDp ?mty
Р и с. 14.1а. Реализация операторов ЕДИНИЧНАЯ
ЗАДЕРЖКА (D) и НЕ (N). (Заметим, что в некото-
рых случаях для получения НЕ требуется одна еди-
ница времени.)
(информация]
на ключе)
ш
К (ключ) _
0 I й-1 (контакт реле Q)
(реле времени,
задерживающее «->
на к единиц ' \ г (информация
времени; Ш изображал е выходной линии)
У ет биметалличес- -L. ч
(QQ кую пластинку - r*j}*n
jL ^термическая г
~ задержка*)
Рис. 14.16. Реализация оператора ЗАДЕРЖКА (D*p).
/f (ключ)
1
(информация
на ключе).
R-1 (контакт реле R)
\г(информация е %
выходной линии)
Я(реле)
^3L r»pvDr»H|p
Рис. 14.1в. Реализация оператора ПРОИСХОДИТЬ (Нр).
180
Кулачон
Роликовый
подшипник
Контакт
И
tD 60 J20 180 2*0 300 360
График для р и q
Рис. 14.1г. Кулачковый механизм с защелкой.
^ie
Контакты
Общий
зажим
Зубчатое
колесо
Якорь
(Tut воспринимающая
t 0 36 72 108 т /80 2/6 252 288 324 360
Рис. 14.1д« Шаговый переключатель.
212
Глава 14
поступать, например, от непрерывно вращающегося вала
с фрикционным приводом к кулачковому диску. Штифт
и защелка не дают диску поворачиваться при вращении
вала. Когда защелка на мгновение переместится, например,
электромагнитом с катушкой, возбуждаемой при замыкании
контакта, диск освобождается и поворачивается вместе
с валом на один оборот. Время поворота от 0 до 360° отсчи-
тывается от момента перемещения защелки.
Кулачковый контакт с защелкой выражает функцию
? = U162o0(p) + U!l8°o(p).
Если вообразить, что защелка снята и кулачковый меха-
низм непрерывно вращается, то кулачковый контакт будет
выражать функцию
f-Uar + Ufft-
Рассмотрим также устройство, изображенное на рис.
14.1 д. Это шаговый переключатель — переключатель, кото-
рый «шагает» время от времени в зависимости от ряда усло-
вий. Когда такой шаговый переключатель поворачивается
против часовой стрелки, вращающаяся щетка соединяет
последовательно зажимы 1ч-10 с общим зажимом. Освобож-
дение щетки и перемещение ее на один шаг возможны только
тогда, когда возбуждается воспринимающая обмотка.
Теперь мы подготовлены к тому, чтобы попытаться при-
менить наш новый алгебраический аппарат для решения
практических задач построения последовательностных схем.
2. Задача сигнализации
Задача. В схеме имеется ключ К и три лампы Я, Q и R.
Ее действие определяется ключом К и двумя условиями х
и у, заданными контактами переключателей. Ключ К в на-
чальный момент не нажат. Схема должна обладать следую-
щими свойствами:
1) лампа Р загорается, если х продолжается после
того, как у прекратилось;
2) лампа Q загорается, если К нажат только первый
раз при условии, что х и у : прекратились до этого;
Алгебра состояний и событий. Приложение к некоторым задачам 213
3) лампа R загорается, если кнопка была нажата
дважды, условие у никогда не имело места, а условие х
либо имело место, когда К был нажат, либо имеет место,
когда ключ К нажат.
Построить схему.
Решение. Пусть р равно Т («лампа Р зажжена»).
Пусть q равно Т («лампа Q зажжена»).
Пусть г равно Т («лампа R зажжена»).
Пусть k равно Т («ключ К нажат»).
1) р ТОГДА И ТОЛЬКО ТОГДА, КОГДА х И ПОСЛЕ у:
р = х-Ау.
Но Aw = Hw • Nw, где w — любое условие.
Следовательно, p = x-Ny-Ну.
Схема изображена на рис. 14.2а.
2) q ТОГДА И ТОЛЬКО ТОГДА, КОГДА Р(*)
И ПОСЛЕ х И ПОСЛЕ у:
q^VW-Ax-Ay^VW-Hx-Hy-Ny.
Но l1(w) = w-NH(Nw-Hw), где w — любое условие.
Следовательно, q равно
kNH{Nk-Hk).Hx'Nx'Hy-Ny.
Пусть Zx (дополнительное условие) = H(NfcHfc).
Тогда 7 = ^-Nz1-Nx-Hx«Ny-Hy.
Схема изображена на рис. 14.26.
3) г ТОГДА И ТОЛЬКО ТОГДА, КОГДА H2(fe) И ДО
у И Н(ЕЛ И х):
r=H2{k)By-H(Ekx-).
Далее, Н2м;= H[o/-H(Nw-Hw)], где ш — любое условие; и
Bw = ЫНш,
Ew = a/-NDma;.
Следовательно,
r^H[k.H{№-Hk)].№y'H(k-№mk-*)
214
Глава 14
Л
У I _^
Ну
Йн*
т^ ■ ^^ у
|и* J
* НА
(gH/r
Hk
(gzr
z,
H(NA-HA)
Ня
(jH*
Рис. 14.2а.
Рассмотрим fc«NDmfc. Мы хотим, чтобы реле сработало,
пока существует это «объединенное условие», но это усло-
вие по определению будет существовать приблизительно
такое время, которое равно времени срабатывания реле,
п
Удвоенное время
срабатывания
(6 D^*
Рис. 14.26.
2,
(0 2г«[НАН(ЫА НА)] Jy
l*-iHy
{*s)°
п.
'ну
evir
х
(0Z,-H(A-ND^*-W
Рис. 14.2в.
216
Глаза И
Следовательно, действие схемы будет неопределенным.
Поэтому возьмем реле с большим запаздыванием, чем
Dmk, а именно реле, для которого имеет место T>%mk.
Тогда
r=H[*H(N^-Hft)].NHy-H(/c-ND8m*.x).
Для вспомогательных реле нам нужно, чтобы
Z^Hp-Z,],
Za = H(ft-NDfMft.jc).
Тогда
r = Z2NHj/Z3.
Схема изображена на рис. 14.2 в.
3. Автоматическая нефтяная топка
Задача, В автоматической топке используется нефть,
и вода превращается в пар для отопления дома. Горение
начинается (при отсутствии опасных условий), когда тем-
пература в жилой комнате опускается до 20,5° (/) (ее фикси-
рует термостат) и остается на этом уровне по крайней мере
5 мин (т) и прекращается, когда температура достигает 22°
(к). Но если выполняется какое-либо из следующих опасных
условий, то пламя в топке либо не возникает, либо гасится:.
дымовая труба слишком горяча (с);
давление в котле больше 8 фунтов на квадратный дюйм
(р);
уровень нефти в питающем баке слишком низок (s);
воздуходувка, смешивающая воздух с нефтью и нагне-
тающая смесь в топку, действует плохо (Ь)\
вода в котле ниже определенного уровня (до).
Построить схему, выражающую условие, что пламя в топ-
ке зажжено (L),
Решение. Буквами, стоящими в скобках, мы обозначим
соответствующие условия. Тогда искомое условие выражает-
ся уравнением состояния от одного события г до более
позднего из двух других событий / и g (обозначим это собы-
тие А), где е, /, g имеют особые значения, которые мы сейчас
укажем. Как можно выразить Л—«более позднее из событий
5 минут
Рис. 14.3а. т есть
событие «5 минут
после события /», или
m = U4/).
1
QpH^7v
Рис. 14.Зв. m про-
изошло.
2 минуты ?
Рис. 14.36. г есть
событие «2 минуты
после события Л»,
или г = иа(Л).
-Д
Рис. 14,3г. А произошло.
т \fL
Ит
Рис. 14.3д. Последнее иэ со-
бытий т и k% равное Л, или
h = m-Hk\/k.Hm.
218
Глава 14
fug»? Очевидно, А равно событию /, если g уже произошло,
и событию gy если / уже произошло; в наших, символах:
«более позднее из событий f и g»=f- HgVg- Н/=А. В данном
случае / есть событие «5 минут после того, как термостат
достиг температуры 20,5°» (m), a g
есть событие «термостат достигает
температуры 22°» (k).
Теперь мы можем написать урав-
нения, которые определяют интере-
сующее нас состояние (L):
L = c' -р' -s' -б' -w' -А: (/ V DL),
h^mHk V fc-Hm,
m = U*(/).
Отметим еще одно обстоятельство:
нам нужно устранить из Hfe и Нт их
абсолютное значение «когда-либо
произошло»; для этого нам нужно при-
вести их к начальному состоянию (г)
вскоре после события А, скажем
через две минуты.
Схема показана на рис. 14.3а —
14.Зе. Для всех частей схемы (а, б,
в, г, д, е) предполагается, что собы-
тие длится достаточно долго, чтобы
оно могло привести к срабатыванию
реле и чтобы реле оставалось в этом
состоянии достаточно долго. Последнее необходимо, чтобы
через его контакты возбудилось другое реле.
Р и с 14 3 . L — пла-
мя топки зажжено.
4. Чувствительный светофор
Задача. Рассмотрим еще раз не особенно разумный свето-
фор на перекрестке Лоуэлл-авеню и Отис-стрит, о котором
говорилось выше. Он обычно дает зеленый свет для Лоуэлл-
авеню и красный для Отис-стрит, потому что движение
на Лоуэлл-авеню гораздо сильнее. Но если автомобиль под-
ходит по Отис-стрит и если истекала по крайней мере одна
минута после того, как зажегся Зеленый свет для Лоуэлл-
Алгебра состояний и событий. Приложение к некоторым задачам 219
авеню, то светофор меняет свет на зеленый для Отис-стрит
и на красный для Лоуэлл-авеню, причем зеленый свет
для движения по Отис-стрит длится 15 сек (после зелёного
света до перехода на красный в течение двух секунд
горит желтый свет).
Построить схему, которая будет управлять крас-
ным, желтым и зеленым цветами светофора для обеих
улиц.
Решение. Вот решение (не единственное). Мы можем
определить состояния светофора следующим образом:
Состояние
и
ц
ц
ц
и
Лоуэлл-авеню
зеленый
желтый
красный
красный
зеленый
Отис-стрит
красный
красный
зеленый
желтый
красный
Дл
ительность
неопределенная
2 сек
15 сек
2 сек
60 сек
Можно начать счет времени с перехода от Lx к L2. В течение
времени от 0 до 2 состояние светофора будет L2. В период
от 2 до 17 его состояние будет L3. В период от 17 до 19 его
состояние будет L4. В период от 19 до 79 его состояние будет
L6. В период от 79 до ш (омега) —до конца — его состояние
будет Lx.
В данной задаче два события. Первое событие: «авто-
мобиль подходит по Отис-стрит, т. е. автомобиль нажимает
педаль на Отис-стрит», мы обозначим через с. Второе событие:
«цикл начинается» (он начинается переходом от L1 к L2);
мы обозначим через h.
С чего начинается цикл? Какие условия определяют собы-
тие К> Это: а) прибытие автомобиля, если существует состоя-
ние Lx, и б) конец промежутка в 62 сек от начала состояния L4,
если в этот период (за 62 сек) по Отис-стрит подошел автомо-
биль. Ибо очевидно: если автомобиль подходит по Отис-
стрит в течение состояния L2 или L3, он может пройти пере-
кресток при зеленом свете состояния La и светофору не
нужно «помнить» об этом автомобиле и обеспечить его дви-
жение.
Какие уравнения будут соответствовать этим условиям?
220
Глава 14
Уравнения для описанных состояний и событий будут
иметь вид:
Л^с.^ VUe2(L4).USV,
^2 = US (ft),
£i«UiT(A).
Z*»US(A).
L1 = U?e(ft).
Мы можем заменить U82(L4) на U7fl(ft). (Примечание: мы
можем не учитывать того обстоятельства, что это ft есть
предыдущее, а не текущее ft, потому что для схемы это
безразлично.)
Уравнения для сигнальных цветов будут иметь вид:
Зеленый для Лоуэлл-авеню=^! V L6,
Желтый для ъ =L2,
Красный для » =L3V^4'
Зеленый для Отис-Стрит =L3f
Желтый для ъ =L4,
Красный для » =^iV^V ^5-
Схемы приведены на рис. 14.4. Первые 6 кулачков уста-
новлены на одном валу, и все они расцепляются с защелкой
под действием одного и того же события А. Седьмой диск
расцепляется под действием события с.
5. Мельница разводов с сигнализацией двоеженства
Рассмотрим теперь другую задачу, которую можно
решить с помощью алгебры состояний и событий. В ней
идет речь о «мельнице разводов с сигнализацией двоежен-
ства». Такая «мельница» действительно была однажды
построена автором и его коллегами.
Задача. В жизни мужчины могут произойти четыре
события: рождение, женитьба, развод, овдовение. Следова-
тельно, мужчина может находиться в пяти состояниях:
одинокий, женатый в первый раз, разведенный, овдовевший,
Алгебра состояний и событий. Приложение к некоторым, задачам 221
женатый во второй раз. Если мужчина женится во второй
раз, игнорируя такой незначительный факт, как необходи-
мость развестись или овдоветь, то он находится в состоянии
двоеженства.
«Мельница разводов с сигнализацией двоеженства»
имеет пять входных кнопок,- обозначенных: «Родился»,
«Женился», «Разведен», «Жена умирает», «Установка в
исходное положение». Она имеет пять белых выходных ламп,
обозначенных: «Одинокий», «Женатый первично», «Разве-
денный», «Овдовевший», «Женатый вторично», иодну красную
выходную лампу с обозначением «Двоеженство» и соответ-
ствующий звонок тревоги. Машина указывает соответствен-
но состояние мужчины, если с ним происходит какое-либо
из этих событий. Кроме того, она отказывается как-либо
реагировать, если нажата неправильная кнопка; например,
если человек в состоянии «разведен», а запрашивают о собы-
тии «родился», то никаких сигналов на выходе не будет.
Какие схемы должны быть в этой машине?
Решение. Условия, определяющие схемы этой маши-
ны, указаны в табл. 14.1 и 14.2. Каждое условие имеет та-
кой вид:
«Если лампа... горит и, пока она горит, нажата кноп-
ка..., то загораются лампы...»
В'табл. 14.1 указаны сокращенные обозначения из одной
буквы для состояний (лампы) и событий (кнопки).
По этой таблице мы можем составить вторую (табл. 14.2),
указывающую для каждого состояния, с каких событий
оно начинается и какими заканчивается.
В одном из последних разделов мы показали, что
общее уравнение для состояния S от одного события е
до другого события / имеет вид
S = /'(eVDS).
Используя это общее уравнение, мы можем написать
уравнение для состояния «одинокий!» ($):
s = (п Va)' (gc V Щ = п'а' (gc V Ds).
Аналогично
m = n' е'. k' af (sn \/Dm),
d = n'a'[(m V r)e V Dd],
Таблица 14.1
УСЛОВИЯ ДЛЯ МЕЛЬНИЦЫ РАЗВОДОВ С СИГНАЛИЗАЦИЕЙ ДВОЕЖЕНСТВА
Если лампа
•••• горнт
н, пока она горит»
кнопка. •. нажата:
«Родился» (с), «Женится» (л), «Разводится» (е), «Жена умирает» «Установка вис
(£), ходное положение»
то загораются лампы: <а)
«Одинокий» 5
«Женатый первично» т
«Разведенный» d
«Овдовевший» w
«Женатый вторично» г
«Двоеженство» b
«Зеленый начальный свет» g
изменения
нет
то же
т
г, Ь
г
г
г, Ь
вменения
нет
то же
изменения
нет
d
изменения
нет
то же
d
изменения
нет
то же
изменения
нет
w
изменения
нет
то же
w
изменения
нет
то же
g
g
g
g
g
g
изменения
нет
Таблица 14.2
СОБЫТИЯ, НАЧИНАЮЩИЕ И ЗАКАНЧИВАЮЩИЕ1КАЖДОЕ СОСТОЯНИЕ
Состояние Начинающее событие Заканчивающее событие
«Одинокий»
«Женатый первично»
«Разведенный»
«Овдовевший»
«Женатый вторично»
«Двоеженство»
«Зеленый начальный
свет»
5
т
d
w
г
Ъ
g 1
g-c
S-rt
{т\/rye
(m\/r)-k
(m V d\/w)-n
(m\/r)-n
(s\/m\/d\/w
V'
V b)a
л V a
n V e V k V a
л V a
n\Ja
e\/ k\/ a
a
с
224
Глава 14
w = п'а' [{ту г) k V Dw],
г « e'k'a' [(m V d\/w)nV Dr],
6 = a'[(mVr)nVD6],
g = c'[(s\j my d\/ w\/ r\/ b)a\/ Dg].
Чтобы достичь правильной работы схем, соответствую-
щих этим уравнениям, нужно учесть время срабатывания и
время отпускания шести реле, соответствующих состояниям
s, т% d, wt г% g.
Например, предположим, что реле g имеет минимальное
время срабатывания и отпускания, равное 5 мсек, а реле s
срабатывает и отпускает медленнее других реле — за 8 мсек.
Рассмотрим временные графики переменных g, с, s, Ds
в уравнении для Ds: s=*n'a'{gc\/Vs). Предположим, что
при нажатии любой кнопки любое из событий с, m, et k, а
длится не меньше 10 мсек, т. е. наверняка дольше, чем время
срабатывания и отпускания любого реле.
Но что произойдет, если событие с («родился») начинается
в момент 1 (измеренный в мсек) и продолжается до момента 11 ?
Событие с, происходящее в момент 1, пока существует состоя-
ние g% заставляет реле g (зеленый свет) начать отпускать
контакты, потому что это событие явилось завершением
состояния g. Поскольку g срабатывает или отпускает за
5 мсек, реле g в момент 6 полностью отпущено. В некоторый
момент, лежащий между моментами 1 и 6, скажем посере-
дине, т. е. в момент 31/2, ток уже не может течь через контакт
реле g. Следовательно, в момент 31/2 уже нельзя получить
функцию g>c. Поэтому реле s срабатывает за 21 /, мсек
от момента 1 до момента 31/2, но затем напряжение прекра-
щается и реле начинает отпускать. Блокирующий контакт
Ds реле s, конечно, не будет удерживать реле до момента 9,
так как время срабатывания реле s равно 8 мсек. Таким обра-
зом, уравнение s=n'a'(gc\/Ds) не будет выполняться.
(Описанное положение изображено в 1-й части рис. 14.6.)
Что нужно сделать?
Это можно исправить, соединив с каждым из шести реле
tt = s, m, d, w, г, q
второе реле, которое реализует D°u, где DQ означает
задержку в 9 мсек, и использовав то обстоятельство, что
" U U U I-. L. U Ь
i'l т 'Т Т Т "frasi ■ 1
Ф ф ф (?) б) (№Н Н'
лет дмГ пвршичю тШ шший япритю манвят \ Тп»
пы f t т <t v г л I^L
та
Г FT—Ц Ц . h
, Id'» IdV Ibv bv 4l
"1 и n 'i h ]
к I e, к It к |ц
Ш ш m ш m |t]«8s^
<y <y (y (q (9 (o
Й dV dV dV dv oi I
Алгебра состояний и событий. Приложение к некоторым задачам 225
реле D°u не будет отпускать, пока не пройдет 9 мсек после
начала отпускания реле ы. Тогда вместо шести состояний
в написанных выше уравнениях мы подставляем Dea.
Теперь наши схемы будут работать удовлетворительно.
. | Время в миллисекундах
\Часть!\ 0 t 2 3 ЗМ S $ 7 8 9 Ю // П 13 Н
я —U4—|—J.1—1—J
gc ——U
D5
\Часть^
9
V*q.c
Ds I I I I I I I I I I
jvDi' I I N I I I I ■ I—I—I—I—L_l
Рис. 14.6.
Чтобы проверить это, рассмотрим вторую часть рис. 14.6.
Предположим опять, что событие с («родился») начинается
в момент 1 мсек. Реле начнет отпускать, и его кон-
такты разомкнутся, положим, в момент Зх/2. Но теперь реле
D*gBce еще находится в сработанном состоянии и остается
в этом состоянии в течение 9 мсек после размыкания контак-
тов g. Следовательно, реле D0 убудет находиться в состоянии
«включеноъцо момента 121/^ Функция D0gc может быть реа-
лизована до окончания с в момент 11. Следовательно,
функция sVDs может быть реализована в период от первой
миллисекунды до конца рассматриваемого интервала.
В нашем общем уравнении есть еще одно противоречие,
которое мы должны устранить: в уравнение для т входит
226
Глава 14
логическое произведение п и п', которое, конечно, равно
нулю. Дело в том, что нужно различать нажатие, кнопки
«женится» (событие п) в первый раз и нажатие кнопки во
второй или следующий раз. Положим:
п1 = событие нажатия кнопки в первый раз,
я2 = событие нажатия кнопки во второй или в сле-
дующий раз.
Используя уравнение I1p = p-NH(Hp-Np), мы получаем
Л2 = П-
Уравнения схемы с этой поправкой будут иметь вид:
s=*n;-a'(Dbg-c VDs),
m = ri%-e'k'a' (D9s-n1 V Dm),
d = л;-a' [(D'm V D9r) e V Dd],
w = n'2-a' [(D9m V D9r) k V Dw\9
r = e'k'a' [(D9m V D9d V Ww) n2 V Dr],
6 « a' [(D9m V D9r) (л2 V D6)],
g = c' [(D9s V D*m V D'd V D'a; V Dgr V D*6) a V Dg].
Схемы показаны на рис. 14.5.
6. Животное-робот
Задача, рассмотрение которой мы только что закончили,
типична для задач программирования — задач, в которых
нам нужно программировать какое-нибудь устройство,
например робот, чтобы он вел себя заданным образом. Для
управления таким устройством часто бывает нужно преду-
смотреть 1) набор состояний для него и 2) переходы из одно-
го состояния в другое, когда происходят известные события.
Тогда каждое состояние определяет известное поведение
или деятельность. Робот — это машина, которая может
действовать самостоятельно; таким образом, это нечто боль-
шее, чем просто автомат — машина, которая движется
самостоятельно. Робот может воспринимать ощущения
посредством чувствительных элементов, выполнять действия
при помощи исполнительных органов и коррелировать ощу-
Алгебра состояний и событий. Приложение к некоторым задачам 227
щения и действия при помощи схем или механизмов, реали-
зующих один или несколько наборов инструкций. Эти
последние схемы и механизмы внутри робота составляют
его рудиментарный или развитый «орган мышления».
Мы отмечали выше, что деятельность робота может рас-
падаться на акты поведения нескольких видов. Например,
Скви, электронная белка-робот,.построенная автором и его
коллегами в 1950 — 1951 гг. и описанная в журнале «Radio
Electronics», декабрь 1951 г., осуществляет деятельность
трех видов:
1) «охоту» — отыскивание «ореха» (теннисного мйча),
который белка «хватает» в «руки» (две половины ковша,
находящиеся в передней части робота, которые могут откры-
ваться и закрываться);
2) «движение домой» — приближение к «гнезду» (пло-
ская металлическая пластинка);
3) «укладывание» — раскрывание «рук» по прибытии
в гнездо; при этом орех падает, а животное пятится, оставляя
орех в гнезде.
Эти три вида деятельности следовали один за другим;
два первых продолжались в течение неопределенного срока
в зависимости от событий; третий длился точно пять секунд.
Каждый из этих актов поведения управляется так называе-
мым «реле деятельности», или «программным релек 1) сово-
купность ощущений и условий, запускающая программу,
возбуждает реле; 2) в ходе данной деятельности сигналы,
считываемые контактами программного реле, позволяют
осуществлять различные действия, входящие в эту програм-
му поведения; 3) под воздействием совокупности ощущений
и условий, останавливающих программу, программное реле
отпускает контакты.
Рассмотрим задачу построения простого животного-
робота.
Задача. Построить робот, имитирующий поиск пищи,
еду>jgqr...К.избегание опасности. Какова должна быть схема
управления робота?
Решение. Целесообразно установить некоторые правила,
в том числе:
1) Когда бы ни появлялся сигнал «опасности», робот
немедленно начинает выполнять программу избегания опас-
ности, пока не приходит сигнал «безопасно».
Таблица 14.3
УСЛОВИЯ ПОВЕДЕНИЯ ЖИВОТНОГО-РОБОТА
Если состояние
животного...
Избегание
опасности d
0x9га за
пищей h
Еда е
Сон s
Опасность
Р
нет
изменения
d
d
d
Поиски
пищи f
то состояние
нет
изменения
е
нет
изменения
нет
изменения
и «ели происходит событие...
Сон
(усталость)
t
Безопасно
Я
животного переходит в...
нет
изменения
s
s
нет
изменения
h
нет
изменения
нет
изменения
нет
изменения
Больше не
голоден
i
нет
изменения
нет
изменения
5
нет
изменения
Просыпается
w
нет
изменения
нет
изменения
нет
изменения
h
Установка
в исходное
положение
о
h
нет
изменения
h
h
Алгебра состояний и событий. Приложение к некоторым задачам 229
2) В остальное время робот обычно ищет пищу, а когда
находит—ест, пока не будет «больше не голоден»*
3) Будучи «усталым», рн засыпает и спит, пока не «про-
снется».
Условия управления этим роботом представлены в
табл. 14.3 и 14.4; Уравнения для животного-робота будут
иметь вид:
d = q' -а' [(ЕРА V D4 V D2s) р V Dd],
А = />'./'./' [D2d-q V Ws-w V (D2d V D2e V D2s)a V DA],
e = //.r-/'.a'[D2A./vDe],
s = p'.«!' -a' [(D2A V D2*) / V D2e* V Ds].
Их можно реализовать схемами также, как в предыдущей
задаче.
Таблица 14.4
СОБЫТИЯ, НАЧИНАЮЩИЕ И ЗАКАНЧИВАЮЩИЕ КАЖДОЕ СОСТОЯНИЕ
Заканчивающее
Состояние | Начинающее событие событие
Избегание опасности d
Охота за пищей h
Еда е
Сон s
(*V'V*)P
dq\Jsw\/(d\/e\/ s)a
hf
(h\/e)t\/ei
q\fa
PVfVt
pV^V a
ГЛАВА 15
СИМВОЛИЧЕСКАЯ ЛОГИКА И ПРОГРАММИРОВАНИЕ
АВТОМАТИЧЕСКИХ ВЫЧИСЛИТЕЛЬНЫХ МАШИН
1. Логические операции при программировании
Пока мы выполняем математические операции с каран-
дашом в руке и, возможно, с помощью настольных счетных
машин, мы замечаем числовые операции, встречающиеся
при вычислении; но выполняя логические операции в голове
или на бумаге, мы часто не замечаем их. Однако как толь-
ко мы начинаем применять автоматические вычислитель-
ные машины, выполняющие длинные последовательности
вычислений, мы быстро обнаруживаем, что нужно обратить
внимание как на числовые операции, так и на нечисловые
операции, связанные с рассуждениями; и мы обнаруживаем,
чта полезно выражать логические операции в символах.
Эти символы дают нам могучее орудие, которого у нас
раньше не было. Кроме того, часто эти символы мож-
но приспособить к обычному математическому языку.
Тогда программа вычислительной машины уже не будет
двойственной; вся программа приобретает всецело матема-
тический, логический, символический характер.
2. Основные логические операции, которые должны
выполнять автоматические вычислительные машины
В автоматических вычислительных машинах нужно пре-
дусмотреть по крайней мере следующие логические операции.
1) Выбор.
Вычислительная машина по указанию р должна быть
способна выбрать одно число а или другое число Ь. Алгебраи-
ческое уравнение для операции/-шбора имеет вид
с = ар + Ь(1 — р).
Символическая логика и программирование 231
Здесь а и Ь — числа, а р —двоичная переменная, которая
может быть равна 1 или 0. Если р равно 1, то с равно а;
если р равно 0, то с равно Ь.
2) Сравнение.
Вычислительная машина должна быть способна сравни-
вать два числа и определять, равны они или нет. Алгебраи-
ческое уравнение для операции сравнения имеет вид
р = Т(а = Ь),
или, что равносильно, <7=Т (аФЬ). Если а равно Ь, то р
равно 1, a q равно 0. Если а не равно Ь, то р равно 0, a q
равно 1.
3) Проверка по допуску.
Вычислительная машина должна быть способна решать,
меньше ли* некоторая разность d по абсолютной величине,
чем некоторый положительный допуск t. Алгебраическое
уравнение для этой операции имеет вид
Р = Т(|а|<*).
Словами: р равно 1, если абсолютное значение от d меньше t\
в противном случае р равно 0. Этот критерий часто приме-
няют в автоматических вычислительных машинах, чтобы
определить, следует ли еще раз повторить цикл команд
или прекратить его.
4) Формирование последовательностей.
Вычислительная машина должна быть способна сравни-
вать несколько чисел, представленных на двух или более
входных лентах, определять, какое из них наименьшее (или
наибольшее), и записывать это число на выходной ленте.
Таким образом, две или более ленты последовательных
чисел можно объединить в одну ленту последовательных
чисел. Алгебраическое уравнение для этой операции (кото-
рая должна включать команду, устанавливающую, что
делать, если два представленных числа равны) имеет вид
d = q'T(a<b) + b-T(b<a) + c-T(a=b)t
где с обычно равно а или Ь.
Кроме того, в некоторых автоматических вычислитель-
ных машинах могут быть другие логические операции, как-
то: согласование, объединение, табулирование, сортировка,
импликация, отрицание, исключение и т. д.,—или может
232
Глава 15
оказаться необходимым ввести их в машину для того, чтобы
сделать ее действительно универсальной.
3, Символическая логика, выражающая работу
счетного механизма
Интересным примером слияния математики и логики
в вычислительных машинах служит счетно-перфорационная
машина, называемая табулятором (выпускается Междуна-
родной корпорацией деловых машин). Табулятор — это
машина, которая либо печатает информацию, содержащую-
ся в серии перфорированных карт, либо печатает по ним
итоговые данные, либо делает и то и другое.
Помимо прочих устройств, табулятор содержит счетный
механизм, который может обрабатывать числа из шести
десятичных цифр. Для управления его работой служит
коммутационная доска—набор гибких шнуров и штепсель-
ных гнезд (отверстий) в одной раме. Эта коммутационная
доска со шнурами, вставленными тем или иным образом
в гнезда, задает команды или программу для задачи, решае-
мой табулятором, причем расположение шнуров меняется
от задачи к задаче.
Рассматривая коммутационную доску табулятора, мы
видим четыре входа и один выход счетного механизма. Эти
4 входа следующие:
1) Набор из 6 гнезд—по одному на каждый разряд чисел,
называемый «Вход счетчика»; в этот вход поступает шести-
разрядное число а.
2) Одиночное гнездо с обозначением «Сложить», в кото-
рое поступает импульс р.
3) Одиночное гнездо с обозначением «Вычесть», в кото-
рое поступает импульс q.
4) Одиночное гнездо с обозначением «Общее управление
счетчиком», в которое поступает импульс г.
Логически импульс может быть равен только 1 (при
наличии импульса) или 0 (при отсутствии импульса); но
в действительности в машинах важна также синхронизация
импульсов. Выходом служит набор/из 6 гнезд с обозначени-
ем «Итоговый выход счетчика», который выдает число Ь,
Символическая логика и программирование 233
Мы можем выразить работу счетного механизма посред-
ством двух простых алгебраических уравнений. Обозначим
число, хранимое в счетчике в какой-либо момент, через А.
Тогда при любом цикле х
К - Л-1 (1 - Лс-i) + а* (Рх - Ях) + 999 999 pxqx
и
Что означают эти уравнения? Если поступает лишь
импульс р, то счетчик прибавляет а. Если поступает только
импульс q, то счетчик вычитает а. Если поступают и р
и qf счетчик прибавляет 999 999. Если поступает импульс г,
то итоговый выход счетчика выдает число, хранимое в счет-
чике, и счетчик одновременно гасится (очищается).
Очевидно, механизм был бы более гибким, если бы мы
могли считывать число в счетчике без гашения. Действи-
тельно, Международная корпорация деловых машин выпу-
скает модифицированный счетный механизм, в котором это
возможно.
Поскольку переменные a, ft и Л могут быть обычными
числами, этот метод относится к математике. Но р, q иг
суть двоичные переменные, которые могут принимать лишь
значения 1 или 0, подобно «да» или «нет», и этот метод отно-
сится к символической логике. Только при объединении
этих двух методов мы можем точно представить действие
счетного механизма.
4. Другие связи символической логики
с автоматическими вычислительными машинами
Но связь символической логики с автоматическими вычи-
слительными машинами гораздо шире, чем просто сочетание
символов символической логики и символов математики
в одних и тех же уравнениях. В программировании автома-
тических вычислительных машин мы встречаем ряд важных
вопросов, принадлежащих целиком к области логики,
а не математики.
Bqt некоторые из этих вопросов,
234
Глава 15
1) Какой набор команд достаточен для того, чтобы
указать автоматической вычислительной машине, как ре-
шать любую возможную математическую или логическую
задачу, для которой известен возможный способ решения?
2) Как задать вычислительной машине программу, что-
бы машина сама могла разрабатывать и использовать другие
программы?
3) Какой способ задания автоматической вычислитель-
ной машине команд или инструкций наиболее эффективен?
Некоторые из этих вопросов, конечно, трудны, и на них,
быть может, не удастся ответить еще в течение многих лет.
Однако на некоторые можно ответить в известной степени
и сейчас. Возьмем реальную задачу и посмотрим, как в ней
возникают логические вопросы.
5. Извлечение квадратного корня
Одной из задач, для которых требуется несколько под-
программ, является извлечение квадратного корня числа с
помощью итеративной формулы, т. е. формулы, которая
дает все лучший и лучший результат при каждом после-
дующем ее применении. Вот одна такая формула для квад-
ратного корня:
Хп+Х = ~2 (хп + Y/Xnh
где Y — число, из которого мы хотим извлечь квадратный
корень, а хп — последовательные приближения. Применяя
эту формулу, мы получаем каждый последующий раз все
более точное приближение к истинному квадратному корню.
Мы начинаем с какой-нибудь грубой догадки о квадратном
корне числа Y; эта первая грубая прикидка обозначается
через хг.
Для проверки метода найдем квадратный корень из 67,2.
Мы берем в качестве первой прикидки 8, потому что 8 на 8
будет 64, а 9 на 9 будет 81, между тем как 67,2 лежит между
этими числами. Таким образом, 8 есть наше первое прибли-
жение jc,. В первом цикле 67,2, деленное на 8, дает 8,4.
Среднее между 8 и 8,4 есть 8,20. Это и есть х2— наше второе
приближение. Оно точно до 3-й цифры. Во втором цикле
67,2, деленное на 8,20, дает 8,195122. Среднее между этим
Символическая логика и программирование 235
числом и 8,20 есть 8,197561. Это и есть хг— наше третье
приближение. Оно точно до 6-й цифры. Результат следую-
щего цикла будет 8,1975606125, или х4. Он точен до 10-й
цифры. Таким образом, мы видим, что при помощи разумной
прикидки и двух или трех делений мы можем получить ту
точность, которая нам обычно нужна.
Хорошие итеративные формулы носят аналогичный
характер: они быстро дают приближение к истинной вели-
чине и очень полезны для автоматических вычислительных
машин. При решении этой задачи на машине мы различаем
5 подпрограмм: подпрограмму для считывания данных
из входного устройства в устройство хранения; подпрограм-
му для применения формулы один раз; подпрограмму, опре-
деляющую, нужно ли повторить формулу во втором цикле;
подпрограмму подготовки к повторению и подпрограмму
передачи ответа из устройства хранения в выходное устрой-
ство и остановки. Третья подпрограмма, определяющая,
нужно ли повторить цикл, является чисто логической.
6* Автоматическая вычислительная машина Z
Представим себе мысленно и опишем простую автомати-
ческую вычислительную машину, способную выполнять
эту программу. Назовем ее машиной Z.
Машина Z имеет входную ленту, выходную ленту и 70 ре-
гистров для хранения (как* правило) 8 десятичных разрядов.
Машина Z имеет арифметическое устройство, которое может
принять в один канал наименование операции ОР, принять
в два других канала два числа а и Ь и выдать результат с
из четвертого канала:
с = аОРЬ.
Машина Z имеет регистр программ, который хранит
все последовательные команды, управляющие машиной.
Мы можем вводить числа или команды в этот регистр или
выводить их. из него. Некоторые (но не все) числа будут
иметь значение команд для машины Z. Регистр программ
обычно хранит 5 разрядов: первых два разряда изображают
номер команды я, средний разряд изображает тип команды k,
а последних два разряда обычно изображают номер регист-
236
Глава 15
pa л В каждом цикле команда п, ft, г, хранимая в регистре
программ, указывает машине, что нужно делать в этом
цикле.
Мы предполагаем, что числа ft, изображающие тип ко-
манды, могут меняться от 0 до 9. Используя эти 10 чисел,
мы будем обладать достаточной свободой, чтобы указать
машине все, что ей нужно делать при извлечении квадрат-
ного корня. Номера г регистров могут меняться от 10 до 79.
Регистры 10—49 обычно хранят команды с таким же номе-
ром, что и номер этого регистра; регистры 50—69 обычно
хранят числа, с которыми производятся вычисления; а реги-
стры 70—79 обычно хранят константы.
Из этих наборов чисел нас больше всего интересуют номе-
ра типов команд. За каждым ft следует некоторое л Эти
числа ft имеют следующие значения:
Если ft равно 0, то машина передает операцию, хранимую
в регистре г, в арифметическое устройство и переходит
К следующей по номеру команде.
Если ft равно 1, то машина передает число, хранимое
в регистре г, в регистр -арифметического устройства а
и переходит к следующей по номеру команде.
Если ft равно 2, то машина передает число, хранимое
в регистре г, в регистр арифметического устройства Ь
и переходит к следующей по номеру команде.
Если ft равно 3, то машина передает результат из ариф-
метического устройства в регистр г и переходит к следую-
щей по номеру команде.
Если ft равно 4, то машина передает число, записанное
на входной ленте, в регистр г и переходит к следующей
по номеру команде.
Если ft равно 5, то машина передает число, хранимое
в регистре г, на выходную ленту и переходит к следующей
по номеру команде.
Если ft равно 6, то машина получает приказ перейти
к команде г (получив ее из регистра г), вместо того чтобы
перейти к следующей по номеру команде (как машина делает
обычно).
Если ft равно 7 и если число в регистре 69 равно 1, то
машина получает приказ перейти к приказу г; если ft равно 7
и число не равно 1, то машина переходит к следующей по
номеру команде.
Символическая логика и программирование 237
Если k равно 8 и если число в регистре 69 равно 1, то
машина получает инструкцию перейти к команде, хранимой
в регистре г; если k равно 8 и если число не равно 1, то
машина переходит к следующей по номеру команде.
Если k равно 9, то машина останавливается.
Некоторые из номеров регистров, которые могут сле-
довать за номером типа команды £=0, суть 70, 71, 72, 73,
74, 75. Эти регистры содержат сигналы, подготавливающие
вычислительную машину соответственно к б операциям:
70—передача
71 —сложение
72—вычитание
73—умножение
74 — деление
75 — неравенство
с=а\
с=а+Ь\
с = а—Ь\
с = а-Ь;
с = а: Ь\
с = Т{офЬ).
7. Программа для извлечения квадратного корня
Программа для извлечения квадратного корня с помо-
щью машины Z приведена в табл. 15.1.
Таблица 15 J
ПЯТИРАЗРЯДНАЯ КОМАНДА (ХРАНЯЩАЯСЯ В РЕГИСТРАХ КМ-44)
Подпрограмма
1. Считывание данных
из входного устрой-
ства в устройство
хранения
2. Выполнение форму-
лы один раз
Номер
п
10
11
12
13
19
20
21
22
-Тип
k
4
4
4
6
0
1
2
3
Регистр
г
50
56
51
19
74
50
56
52
Значение
Ввести У в регистр 50
Ввести Х\ в регистр 56
Ввести V2 в регистр 51
Перейти к команде 19
Приказ иделение* в
арифметическое ус-
тройство
У в арифметическое
устройство
хп в арифметическое
устройство
Y/xn в регистр 52
Подпрограмма
Продолжение табл. 15.J
Номер
п
Тип
k
Регистр
г
Значение
3. Определить, сле-
дует ли повторить
или нет
4. Подготовка к пов-
торению
23
24
25
26
27
28
29
30
32
33
34
35
36
37
38
39
0
1
3
0
1
2
3
6
0
1
2
3
7
6
0
1
71
52
53
73
53
51
57
32
75
56
57
69
38
43
70
57
Приказ «сложение* в
арифметическое уст-,
ройство
Y/xn в арифметиче-
ское устройство
xn+Y/xn в регистр 53
Приказ «умножение*
в арифметическом
устройстве
Хп+У/Хп в арифме-
тическое устройство
1/2 в арифметическое
устройство
1/2(*П + *7*п) = ХП+1
в регистр 57
Перейти к. команде 32
Приказ «неравенство*
в арифметическое
устройство
хп в арифметическое
устройство
хп+1 в арифметическое
устройство
Т(хпФхп^) в ре-
гистр 69
Перейти к команде 38,
если в регистре 69
единица
Перейти к команде 43
Приказ ^передать* в
арифметическое уст-
ройство
Старое xn+i в ариф-
метическое устрой-
ство, приравнять
новому х„
Симвдлинеская логика и программирование 239
Продолжение табл. 15.1
Подпрограмма
5. Передача ответа из
устройства хране-
ния в выходное
устройство и оста-
новка
Номер
л
40
41
43
44
Тип
k
3
6
5
9
Регистр
г
56
19
57
44
Значение
Новое хп в регистр
Перейти к команде
xn+i в регистре
56
19
57
в выходное устрой-
ство
Остановка
Первая подпрограмма состоит из команд 10, 11, 12.
Здесь мы считываем данные с входной ленты в регистры
машины. Затем мы переходим к приказу 19.
-\ Далее выполняется подпрограмма № 2. Командами
19-г-29 мы охватываем деление, сложение и умножение,
требуемые итеративной формулой* Затем мы переходим
к приказу 32.
В подпрограмме № 3 приказами 32ч-35 мы охватываем
неравенство; мы проверяем два последовательных прибли-
жения, чтобы определить, равны они или не равны. Если
они не равны, то мы записываем в регистр 69 единицу
(на практике мы будем полагать, что если разность меньше
известного допуска, то они равны).
Теперь мы приступаем к операции выбора программы.
Применяя команду 36, мы переходим к команде 38 тогда
и только тогда, когда в регистре 69 стоит 1, иными словами,
когда хп и *п+1 не равны. Если в регистре 69 стоит 0, иными
словами, если последние два х равны, то мы переходим
к следующей команде 37, которая направляет нас к коман-
де 43.
Командами 38^-40 мы исключаем хп из итеративной фор-
мулы в подпрограмме № 2 и вводим вместо него яп+1. Затем
командой 41 мы переходим к подпрограмме № 2, по которой
будет вычисляться следующее приближение.
Командой 43 мы считываем окончательное значение
искомого корня х на выходную ленту и следующей командой
останавливаем машину.
Таким образом, мы видим, как можно программировать
извлечение квадратного корня при помощи машины.
240
Глава 16
В этой программе нам нужно было ввести операцию
установления неравенства, которая относится скорее к логи-
ке, чем к математике. Мы должны были ввести различные
подпрограммы; это логика, а не математика. Мы должны
были предусмотреть разветвление инструкций; это логика,
а не математика. Мы должны были предусмотреть средства,
которые позволили бы машине самой решать, когда нужно
остановиться по формуле и выдать ответ; это также логика,
а не математика.
Можно предвидеть, что в дальнейшем будет происходить
все большее слияние между числовой математикой, с одной
стороны, и нечисловыми рассуждениями, или символиче-
ской логикой,— с другой. Уже сейчас существуют машины,
играющие в игры, машины, отделяющие истинные сочета-
ния высказываний от ложных сочетаний, и другие типы
машин для обработки информации, работа которых основы-
вается скорее на логических, чем математических способ-
ностях. Символическая логика, разумные машины и мате-
матика будут и впредь многообразно и существенно обога-
щать друг друга.
ИЗБРАННАЯ БИБЛИОГРАФИЯ
/• Символическая логика. История
Буль, Джордж, Исследование законов мысли,
(Boole George, Investigation of the Laws of
Thought, London, Eng., Walton, 1854.)
Переиздавалось много раз, в частности в издании Dover Publi-
cations, New York. Основополагающий труд Буля.
Буль, Джордж, Математический анализ логики.
(Boole George, The Mathematical Analysis of
Logic, Cambridge, England, 1847.)
Переиздано в Oxford Press, New York, 1948.
В e н н, Джон, Символическая логика. (Venn Jo h.n,
Symbolic Logic, London, Eng., Macmillan & Co., 1894.)
Содержит 19 задач с решениями (стр. 331—359).
Д о д ж с о н К. Л. (Л ь'ю ис Кэрролл), Символи-
ческая логика, ч. 1. [Dodgson С. L. (Lewis
Carroll), Symbolic Logic, Part I, Elementary, 4 th
edition, London, Eng.i Macmillan & Co., 1897, 232 pp.1
Перепечатано в 1955 г. фирмой Berkley Enterprises, Newton-
ville, Mass. Содержит неподражаемые и увлекательные задачи
Льюиса Кэрролла по символической логике, его метод решения
(нынеустаревший) и наброски частей II и III, которые так и не бы-
ли им написаны (он умер в 1898 г.).
Хантингтон Э. В., Системы независимых постулатов
для алгебры логики. (Huntington Е. V., Sets
of Independent Postulates for the Algebra of Logic,
Trans. Amer. Math. Soc, V, 1904, pp. 288—309.)
Источник, из которого взяты постулаты, приведенные в гл. 6.
242
Избранная библиография
Рассел Б, и Уайтхед A. H.f Начала математики,
в 3-х т. (R u s s е 1 1 В. and Whitehead A. N.,
Principia Mathematica, 3 vols., Cambridge, Eng., The
University Press, 1910—1913.)
Значительная веха на пути попыток возвести основания мате-
матики на прочном логическом базисе небольшого числа неопреде-
лимых понятий и недоказуемых .утверждений.
Шеннон, Клод, Символический анализ схем из ре-
ле и переключателей. (Shannon Claude Е.,
A Symbolic Analysis of Relay and Switching Circuits,
Trans. Amer. Inst. Electr. Enginrs, vol. 57, 1938, pp. 713—
723.)
Перепечатано в 1952 г. фирмой Berkeley Enterprises, Newtonville,
Mass. Первое применение булевой алгебры к реле и схемным эле-
ментам типа «да—нет».
2. Символическая логика
в современном изложении
Пфейфер, Джон. Символическая логика. (Р f е i f-
f е г John Е., Symbolic Logic, In Scientific American,
December, 1950, vol. 183, N 6, pp. 22—24, обсуждение
этой статьи см. в Scientific American, February, 1951,
vol. 184, № 2, pp. 2—6.)
Интересное н занимательное введение в символическую логику
и возможности ее применения. В обсуждении исправлены некоторые
неточности статьи. Вероятно, читатели будут несогласны с некото-
рыми нз наиболее оптимистических суждений этой статьи.
Лэнджер С, Введение в символическую логику. (L а п-
ge г S. К, An Introduction to Symbolic Logic, Boston,
Mass., Houghton Mifflin Co., 1937, 363 f>p. Перепечатано
фирмой Dover Publications, New York.)
Хорошее введение с упором на философскую сторону предмета.
Блек М., Критическое мышление. Введение в логику
и научный метод. (Black Max, Critical Thinking.
An Introduction to Logic and Scientific Method, New
York, Prentice Hall, Inc., 1946, 402 pp.)
Интересное н полезное изложение.
Беркли Э., Булева алгебра (Методика действий с «И»,
«ИЛИ», «НЕ» и условиями) и её приложения к страхо-
вому делу. [Berkley Е., Boolean Algebra (The
Избранная библиография
243
Technique for Manipulating «And», «Or», «Not», and Con-
ditions) and Applications to Insurance, Record of the
American Institute of Actuaries, vol. -26, part 2, Oct.,
1937, pp. 373—414; vol. 27, part I, June, 1938, pp. 167—
176.]
Обсуждение этой работы с участием Т. Н. Э. Гревилля, Г. М. Са-
рае он а и Э. К. Беркли опубликовано в этом же журнале) vol. 27,
part 1, June, 1938, pp. 167—176.
Перепечатано в 1952 г. фирмой Berkeley Enterprises, Newtonville,
Mass.
Применение булевой алгебры для устранения противоречий
и упущений в реальных договорах и правилах.
Беркли Э., Краткий очерк символической логики и ее
практических применений. (Berkeley Е.,А Summary
of Symbolic Logic and its Practical Applications, New-
tonville, Mass., Berkeley Enterprises, 4th printing, 1957,
24 pp.)
Правила вычислений с помощью булевой алгебры; краткое
описание других раэделоз символической логики; применение буле-
вой алгебры к вычислительным машинам, схемам и договорам;
приводится много полных задач и решений.
Беркли Э., Символическая логика. 20 задач и решений.
(Berkeley Е., Symbolic Logic — Twenty Problems
and Solutions, Newtonville, Mass., Berkeley Enterprises,
2nd printing, 1955, 28 pp.)
Содержит двадцать полных задач по булевой алгебре и другим
разделам символической логики, в том числе ранее не опубликован*
ные задачи Льюиса Кэрролла и Джона Венна и ряд новых. Руко-
водство по применению символической логики в реальных ситуациях.
ТарскийА. (Tarski A., Introduction to Logic, and
to the Methodology of the Deductive Sciences, New York,
Oxford University Press, 1941,239 pp.). [Русский пере-
вод: Введение в логику и методологию дедуктивных наук,
ИЛ, М., 1948.]
Первоклассное введение в символическую логику» основанное,
больше на математических, нежели на философских примерах.
Вуджер Дж., Аксиоматический метод в биологии.
(Woodger J. Н., The Axiomatic Method in Biology,
Cambridge, Eng. The University Press, 1937, 174 pp.)
Гл. 2, стр. 18—52, представляет собой превосходное краткое из-
ложение основных понятий математической логики, основанное на
идеях книги «Principia Mathematica».
244
Избранная библиография
К а р н а п Р., Введение в символическую логику и ее
применения. (С а г n а р R., Introduction to Symbolic
Logic and its Applications, trans, by Wm. H. Meyer and
J. Wilkinson, New York, Dover Publications, Inc., 1958,
241 p.)
Квайн, Уиллард Ван Орман, Математическая
логика. (Q u i n е, W i 1 Г а г d Van О г m an, Mathe-
matical Logic, New York, W. W. Norton & Co,, Inc.,
1940, 348 pp.)
Д э й в и с M. (Davis М., Computability and Unsolvability,
New York, McGraw-Hill Book Co., Inc., 1958, 210 pp.)
3. Символическая логика
и переключательные схемы
Кейстер У.,Ритчи А. иУошберн С, Проекти-
рование переключательных схем. (К е i s t е г W.,
Ritchie А. Е. and W a s h b и г n S. Н., The Design
pf Switching Circuits, New York, D. Van Nostrand Co.,
1951, 576 pp.)
Беркли Эм Схемная алгебра. Введение. (Berkeley Е.,
Circuit Algebra—Introduction, Newtonville, Mass;,
Berkeley Enterprises, 1953, 34 pp., переработанное изда-
ние.)
Видоизмененная булева алгебра, включающая время, которая
применима к схемам типа «да — нет» как статическим, так и после-
дов ател ь ностн ым.
Колдуэлл С, Переключательные схемы и логический
синтез. (Caldwell S. R, SwitchingCircuits and Logical
Design, New York, John Wiley & Sons, Inc., 1958,686 pp.)
[Готовится4 русс кий перевод: Логический синтез релейных устройств,
М., ИЛ.]
4. Логический синтез рассуждающих
и вычислительных машин
ф и с т е р М., Логический синтез цифровых вычислитель-
ных машин. (Phister Montgomery, Logical
Избранная библиография
246
Design of Digital Computers, New York, John Wiley
<S Sons, Inc., 1958, 408 pp.)
Беркли Э., Гигантские мозги, или Думающие машины.
(Berkeley Е.,Giant Brains or Machines that Think,
New York, John Wiley <S Sons, Inc., 1949, 270 pp.)
Глава 9 посвящена описанию вычислителя логической истин-
ности Калина — Буркгарта.
Беркли Э. и ЕнсенР., Конструирование электриче-
ских мозгов. (Berkeley Е. and Jensen R. А.,
Constructing Electric Brains, Newtonville,Mass., Berkeley
Enterprises, 3rd printing, 1957, 40 pp.)
Перепечатка серии тринадцати статей, опубликованных в Radio
Electronics, Oct. 1950—Oct. 1951.
В них объясняется, как устроена автоматическая вычислитель-
ная машина, как она может складывать, вычитать, умножать, делить
и решать задачи автоматически.
Беркли Э., Брейниаки. Простые электромозговые ма-
шины и как их сделать, включая «гениаки»и «тиниаки».
(Berkeley Е., Brainiacs — Simple Electric Brain
Machines and How to Make Them — Including Geniacs
and Tyniacs, Newtonville, Mass., Berkeley Enterprises,
1955—1958, 198 pp.)
Собрание 8 отчетов с описанием задач и решений и со схемами
151 машины «Брейннак» (Brainiac) — малых электрических машин,
которые могут рассуждать нлн производить арифметические нлн логи-
ческие вычисления, решать головоломки, играть в игры (в том числе
в скрестнкн н нолнкн»н в «ннм»),пррверятьс помощью тестов умствен-
ное развитие, шифровать и дешифровывать и т. д. Используется
набор «Brainiac К. 17» для конструирования малых электромозго-
вых машин. Пять нз этих брейннаков описаны в гл. 8 и 9 настоящей
книги.
5. Разное
Томсон Дж., Предвидимое будущее. (Thomson
Sir George Paget, The Foreseeable Future, London
Eng., Cambridge University Press, 1955, 166 pp.) [Pyc'
ский перевод: Предвидимое будущее, Mi, ИЛ, 1958.]
/. Общая литература по математической
логике
Новиков П. С, Элементы математической логики%
Физматгиз, М.г 1959.
Систематический современный курс основ, математической ло-
гики, включая очерк аксиоматической арифметики.
Гильберт Д. и АккерманВ,, Основы теоретк*
ческой логики, пер. с нем., ИЛ, М., 1947.
Учебник по математической логике, написанный в 1928 г. и
в. основном сохранивший свое значение, хотя кое в чем он уже
устарел.
Я н о в с к а я С. А., Математическая логика и основания
математики, в сб. «Математика в СССР за сорок лет
(1917—1957)», т. I, Физматгиз, М., 1959.
Большая обзорная статья о развитии математической логики
и исследований по основаниям математики в СССР с 1917 г. Подроб-
ное перечисление трудов советских ученых в этих областях.
Марков А. А., Логика математическая, БСЭ, 2-е изд.,
т. 25, 1954, стр. 338—341.
Кольман,Э„ Значение символической логики, в сб.
«Логические исследования», Йзд-во АН СССР.М,, 1959,
стр. 3—19.
Общая статья об истории развития и современном значении мате-
матической, или символической, логики.
Дополнительная библиография
247
К л и.н и С К., Введение в метаматематику, пер. с англ.,
ИЛ, М., 1957.
Обширная монография по математической логике» снабженная
большой библиографией.
Субботин А. Л., Математическая логика — ступень
в развитии формальной логики, «Вопросы философии»,
1960, № 9, стр. 93—99.
Обсуждаются связи математической логики с предыдущими
системами формальной логики.
Субботин А. Л., Что дает нам знание формальной логи-
ки, «Вопросы философии», 1961, № 4, стр. 142—150.
Популярная вводная статья о математической логике и ее при-
менениях.
Гетманова А. Д., О соотношении математики и логики
в системах типа Principia Mathematica в сб. «Логические
исследования», Изд-во АН СССР, М., 1959, стр. 189—
217.
2. Булева алгебра (алгебра логики)
Волков М,, Логическое исчисление, Спб, 1888.
Первый русский учебник по алгебре логики (и математической
логике вообще).
Кутюра Л., Алгебра логики, пер. с франц., изд-во «Ma-
thesis», Одесса, 1909.
Эта книга до сих пор остается наиболее полным общедоступным
курсом булевой алгебры на русском языке, хотя ряд разделов ее
устарел. Термин сбулева алгебра» в ней еще не употребляется,
говорится просто об «алгебре логики», как это было принятое XIX в.
Книга подводит итог развитию алгебры логики XIX в. Большое
внимание уделено в ней работам русского ученого П. С. Порецкого.
Биркгоф Г., Теория структур, пер. с англ., ИЛ, М.,
1952.
Монография о булевых алгебрах и их обобщениях — так назы-
ваемых сструктурах». Излагается современная концепция булевой
алгебры и затрагивается ряд интересных логических вопросов;
однако изложение рассчитано на квалифицированных математиков.
См. также книги Новикова и Гильберта — Аккермана из пре-
дыдущего раздела библиографии и книги Гаврилова и Ногинского —
Харкевича из следующего раздела.
248 Дополнительная библиография
3. Технические применения математической
логики
Эренфест П., Рецензия на книгу Л. Кутюра «Алгебра
логики», «Журнал Русского физ.-хим. о-ва, Физ*
отдел», 1910, т. 42, отделение 2, вып. 10, стр. 382—387.
Первое упоминание о возможности применения алгебры логи-
ки к анализу релейных схем.
Герсеванов Н.М., Применение математической логи-
ки к расчету сооружений, Собр. соч., т. I, Стройвоен-
мориздат, М., 1948, стр. 123—204.
Перепечатка работы, опубликованной в 1923 г.
Шестаков В. И., Алгебра двухполюсных схем, построен-
ных исключительно из двухполюсников (алгебра А-схем),
«Журнал технической физики», 1941, т. 11, вып. 6,
стр. 532—549.
Одна из первых работ по применению булевой алгебры к анали-
зу и синтезу релейных схем (частичное изложение кандидатской
диссертации автора, защищенной в 19д8 г.).
Гаврилов М. А., Теория релейно-контактных схем,
Изд-во АН СССР, М.—Л., 1950.
Первая монография по применению булевой алгебры (алгебры
логики) в теории релейно-контактных схем.
Рогинский В. Н. и X а р к е в и ч А. Д., Релейные
схемы в телефонии, Связьиздат, М., 1955.
Изложение основ алгебрологической теории релейно-контакт-
ных схем в применении к схемам телефонии:
Автоматы, сб. статей под ред. К- Э. Шеннона и Дж.
Маккарти, пер. с англ., ИЛ, М., 1956.
Сборник статей по логической теории конечных автоматов
и так называемым машинам Тьюринга.
Яновская С. А.,О некоторых чертах математической
логики и отношении ее к техническим приложениям, в
сб. «Применение логики в науке и технике», Изд-во АН
СССР, М., 1960, стр. 3—21.
Общая статья о развитии математической логики и ее техни-
ческих приложений с обзором работ советских авторов.
Дополнительная библиография
249
Марков А. А.» Математическая логика и вычислитель-
ная математика, «Вестник АН СССР», 1957, № 8,
стр. 21—25.
Популярная статья.
Поваров Г. Н., Логика и автоматизация, в сб. «Логи-
ческие исследования»,. Изд-во АН СССР, М., 1959,
стр. 300—314.
Популярно-обзорная статья. Обширная библиография.
Поваров Г. Н., Логика на службе автоматизации и тех-
нического прогресса, «Вопросы философии», 1959, № 10,
стр. 48—62.
Общая статья о развитии и современном состоянии техничес-
кой логики.
Поваров Г. Н., Событийный и сужденческий аспекты
логики в связи с логическими задачами техники, в сб.
«Применение логики в науке и технике», Изд-во
АН СССР, М., 1960, стр. 415-420.
Обсуждаются вопросы логики событий применительно к техни-
ческим проблемам.
4. Мозг и машина*
Винер Нм Кибернетика, или Управление и связь в жи-
вотном и машине, пер. с англ., изд-во «Советское радио»,
М., 1958.
Проблемная книга, вышедшая впервые в 1948 г. и вызвавшая
многочисленные и ожесточенные споры. Книга ставит в развернутой
форме вопрос об аналогии между мозгом и современными управляю-
щими и вычислительными машинами.
Колмогоров А. Н., Кибернетика, БСЭ, 2-е изд.,
т. 51, 1958, стр. 149—151.
Полетаев И. А., Сигнал, изд-во «Советское радио»,
М., 1958.
Обзорно-популярная книга по кибернетике. Большая библио-
графия.
* При ознакомлении с этой литературой следует учитывать
наличие дискуссии (см. предисловие редактора перевода) и соответ-
ствующее расхождение точек зрения.
250 Дополнительная библиография
Косе а П., Кибернетика, пер. с. франц., ИЛ, М., 1958.
Обзор но-критическая книга.
Ивахненко А. Г., Техническая кибернетика, Гостех-
издатУССР, Киер, 1959.
Монография. В одном нэ разделов обсуждается проблема «мозг—
машина».
Моисеев В. Д., Вопросы кибернетики в биологии и меди-
цине, Медгиз, М., 1960.
Обзорная книга. Большая библиография.
Теплое Л., Очерки о кибернетике, изд-во «Московский
рабочий», М., 1959.
Популярная книга.
Соколовский Ю. И., Кибернетика настоящего и бу-
дущего, Харьковское книжное изд-во, Харьков, 1959.
Популярно-обзорная книга.
Нейман Дж., Вычислительная машина и мозг, пер.
с англ., «Кибернетический сборник», вып. 1, ИЛ, М.,
1960, стр. 11—60.
Проблемная статья.
Тьюринг А., Может ли машина мыслить?, пер. с англ.,
Физматгиз, М., 1960.
Общая.работа с приложением статьи Дж. Неймана «Общая и ло-
гическая теория автоматов».
Ро венский 3., УёмовА. и Уёмова Е., Машина
и мысль (Философский очерк о кибернетике), Госпо-
литиздат, М., 1960.
КопнинП. В., Понятие мышления и кибернетика, «Вопро-
сы философии», 1961, № 2, стр. 103—112.
Гуляев П. И., Мозг и электронная машина, Л., 1960
(О-во по распространению полит, и науч. знаний РСФСР,
Ленингр. отд-ние).
Маккалок У. С. и Питтс В., Логическое исчисление
идей, относящихся к нервной Активности, в сб. .«Автома-
ту», пер. с англ. ИЛ, М., 1956, стр. 362—384,
Дополнительная библиография 251
Одна из первых работ по применению математической логики
к описанию деятельнбстйГмозга.
Гааз е-Р аппопортМ. Г., Автоматы и живые орга-
низмы (Моделирование поведения живых организмов),
Фйзматгиз, М., 1961.
Популярная книга.
Симпозиум по проектированию машин, имитирующих по-
ведение человеческого мозга, пер. с англ., «Кибернети-
ческий сборник», вып. 1, ИЛ, М., 1960, стр. 61—98.
Доклады на симпозиуме в Институте радиоинженеров в 1955 г.
(США) и дискуссии по ним.
СузерлендУ. Р., Магглин М. Дж. и С у з е р-
л е н д И., Электромеханическая модель простых жи-
вотных, пер. с англ., «Кибернетический сборник», вып. 1,
ИЛ, М.. 1960, стр. 257—274.
Э ш б и У. Р., Схема усилителя умственных способностей,
в сб. «Автоматы», пер. с англ., ИЛ, М., 1956,
стр. 281—305.
5. Современные вычислительные машины
и программирование
Кобринский Н. Е. и Пекелис В. Д., Быстрее
мысли, изд-во «Молодая гвардия», М., 1959.
Популярная книга о развитии вычислительной техники и ки-
бернетики, касается также и проблемы «мозг — машина».
Китов А. Им Электронные цифровые машины, изд-во
«Советское радио», М., 1956.
Изложение основ и обзор состояния исследований.
Китов А. И. и Криницкий Н. А., Электронные
цифровые машины и программирование, Физматгиэ,
М., 1959.
Систематический учебный курс. Описание советских машин.
Подробное изложение методики программирования.
Трахтенброт Б. А., Алгоритмы и машинное решение
задач, Гостехиздат, М., 1957.
Популярная книга.
252 Дополнительная библиография
М а к -К р а к е н Д. Д., Программирование для цифровых
вычислительных машин, пер. с англ., ИЛ, M.t 1960.
Учебник.
Гинодман В. А., Механизация учета и вычислитель-
ных работ, Машгиз, М., 1950.
Описание счетно-клавишных и счетно-перфорационных машин
(табуляторы и др.).
ПРИМЕЧАНИЯ РЕДАКТОРА ПЕРЕВОДА
1 (к стр. 26). Термины «символическая логика» и «математиче-
ская логика» обычно употребляются как точные синонимы, обозна-
чая одно и то же направление современной логики, которое на данном
этапе развития можно определить в общем как изучение форм мысли:
понятий, суждений и умозаключений с помощью логических исчи-
слений. Нетрудно видеть, что это и стоит как раз за «тремя чертами»,
о которых говорит Беркли. О существе этого направления уже гово-
рилось в предисловии редактора перевода. Обычно символическая,
или математическая, логика рассматривается как часть формальной
логики.
Термин «математическая логика» более распространен в рус-
ской литературе, чем термин «символическая логика», и, пожалуй,
он лучше отображает важнейшую особенность рассматриваемого
направления логики — использование логических исчислений.
Термин «логистика» у древних греков означал просто искусство
счета. Как новое название математической, или символической,
логики он был предложен, в 1904 г. на Международном философском
конгрессе. Однако практически под «логистикой» большей частью
понимают лишь символико-логическую систему английского логика
и философа Б. Рассела и поэтому нередко связывают термин «логи-
стика» с «логицизмом»— философией математики Рассела, хотев*
шего свести всю математику к логике» что ему, однако, не удалось.
Что касается термина «аксиоматический метод», то он означает
собственно сведение всех истин («теорем») той или иной теории,
например геометрии, к немногим исходным положениям («аксиомам»,
или «постулатам»), уже недоказуемым в данной теории, и сведение
всех понятий теории к немногим основным понятиям, далее в этой
теории неопределимым. Современный строгий аксиоматический метод
254
Примечание редактора перевода
действительно сливается с математической" логикой., ибо он целиком
построен на применении логических исчислений. Однако в более
простой форме аксиоматический метод был известен весьма давно»
задолго до возникновения математической логики, и применялся»
хотя и без полной формальной строгости» Евклидом» Ньютоном и др.
2 (к стр. 27). Если считать.символическую, или математиче-
скую» логику частью или направлением логики» хотя бы и подра-
жающим математике или применяющим ее методы» то вопрос о соот-
ношении символической» или математической» логики и математики»
конечно, будет зависеть от вопроса о соотношении логики и матема-
тики вообще. Этот последний вопрос» весьма тонкий и сложный, был
предметом длительных споров, в ходе которых некоторое пытались
сводить либо математику к логике (Б. Рассел и др.); ^ибо, наоборот,
логику к математике. В общем можно считать, что логика и мате-
матика — весьма родственные и взаимосвязанные, но отнюдь не
тождественные области. Отсюда вытекает, что символическая, или
математическая, логика не есть часть математики, хотя на практике
большинство специалистов по математической логике принадлежат
к профессиональным математикам.
3 (к стр, 29). Трехтомный труд двух английских логиков
и философов Б. Рассела и А. Н. Уайтхеда —«Princfpia mathematica»
действительно сыграл большую роль в истории математической
логики и значительно способствовал развитию и усовершенствова-
нию логической символики и логических исчислений. Однако руко-
водившее авторами намерение полностью формализировать мате-
матику с помощью логических исчислений, связанное с их «логи-
цизмом» и их философскими взглядами, которые с марксистских
позиций неоднократно оценивались как идеалистические, потер-
пело неудачу, так как авторы не смогли обойтись без содержатель-
ных, неформализируемых аксиом при рассмотрении математической
бесконечности.
4 (к стр. 29). Этот перечень разделов символической логики,
как нетрудно видеть, составлен чисто эмпирически. Он не вполне
строг (не указаны основания деления) и, как намекает автор словами
«по крайней мере», .не полон. Здесь просто указываются ведущие
направления исследований, как они в первом приближении вырисо-
вываются в практике работ по символической логике на текущий
момент-
Примечание редактора перевода
255
Из остальных направлений можно указать, например, исследо-
вания по модальной логике, т. е. исследования суждений с несколь-
кими возможными логическими значениями (скажем, типа «невоз-
можно — возможно — необходимо» или «да — нет — бессмысленно»,
вместо обычного «да — нет»), и исследования по семантике, т. е.
исследования соотношений между дедуктивными (аксиоматическими)
теориями и удовлетворяющими им системами объектов. Однако
эти две области символической логики еще недостаточно разрабо-
таны, и в них много дискуссионного, спорного.
5 (к стр. 37). Операторы (Аде) и (Ех) часто называются кванто-
рами, т. е. «количественными определителями», так как они опреде-
ляют, к какому количеству предметов относится высказывание;
правда, такое определение в данном случае весьма примитивно,
сводясь к указаниям: «хотя бы один» и «все». Оператор (Ах) назы-
вается тогда квантором общности, оператор (Ех) — квантором суще-
ствования-, иногда в русской литературе используются также латин-
ские названия: «универсальный квантор» для (Ах) и «экзистен-
циальный квантор» для (Ех).
6 (к стр. 46). Такой ответ, конечно, связан с точкой зрения
автора на «разумные машины» и в конечном счете сводится к воп-
росу о различии между мозгом и машиной (см. предисловие редак-
тора перевода).
7 (к стр. 52). Большую роль в развитии булевой алгебры, как
и математической логики вообще, сыграли наши русские ученые.
В частности выдающемуся русскому логику XIX в. П. С. Порец-
кому принадлежат глубокие исследования по булевой алгебре
(«алгебре логики»), оказавшие серьезное влияние на ее дальнейшее
состояние.
8 (к стр. 52). См. Предисловие редактора перевода, IV.
9. (к стр. 102). Такие «разумные» светофоры применяются также
и в Советском Союзе. См., например, Г. Никитин, Умные светофоры,
«За рулем», 1959, № 4, стр. 28.
Оглавление
Предисловие редактора перевода . . . 5
Предисловие 19
Глава 1. Символическая логика. Введение 23
1. Чем занимается символическая логика? 23
2. Что такое символическая логика? 25
3. Сравнение символической логики и математики .... 26
4. Простой пример символической логики 27
5. Разделы символической логики 28
Глава 2. Символическая логика. Основные понятия .... 30
1. Иллюстративный пример 30
2. Предметы, или элементы 31
3. Один ..., другой .... еще один 32
4. Свойства, особенности, роды, виды 33
5. Отношения 34
6. Высказывания, суждения, утверждения, предложения 35
7. Связки высказываний 35
8. Оператор общности и оператор существования .... 37
9. Три формулировки ответов, переписанные на языке
символической логики 38
10. Оператор класса 38
11. Относительное произведение 39
12. Определение родственных отношений 39
13. Главные понятия символической логики 41
14. Можно ли выразить оперативными символами какие-
либо другие отношения? 46
Глава 3. Булева алгебра. Введение 48
1. Часть символической логики с полезными приме-
нениями 48
2. Слова, принадлежащие булевой алгебре 49
Оглавление 257
3. Типичная задача и ответ из булевой алгебры .... 49
4. Происхождение булевой алгебры . . 51
5. Как булева алгебра связана с обычной алгеброй? ... 52
6. Понятие класса 54
Глава 4. Булева алгебра. Основные понятия 57
1. Исходные положения 57
2. Распознавание понятий булевой алгебры, выраженных
на обычном языке 60
3. Включение классов ■ 61
4. Равенство классов 64
5. Неравенство классов 65
6. Нулевой класс 65
7. Классы, которые не являются пустыми 66
8. И; распознавание классов несколькими способами . . 67
9. Отрицание класса 68
10. Исключение 69
11. ИЛИ (И/ИЛИ, ИЛИ ЖЕ) 70
12. Нулевой класс и универсальный класс 71
13. Только ... может быть 72
14. Последний пример 72
15. Сводка переводов 73
Глава 5. Булева алгебра. Вычисления 76
1. Сводка правил для символических вычислений с по-
мощью булевой алгебры 76
2. Пример вычислений 79
3. Почему верны правила вычислений в булевой алгебре? 81
4. Сводка правил для графических вычислений с по-
мощью булевой алгебры 82
5. Пример графического вычисления 86
Глава б. Булева алгебра. Математическое определение ... 88
1. Математическое определение булевой алгебры .... 88
2. Система постулатов 89
3. Интерпретации булевой алгебры 91
4. Интерпретация с помощью значений истинности пред*
ложений 94
Глава 7. Разумные машины 100
1. Существуют ли в действительности разумные машины? 100
2. Пример разумной машины 100
3. Как машина сохраняет знания? 102
258
Оглавление
4. Разумные операции .над информацией .. . 104
5. Типы разумных машин ; . .', 105
6. Принятые названия разумных машин , 109
7. Основные принципы разумных машин . ПО
Глава 8. Малые разумные машины. Некоторые простые задачи 113
1. Поведение машин 113
2. Переключатели 116
3. Проектирование малых разумных машин ...... 119
4. Задача об освещении вестибюля 119
5. Задача о завещании Брюса Кемпбелла 122
Глава 9. Малые рассуждающие машины. Силлогистическая
машина и другие задачи 127
1. Задача о силлогистической машине 127
2. Задача о вычислителе логической истинности . . . . 135
3. Задача о рассуждении редактора журнала 138
4. Рассуждают ли эти машины? 141
Глава 10. Большие вычислительные машины. Задача сло-
жения десятичных чисел 143
1. Десятичная таблица сложения в физическом воплощении 144
2. Десятичная таблица сложения, выраженная переключа-
телями на десять положений 145
3. Критические замечания 147
4. Таблица десятичного сложения, выраженная с по-
мощью восьми двухпозиционных переключателей . . 148
5. Первый выход 51 149
6. Второй выход С\ 150
7. Следующие три выхода 52, 54, 58 153
Глава 11. Большие вычислительные машины. Проблемы хра-
нения, передачи, и организации 157
1. Другие задачи для вычислительных схем 157
2. Организация автоматической вычислительной машины 158
3. Конкретный пример организации 159
4. Синхронизация . . . .161
5. Передача информации 162
6. Схема является общей . 163
Глава 12. Большие вычислительные машины. Сложение,
вычитание, умножение и деление Двоичных чисел . . 164
1. Сложение двух четырехразрядных двоичных чисел 164
Оглавлений 259
2. Уравнения булевой алгебры для двоич-ного сложения 165
3. Схемы двоичного сложения 167
4. Усовершенствование схем 169
5. Вычитание двух четырехразрядных двоичных чисел 170
6. Схемы для двоичного вычитания . 173
7. Умножение двух четырехразрядных двоичных чисел 176
8. Деление двоичных восьмиразрядных чисел на двоичное
четырехразрядное число 182
Глава 13. Алгебра состояний и событий. Основные понятия 190
1. Обобщенная булева алгебра, включающая время ... 190
2. Единицы времени 192
3. Ступенчатые функции 192
4. Новые операторы и их определения 196
5. Оператор ЗАДЕРЖКА 196
6. Оператор ПРОИСХОДИТЬ 200
7. Функциональные операторы в обычной алгебре и ана-
лизе 202
8. ДО, ПОСЛЕ, ПРИХОД и ОСТАВЛЕНИЕ .... 203
9. ПЕРВЫЙ РАЗ, ВТОРОЙ РАЗ 205
10. Заданные моменты 206
11. Состояния и события 208
Глава 14. Алгебра состояний и событий. Приложение к некото-
рым задачам 209
1. Применение алгебры состояний и событий к анализу
работы схемных элементов 209
2. Задача сигнализации 212
3. Автоматическая нефтяная топка 216
4. Чувствительный светофор 218
5. Мельница раз водов с сигнализацией двоеженства . . . 220
6. Животное-робог . . 226
Глава 15. Символическая логика и программирование ав-
томатических вычислительных машин 230
1. Логические операции при программировании .... 230
2. Основные логические операции, которые должны
выполнять .автоматические вычислительные машины 230
3. Символическая логика, выражающая работу счетного
механизма 232
4. Другие связи символической логики с автоматиче-
скими вычислительными машинами 233
260
Оглавление
5. Извлечение квадратного корня 234
6. Автоматическая вычислительная машина Z . \ . . . 235
7. Программа для извлечения квадратного корня . . . 237
Избранная библиография 241
1. Символическая логика. История 241
2. Символическая логика в современном изложении ... 242
3. Символическая логика и переключательные схемы . . . 244
4. Логический синтез рассуждающих и вычислитель-
ных машин 244
5. Разное . . . . 245
Дополнительная библиография 246
Примечания редактора перевода 253
Э. Беркли
СИМВОЛИЧЕСКАЯ ЛОГИКА И РАЗУМНЫЕ МАШИНЫ
Редактор Г. МОСКАТОВ Художник И. Литеишко Художественный
редактор В. Шаповалов Технический редактор Л. Харьковская
Корректор Е. С. Терентьева
Сдано в производство 10/1П 1961 г. Подписано к печати I7/VIH 1961 г.
Бумага 84X1081/32-4 J, бум. л. 13,5 печ. л., в т/ч 1 вкл. Уч.-изд. л. 11,8.
Изд. № 1/0 439. Цена I р. 03 к. Эак. 997.
ИЗДАТЕЛЬСТВО ИНОСТРАННОЙ ЛИТЕРАТУРЫ.
Москва, 1-й Рижский пер., 2
Московская типография №/5 Мосгорсовнархоза.
Москва, Трехпрудный пер., 9.