Здравствуйте, Serginio1, Вы писали:
S> А так как являюсь сторонником Вирта. То в его книге "Алгоритмы + Структуры данных = Программы"
S> На первом месте стоят именно Алгоритмы.
Цитирую упомянутую книгу Вирта:
Итак, у нас были две причины начать книгу главой о строении данных. Во-первых, мы интуитивно понимаем, что данные предшествуют алгоритму, ведь прежде, чем выполнять какие-либо операции, нужно иметь объекты, к которым они применяются.
Так что Вирт, кажется, больше согласен со мной.
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Здравствуйте, Sinclair, Вы писали: S>Я совершенно не понимаю твоего стремления использовать нестандартную трактовку термина "модель". S>Ты зачем-то приписываешь к термину "модель" слово "инженерная". А
Потому что по образованию я инженер. Инженер-системотехник, если быть точным. Хотя зарабатываю программированием, паяльник в руках держать не разучился. Ну и на изучение моделей всяких там транзисторов убил в вузе достаточно много времени.
Здравствуйте, beroal, Вы писали: B>Потому что по образованию я инженер. Инженер-системотехник, если быть точным. Хотя зарабатываю программированием, паяльник в руках держать не разучился. Ну и на изучение моделей всяких там транзисторов убил в вузе достаточно много времени.
Ну что ж, чем раньше ты избавишься от неверной трактовки терминов — тем лучше. А то помнишь, как капитан Врунгель Фуксу грот набивать скомандовал?
... << RSDN@Home 1.1.4 beta 4 rev. 347>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, AVC, Вы писали: AVC>Модели бывают разные. В программировании мы (ИМХО) имеем дело с математическими моделями (иногда говорят "структурами"). AVC>Это давно устоявшееся в математике понятие. Оно означает некоторое множество объектов и набор применимых к ним отношений и операций. AVC>Я думаю, что такие модели и имеются в виду.
Вы имеете в виду алгебраические модели, которые отличаются от алгебраических систем тем, что не имеют операций (только отношения)?
Здравствуйте, beroal, Вы писали:
AVC>>Модели бывают разные. В программировании мы (ИМХО) имеем дело с математическими моделями (иногда говорят "структурами"). AVC>>Это давно устоявшееся в математике понятие. Оно означает некоторое множество объектов и набор применимых к ним отношений и операций. AVC>>Я думаю, что такие модели и имеются в виду. B>Вы имеете в виду алгебраические модели, которые отличаются от алгебраических систем тем, что не имеют операций (только отношения)?
Примерно.
Единственное, что меня здесь немного смущает, — то, что термины иногда понимаются по-разному.
С понятием "математической структуры" я познакомился давно (еще студентом).
Прочитал популярную книгу И.Яглома — кажется, "Математические структуры и математическое моделирование".
Математическая структура понималась как множество(а) и набор отношений, связывающих элементы множества.
Примерно так: S = <M; R>
Особенностью алгебраических структур были операции, когда элементу(ам) ставился в соответствие другой элемент, принадлежащий этому множеству, а не отношение (т.е. "булевский тип"). (Конечно, алгебраические структуры являются также математическими . Например, бинарная операция c = a * b можно представить как тернарное отношение R(a, b, c).)
В книге Яглома понятие математической структуры приписывалось (наверное, справедливо) Бурбаки (группе французских математиков) и было связано с "философским" вопросом о единстве математики ("одна математика или много математик").
Когда я познакомился с этим понятием, оно стало попадаться мне на каждом шагу.
Например, в старой (но неплохой) обзорной книге Глушкова "Безбумажная информатика" то же самое называлось математической моделью.
Когда мне на глаза попалась книга Ахо, Ульмана и Хопкрофта, то я увидел, что они пользуюся тем же понятием. Только оно у них приняло форму "математическая модель плюс операторы в рамках этой модели". (Короче, терминология немного "плавает", но смысл остается.) Привожу цитату из первой главы их книги:
Абстрактный тип данных — это математическая модель плюс различные опера-
операторы, определенные в рамках этой модели. Как уже указывалось, мы можем раз-
разрабатывать алгоритм в терминах АТД, но для реализации алгоритма в конкретном
языке программирования необходимо найти способ представления АТД в терминах
типов данных и операторов, поддерживаемых данным языком программирования.
Для представления АТД используются структуры данных, которые представляют
собой набор переменных, возможно, различных типов данных, объединенных оп-
определенным образом.
Тогда мне и подумалось, что именно здесь "математика становится программированием".
Т.е. переход происходит в точке: математическая модель (структура) = абстрактный тип данных.
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Здравствуйте, AVC, Вы писали: AVC>Когда мне на глаза попалась книга Ахо, Ульмана и Хопкрофта, то я увидел, что они пользуюся тем же понятием. Только оно у них приняло форму "математическая модель плюс операторы в рамках этой модели". (Короче, терминология немного "плавает", но смысл остается.) Привожу цитату из первой главы их книги:[q][b]Абстрактный тип данных — это
У нас она вроде не плавает. Эту терминологию можно встретить в обычном конспекте по дискретной математике, который можно достать в интернете.
Интересно, сколько программистов знают о математическом значении слова "модель" и сколько вкладывают в него математический смысл?
Здравствуйте, beroal, Вы писали:
AVC>>Когда мне на глаза попалась книга Ахо, Ульмана и Хопкрофта, то я увидел, что они пользуюся тем же понятием. Только оно у них приняло форму "математическая модель плюс операторы в рамках этой модели". (Короче, терминология немного "плавает", но смысл остается.) Привожу цитату из первой главы их книги:[q][b]Абстрактный тип данных — это B>У нас она вроде не плавает. Эту терминологию можно встретить в обычном конспекте по дискретной математике, который можно достать в интернете.
Точно!
А я все силился вспомнить, где еще я встречал это понятие.
Помнил, что в каком-то учебнике, но забыл в каком!
B>Интересно, сколько программистов знают о математическом значении слова "модель" и сколько вкладывают в него математический смысл?
Наверное, знают многие.
А вот многие ли связывают между собой математические модели и АТД — действительно вопрос.
По крайней мере, не все методологии программирования и проектирования этому способствуют...
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Здравствуйте, beroal, Вы писали:
B>У нас она вроде не плавает. Эту терминологию можно встретить в обычном конспекте по дискретной математике, который можно достать в интернете.
Определения немного разные, вот в чем дело. Поэтому я предпочитаю пользоваться "наивным", интуитивным пониманием этого слова. Ведь все равно определение имеет смысл только в рамках теории.
B>Интересно, сколько программистов знают о математическом значении слова "модель" и сколько вкладывают в него математический смысл?
А какие еще значения? Инженерное и программистское?
Значение слова — это объем его предиката. Но опыт у людей разный, поэтому и объем понятия разный.