Редактирование: МФСП, 02 семинар (от 08 сентября)

Материал из eSyr's wiki.

Перейти к: навигация, поиск

Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.

Текущая версия Ваш текст
Строка 1: Строка 1:
-
Цель этих 4—5 занятий будет рассказать оcновы RSL.
+
Цель этих 4--5 занятий будет рассказать оcновы RSL.
Практическое задание: Необходимо будет по задаче написать явную-неявную спецификацию, тестовое покрытие, тестовый драйвер и реализацию на С++, удовлетворяющую спецификации.
Практическое задание: Необходимо будет по задаче написать явную-неявную спецификацию, тестовое покрытие, тестовый драйвер и реализацию на С++, удовлетворяющую спецификации.
Строка 132: Строка 132:
</td></tr></table>
</td></tr></table>
-
Для описания альтернатив используется if-then-else:
+
Для описания альтернатив исп. if-then-else:
'''if''' expr1 '''then''' expr2 '''else''' expr3 '''end'''
'''if''' expr1 '''then''' expr2 '''else''' expr3 '''end'''
Строка 236: Строка 236:
* Явно. описание, как вычисляется, или знач.
* Явно. описание, как вычисляется, или знач.
* Неявно. Накладываются условия на значения.
* Неявно. Накладываются условия на значения.
-
* Аксиоматически. Опис.,
+
* Аксиоматически. Опис., ...
Константы:
Константы:
Строка 243: Строка 243:
Явное задание:
Явное задание:
-
name: Type = val #задание значения
+
name: Type = val #задание знач.
Пример: x : Int = 5
Пример: x : Int = 5
Строка 251: Строка 251:
x : Int &bull; x > 0
x : Int &bull; x > 0
-
Аксиоматически: можно использовать оба варианта
+
Аксиоматически: можно исп. оба варианта
В разделе опис. констант: x: Int
В разделе опис. констант: x: Int
В разделе опис. аксиом:
В разделе опис. аксиом:
Строка 259: Строка 259:
Функции в RSL:
Функции в RSL:
-
* Всюду вычислимые. Для любого x из области предусловия существует единственное y, таке что f(x) = y^
+
* Всюду выч. Для любого x из бл. пр. сущ. единст. y, таке что f(x) = y^
&forall; x: T1 &bull; !&exist; y : T2 &bull; f(x)=y
&forall; x: T1 &bull; !&exist; y : T2 &bull; f(x)=y
-
* Частично вычислимые. Для некоторых значений x могут иметь 0, 2 или более значений
+
* Частично выч. Для нек-рах зн. x могут иметь 0, 2 или более значений
'''value'''
'''value'''
Строка 283: Строка 283:
post r>x /* постусловие, связывающее аргументы и значения функции */
post r>x /* постусловие, связывающее аргументы и значения функции */
-
Пример описания квадратного корня:
+
Пример пис. квадратного корня:
sqrt : Real трелочка с тильдой Real
sqrt : Real трелочка с тильдой Real
sqrt(x) as s
sqrt(x) as s
Строка 295: Строка 295:
&forall;x"Int &bull; f(x) &equiv; x
&forall;x"Int &bull; f(x) &equiv; x
-
Пример с sqrt: для частично вычислимой функции предусловие переносится в начало импликации.
+
Пример с sqrt: для частично вычислимой функции предусловие переносится в начало импл.
'''value'''
'''value'''
sqrt : Real трелочка с тильдой Real
sqrt : Real трелочка с тильдой Real

Пожалуйста, обратите внимание, что все ваши добавления могут быть отредактированы или удалены другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. eSyr's_wiki:Авторское право).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

Личные инструменты
Разделы