Решение упражнения из книжной монографии по информатике

Я пытался решить упражнение 21 в книге "Монографии в информатике - о методе мультипрограммирования" от WHJ Feijen и AJM van Gasteren уже несколько дней, но я немного застрял, так как наш учитель сказал Мы используем лемму топологии, чтобы решить это, используя утверждения и осторожные пропуски.

Если кто-то знаком с этой книгой и способами проверки этих упражнений, это было бы удивительно.

Упражнение 21

Рассмотрим следующую мультипрограмму с 23 компонентами типа A и 47 компонентами типа B.

┌───────────────────────────────────────┐
│ Pre: S = 0                            │
├───────────────────┬───────────────────┤
│ A: *[ S := S+1 ]  │ B: *[ S := S-1 ]  │
└───────────────────┴───────────────────┘

Синхронизируйте компоненты, используя только защищенные пропуски, так что 0 <= S <= 100 будет системным инвариантом.

Ссылка на упражнение

Я попытался добавить индексирование для каждого компонента (Ai и Bi), но доказать локальную и глобальную корректность не очень хорошо.

Синхронизируйте компоненты, используя только защищенные пропуски, так что 0 <= S <= 100 будет системным инвариантом.

0 ответов

Другие вопросы по тегам