
Предисловие
Время воспоминаний в моей жизни. Воспоминания разные. В данном случае это воспоминание о профессии. Нереализованной в полной мере ввиду обстоятельств неодолимой силы, подкинутых мне историей нашего государства, с которым мы трагически разошлись в потребностях: в конце прошлого века мне нужна была высококвалифицированная работа, а государству не нужна была электронная промышленность. Совсем. Вообще. С момента получения диплома МФТИ по специальности «радиоэлектронные устройства» до упразднения министерства электронной промышленности СССР прошло немногим более десяти лет, но все эти годы были тягучим осознанием скрытой безработицы, когда молодые родственники партийных боссов с удовольствием ездили зарубеж на госденьги, закупая там всю возможную электронику. И вопрос о том, зачем было штурмовать совсем не лёгкое образование и что мне с ним делать, сверлил мозг не мне одной. В конце концов я приземлилась на заводе полупроводниковых приборов недалеко от дома. К выпуску продукции меня не допустили всё в связи с той же скрытой безработицей, поскольку с продукцией были связаны премиальные, охотников до которых было более чем достаточно среди солидных, работавших на заводе давно мужчин. К числу таковых относился и заведующий лабораторией конструкторского бюро, где я работала. И чтобы не упустить те заветные премиальные, он напрочь отказывался повышать квалификацию на курсах с отрывом от производства. И я ездила на эти многочисленные курсы вместо него с большим удовольствием. Там я познакомилась со статичностью FORTRANа — языка программирования древних уже вычислительных машин, для которых использовались перфокарты — карточки тонкого картона, где набивались машинные коды. FORTRAN имел в качестве теоретической базы концепцию мгновенного перехода автомата из одного состояния в другое. И описывался автомат набором состояний составляющих его частей. Естественно, пришлось изучить и стандартный ASSEMBLER, что потом пригодилось очень в программировании первых отечественных контроллеров в пусконаладочном управлении, куда я ушла с завода. Развитие навыков в автоматизации продолжалось весьма недолго: предприятия предпочитали импортную автоматику, которая была надёжней и проще в управлении. Но иностранцы, немцы в основном, лезть «в душу» своей техники не позволяли никоим образом.
Уже в пусконаладочном управлении я успела познакомиться с Microsoft Office для Windows. Сказать, что была поражена и очарована — значит ничего не сказать. Объект, виртуальное существо, способное реагировать на сигналы внешнего мира, навсегда вошёл в мою жизнь. Я увидела, что человек всё настойчивей создаёт себе подобных: топор и пила — продолжение руки, объект — стремление управлять и контролировать, поскольку он являет собой совокупность кодов как единую цель для воздействия и управления. Объект тестирует определённые ячейки памяти, связанные с датчиками, и в качестве реакции переходит к одной из своих подпрограмм, которые содержит в себе как свойства. Только после знакомства с объектами я поняла, что бесконечный цикл — это не караул. Такой цикл, постоянно тестирующий внешние ячейки, — это контакт объекта с миром, получение информации извне и реакция на неё.
Информатика, исходя из её названия, понимается как наука об информации. Итак, к каким же выводам я пришла по поводу информации по истечении семидесяти лет моей жизни в человеческом исчислении? Мне удалось продлиться все эти годы. Могу сказать, что выводы мои могут быть значимыми потому, что жизнь моя не была ни исключительно удачной, ни отвратительно тяжёлой, что делало бы высказывания слишком сосредоточенными на собственной персоне. А так… это выводы среднестатистического человека об окружающем мире и людях.
Информацией для субъекта является такое воздействие, внешнее или внутреннее, которое соответствует его воспринимающим структурам и классифицировано им.
Строго отделить субъект от окружающего мира весьма непросто. Всё живое вплетено в этот мир и, только взаимодействуя с ним, получает возможность длиться, то есть жить. Это стремление длиться и есть основное свойство живого. Несущийся в безвоздушном пространстве камень не уклоняется от удара со встречным. Как сказали бы живые: «ему всё равно». А у живого в процессе эволюции возникли структуры, позволяющие принимать и оценивать сигналы извне, чтобы избежать опасности быть разрушенным и продолжить своё существование. У человека способность восприятия различных внешних воздействий развилась до таких пределов, что он стал отождествлять себя с внешним миром, приписывая ему свои свойства. Чего стоит только понятие времени как физической величины. Оторвитесь от Земли, и исчезнут часы и минуты. В бескрайней пустоте им просто не за что зацепиться. Даже атомные часы не смогут исключить внешних влияний и будут привязаны к конкретному месту измерений. Иное понимание времени напоминает предрассудки школьного учителя. Живому остаётся просто длиться по мере сил своих. Настоящее, прошлое и будущее пребывают в нас одновременно. Это просто наш опыт общения с миром, тем самым, которым мы рождены. И чем точнее мы воспринимаем этот мир, чем адекватнее интерпретируем воздействия, тем дольше длимся. Разве любое действие субъекта не связано с предвидением будущего результата? Мы бы не сделали ни шагу, если бы не знали, что обопрёмся ногой на твёрдую поверхность. Не стали бы открывать дверь, если бы не знали, что она не туман. А за дверью мы с очевидностью прошлого опыта ожидаем только нечто определённое. Вероятность — изобретение, помогающее восполнить недостаток опыта. Всякое событие может явиться случайным для нас, если мы не знаем механизмов его возникновения. Событие называют достоверным по отношению к некоторому испытанию, если в ходе этого испытания оно, на наш взгляд, обязательно произойдёт, как мы полагаем из нашего предыдущего опыта. Например, достоверным, на наш взгляд, будет появление одного из шести чисел на верхней грани игральной кости при единичном её бросании. Это если брошенная кость не окажется под столом вне зоны видимости. Извлечение белого шара из коробки, где, по нашим сведениям, только белые шары, будет рассматриваться как достоверное, но шар может изменить цвет под влиянием неведомых нам воздействий. И коробка может не иметь дна, о чём мы и не подозреваем. А представьте, что, в стремлении вынуть из коробки белый или чёрный шар, мы вынем оттуда красный или вообще не шар, или вообще ничего не вынем? Статистика изучает явления массовые, когда нет возможности отследить траектории отдельных событий. Тоже попытка проникнуть в будущее, систематизировав свой опыт.
А прошлое: разве свет далёких звёзд не приносит нам его каждую ночь, то есть каждый цикл вращения Земли?
Причина и следствие? Посмотрите на снимок космоса, сделанный с предельной чёткостью и выдержкой. Это же просто блестящее бесконечное полотно: мириады звёзд сливаются в сплошной ковёр. Что, по-вашему, происходит с этим ковром? Наверняка ваш ответ — ничего. Ничего! Для вас он не меняется и не изменится на протяжении вашей жизни. А между тем это миллиарды миров, в каждом из которых на момент рассмотрения происходят миллиарды событий! Что там причина, что следствие — для нас ничего. То есть это просто вопрос масштаба происходящего.
Для нас нет информации вне опыта. При первой встрече, например, мы опишем инопланетный корабль как серую стальную сигару или тарелку. При этом и говорящий, и слушатель одинаково понимают определения серый, стальной и существительные сигара и тарелка, исходя из предыдущего жизненного опыта. Но если инопланетяне зачастят к нам в гости, то может случиться, что вновь выведенный сорт огурца мы опишем словами «да он похож на стандартный инопланетный корабль». Опыт копит стандарты, посредством которых затем можно выразить что-то новое.
Это, собственно, и есть то главное, что мне хотелось сказать, если не потомкам в целом, то хотя бы детям своим. Далее будут просто воспоминания о тех разделах информатики, которые я преподавала в школе и в институте и которые мне были интересны. Я сама изобретала определения и даже формулы, поскольку в те далёкие годы учебники страдали словоблудием и отсутствием конкретики. О теперешних умолчу из чувства такта. Итак…
Информатика как наука о языках
Единица количества информации (бит) — это ответ типа да/нет на вопрос о наличии объекта, его качества или количества. При этом сам объект, запрашиваемое качество или количество должны быть однозначно определены.
Нельзя спросить, например, «сколько?» Только вопросы типа «7 или нет?», «Больше 7?», «Не меньше 7?» дадут в ответе один бит информации.
Нельзя спросить «Какой это треугольник?» Только вопрос «Этот треугольник равносторонний?» даст в ответе один бит. При этом мы знаем предварительно и что такое треугольник, и что означает качество равносторонний.
Имеем восемь неких файлов. Если мы не знаем, есть ли в них нужная нам информация, то будем открывать их один за другим, пока не найдём искомое. Возможно, придётся открыть все восемь и ничего не найти. Для выяснения мы должны иметь возможность получить эти восемь ответов типа да/нет, всякий раз получая 1 бит при открытии файла. Каждый полученный бит позволит нам не обращаться к уже проверенному файлу, то есть будет составлять наш информационный ресурс.
Информационный ресурс аналогичен материальному, так как даёт возможность экономить время и силы на поиск. Он означает знание ответов типа да/нет на определённое количество соответствующих вопросов.
Когда мы знаем, что информация обязательно есть в одном из файлов, то это уже есть ресурс в один бит. И нам в самом неблагоприятном случае придётся задать всего семь вопросов для завершения поиска.
Требуемым информационным ресурсом будет такое количество бит, которое позволит завершить поиск при самой неудачной последовательности шагов.
Оценить требуемый информационный ресурс — это определить количество тестов или количество вопросов для выбора одного из массы объектов или качеств. Когда возможностей тестирования недостаточно, прибегают к теории вероятностей. Но задачи поиска объекта по весу, например, который единственный отличается от всех остальных, дают возможность значительно сократить требуемый информационный ресурс. Эти задачи и приводятся в учебниках для расчёта количества нужных бит. Для этого все объекты (монеты или мешки с песком) разделяют на две равные по количеству части, а если общее количество является нечётным, то один мешок откладывают. При этом, если разделённые части равны по весу, то, выходит, отличие было в отложенном мешке. Если же вес частей оказался разным, то деление пополам продолжают с той части, которая оказалась большего или меньшего веса, в зависимости от заданного отклонения отличающегося объекта. Так, чтобы найти мешок с весом меньше стандартного из совокупности в 13 мешков, их разделяют на части по шесть и шесть, отложив один мешок в сторону. Проводим один замер — получаем один бит. Если одна из частей весит меньше положенного, то пополам делят её количество мешков. Имеем три и три мешка. И ещё один замер — один бит. Там, где вес меньше, придётся опять отложить один мешок и сравнить оставшиеся два — это ещё один бит. Итого нужно иметь возможность проведения трёх замеров для определения нужного отклоняющегося объекта. Или требуемый информационный ресурс — три бита. Никто не исключает, конечно, возможности сразу после первого замера определить отклоняющийся мешок. В этом случае им окажется отложенный. Но требуемый ресурс — это количество замеров, исключающее удачу.
Откладывают необязательно один объект. Например, чтобы определить нестандартный из девяти мешков, можно отложить в сторону сразу три. Если оставшиеся шесть удовлетворяют стандарту, то нужно взвесить два мешка из отложенных. Но если какой-то из шести отличается, то взвесить два из его тройки. Так потребуется всего два бита для определения отклоняющегося объекта из девяти.
Обмен информацией (знаниями ответов на вопросы) производится с использованием как естественных, так и технических языков. Язык использует алфавит для образования своих основных объектов — слов. Алфавит — это определённый заранее набор разных знаков, из которых составляют слова. Знаки (символы) алфавита ортогональны, то есть несводимы один к совокупности других операциями «последовательный набор» или «размещение». Слова образуют по правилам грамматики конкретного языка (размещают символы сверху вниз, например, слева направо или справа налево). Информацией, однако, может быть не только слово, но и отдельное внешнее или внутреннее воздействие, если оно вызывает принятие решения (уходить от опасности, например, или сохранять спокойствие).
Кодирование — операция преобразования слов одного алфавита в слова другого без потери смысла.
Слова каждого конкретного языка образуют последовательным размещением его символов во времени (устно) или пространстве (письменно). В формальных языках любая цепочка знаков алфавита называется словом, а количество символов в алфавите называют его мощностью.
Слова — это коды вещей и действий. Гораздо более абстрактные, чем картинки. Они необходимы для коммуникаций. В звуковом виде в атмосфере, в письменном или сигнальном виде в космосе. Чем больше слов мы имеем в языке, тем точнее можем передать информацию. Сколько же слов определённой длины может породить определённый алфавит, если позволить его символам повторяться в словах? Будем иметь в каждой позиции слова возможность использовать любой его знак. Поэтому количество разных слов определённой длины будет просто мощностью алфавита в степени, равной длине слов. Например, слова двоичного алфавита длиной в два символа будут такими: 00, 01, 10, 11 (количество вариантов в первой позиции, равное двум, умноженное на такое же количество вариантов во второй позиции).
Однако не все алфавиты допускают повторение символов в слове. В звуковом алфавите два подряд одинаковых символа могут сливаться и восприниматься как один, давая ложное представление о символе двойной длительности (в азбуке Морзе решающую роль играют прерывания сигнала). Слова из сигнальных огней разного цвета, если исключить последовательное мигание, также будут давать впечатление одного символа вместо нескольких при размещении рядом символов одного цвета.
В этом случае количество возможных символов в каждой следующей позиции слова будет уменьшаться на единицу, исключая уже использованный символ. Так, если N — мощность алфавита, то количество разных слов длины в одну позицию будет N, а слов длиной в две позиции будет уже N* (N-1), поскольку повторное использование первого символа невозможно.
Разных слов длины n будет N* (N-1) * … * (N- (n-1)). И если заданная длина слов совпадёт с количеством символов алфавита, то разные слова будут порождаться просто перестановкой символов, а их количество будет рассчитываться по формуле N* (N-1) *…*1. Формула так и зовётся количеством перестановок.
Состав смесей невзаимодействующих компонентов в химии можно также назвать словом, пока к ним не добавлен катализатор, вызывающий реакцию. Или состав сложного вещества, которое можно представить состоящим из отдельных элементов (пропорции — дополнительная характеристика).
В том случае, когда нас интересует только «состав слова», без учёта порядка размещения элементов в нём, количество разных комбинаций знаков такого алфавита или количество его разных слов определённой длины можно получить из предыдущей формулы, если количество возможных сочетаний N* (N-1) * … * (N- (n-1)) разделить на количество перестановок внутри самих слов с одинаковым составом. Состав из трёх элементов, например, на алфавите из пяти символов даст разнообразие смесей 5*4*3, но в этом разнообразии разными будут считаться и слова с внутренней перестановкой одних и тех же символов. Разных же по составу «слов» будет в шесть раз меньше в соответствии с количеством перестановок элементов внутри одинаковых по составу слов. То есть меньше в 3*2*1 раз (abc, acb, bac, bca, cba, cab).
Рассмотренные формулы работают, разумеется, на длинах слов, не превышающих мощности алфавитов.
В итоге можно заметить, что чем больше символов в алфавите, тем короче могут быть слова, описывающие разные понятия. Для кодирования шестнадцати понятий языком с алфавитом в два символа нужны, например, слова длиной не менее четырёх знаков, поскольку 16 равно двум в степени 4. Иначе нам не хватит разных слов. Но шестнадцатеричный алфавит может закодировать эти 16 понятий, используя всего лишь по одному своему символу на каждое.
Логика для получения информации
В предыдущем разделе мы ворочали мешки, чтобы получить бит информации, но информацию можно добыть, просто рассуждая и делая выводы. Логика позволяет извлекать нужную информацию из совокупности утверждений. Бывает, что размышления и выводы спасают жизнь: помогают нам длиться.
Здесь не будет рассуждений о предикатах — утверждениях о наличии или отсутствии связи между объектами и их свойствами, не будет описаний таблиц инстинности. Об этом я вспоминать не буду. Это есть в любом учебнике логики. Расскажу лучше, что в логике мне было мило и важно. Важно независимо от мощностей искусственного интеллекта, который, давая сведения, зафиксированные людьми во всемирной сети, размышлений никогда не заменит.
Суровые годы скрытой безработицы были использованы мной в том числе и для чтения. Так я познакомилась с чудесной книгой штатовского математика Рэймонда Смаллиана. Она называлась «The Lady or the Tiger?», что в переводе превратилось в «Принцесса или тигр?». Тут же мной была выдвинута, на мой взгляд, совершенно правдивая история возникновения описанной в ней логики. Я предположила, что это жестокий шах даёт узникам своей долговой тюрьмы подобные логические головоломки, чтобы, развлекаясь, миловать самых, на его взгляд, умных. Участь же остальных была печальна. И хотя в реальной книге о таком сюжете не было сказано ни слова, но я, решая эти задачки, представляла, что за одной из дверей меня ждёт голодный тигр. Это больше соответствовало настроениям в нашей стране в то время.
Итак, вот что, например, говорится в первой из выбранных мной логических задач: в тюрьме две двери, одна ведёт на волю, за другой открытая клетка с голодным тигром. На дверях таблички. Табличка на первой двери гласит: «По крайней мере за одной из дверей выход». Табличка на второй двери: «Тигр только за другой дверью». Тихий голос шаха сообщает: «Таблички, если истинны, то обе. И если ложны, тоже обе.» Ну что? Нельзя же в тюрьме сидеть вечно: умрёшь от голода. Надо решать. И несчастный решает, какую дверь открыть. Если истинны обе таблички, то надо, разумеется, открывать вторую дверь, ибо её табличка говорит, что тигр за первой дверью. Но если обе таблички ложны, то выхода нет вообще. Ну что, читатель? Как поступим? Я бы рискнула в любом случае и открыла вторую дверь.
Не все задачки столь просты, но метод их решения один — самый распространённый в логике метод исключения противоречий. В следующей задачке таблички на дверях одинаковы. На них написано: «Выход за обеими дверьми». Но тихий голос кровожадного шаха вещает: «Если выход за первой дверью, то всё верно. Но если там тигр, то это, конечно же, ложь. А вот если выход за второй, то это именно её утверждение ложно.» Читатель поймёт, конечно, что лучше пробовать вторую дверь, потому что она сулит свободу в любом случае.
Или вот замысловатая задачка: первая табличка гласит «Что ни выбери — всё едино.» Вторая табличка сообщает, что «Выход за другой дверью.» Если обе не врут, то выходит, что шах просто отпускает должника! Но нет… Вот и его вкратчивый голос: " Всё верно только если за первой дверью действительно выход… Но если там тигр, то, сам понимаешь, вторая табличка лжёт. И первая лжёт вслед за ней. А ведь это значит, что не всё едино.» Тут узник делает единственный непротиворечивый вывод и уверенно открывает вторую дверь.
Бесплатный фрагмент закончился.
Купите книгу, чтобы продолжить чтение.