Cтраница 2
Существуют ограничения в применении отсечения: его появление может нарушить, соответствие между декларативным и процедурным смыслами программы. Поэтому хороший стиль программирования предполагает осторожное применение отсечений и отказ от их применения без достаточных оснований. [16]
Таким образом, WFSX дает семантику для большего количества программ, и всегда, когда обе семантики определяют смысл программы, WF-модель WFSX является ( возможно, собственным) подмножеством модели стационарной семантики с сильным отрицанием. [17]
Ограничения на использование отсечения проистекают из того, что есть опасность потерять такое важное для нас соответствие между декларативным и процедурным смыслами программы. [18]
![]() |
Ассоциативная сеть структуры знаний эксперта-программиста. [19] |
С по -; мощью методов шкалирования было показано, что один из аспектов программистского опыта включает в себя организацию знаний соответственно смыслу программы, или семантике, а не в соответствии с синтаксисом. [20]
J ( m, n, q) в Q должен быть заменен на переход J ( / я, n, s /) B составной программе, чтобы сохранить смысл программы. [21]
Таким образом, идеальным было бы желание получить начальное решение, концентрируясь на ясности и корректности и практически не обращая внимания на его эффективность, а затем преобразовать это решение в эффективную форму, используя манипуляции, гарантирующие сохранение смысла программы. Такой трансформационный подход хорошо соответствует функциональным языкам, поскольку они чисто декларативны, обладая свойством прозрачности ссылок, что обсуждалось в первой части книги. Императивные же языки не обладают свойством прозрачности ссылок вследствие допущения глобальных переменных и разрушающего присваивания, в результате чего выражения могут принимать различные значения в разных контекстах и использование равенства в математическом смысле осуществляется с гораздо большим трудом. [22]
Если в строке программы встречается знак, то текст, начиная от этого знака и до конца строки, считается комментарием, Комментарий - это произвольный текст, который никак не влияет на последовательность вызовов предписаний при выполнении программы, а служит лишь для пояснения смысла программы при чтении ее человеком. Например, в программе прямоугольник комментарием является текст после слов дано и получить. [23]
В данном случае речь может идти о различных вариантах оптимизации: пространственной, временной и пространственно-временной. Смысл оптимизационных программ заключается в следующем. Любое инвестиционное решение сопровождается многими ограничениями и дополнительными эффектами. Например, инвестор ограничен в источниках финансирования, тогда как вариантов инвестирования много, т.е. возможности инвестирования ( приложения капитала) превышают совокупные мощности источников финансирования. Возможна и диаметрально противоположная ситуация, когда инвестор имеет свободные финансовые ресурсы, но удовлетворяющих его вариантов приложения капитала нет. Могут возникать и многопериодные задачи с взаимоувязанными проектами, когда принятие некоторого инвестиционного проекта откладывается во времени и он будет доступен к реализации лишь при поступлении средств, генерируемых одним или несколькими ранее принятыми проектами. Если инвестор пытается учесть и увязать в единое целое подобные факторы и обстоятельства, то в этом случае как раз и появляется необходимость в разработке инвестиционной программы. [24]
Экономико-математическая модель процесса является его стоимостной характеристикой, учитывающей режимные параметры процесса, нормативные данные, технологические и конъюнктурные ограничения. Смысл программы оптимизации состоит в том, чтобы с учетом этих данных Спроектировать процесс углубления, причем необходимо минимизировать стоимость 1 м проходки. В результате работ по созданию программы оптимизации определяют среднюю механическую скорость и время отработки долот, а также режимные параметры - нагрузку на долото и частоту его вращения ( с известными ограничениями), оптимальные по стоимости углубления участка для каждого рейса в данном интервале углубления различными способами бурения. Затем выбирают тот способ бурения, который обеспечивает минимальную стоимость при определенных ранее нагрузках и частотах вращения долота. [25]
Заметим, что согласно первому варианту теоремы 9.24, нет необходимости добавлять not о ( д), так как это заключение является следствием при заданных в АХ -, аксиомах. Семантика Р определяется смыслом программы Р, т.е. - о ( д), not о ( д), not - б ( д д), который и определяет единственную частичную WFSX-модель. [26]
Однако, как Вы должны уже заметить, смысл некоторых встроенных предикатов может быть выражен только процедурно. В данном случае это приводит к тому, что смысл программы может оказаться зависимым от того места, в котором находится проверка термов на сопоставимость. [27]
Уже в самых первых примерах автор говорит о естественном понимании смысла программ. [28]
На практике редко возникает необходимость вмешиваться в стандартный порядок работы процедур. Более того, лучше использовать те процедуры, которые более соответствуют смыслу программы. [29]
Прежде всего попытаемся ответить на вопрос: Зачем необходимо определять точный смысл или семантику логических программ. Декларативная семантика, которую мы и будем изучать, обеспечивает математически точное определение смысла программы, не зависящее от процесса ее выполнения. Процедурная семантика - это процедурный механизм, способный давать ответы на запросы. Корректность такого механизма определяется сравнением его работы со спецификацией, полученной по декларативной семантике. [30]