Untitled

From Chocolate Goat, 12 Years ago, written in Plain Text, viewed 3 times.
URL https://paste.blessuren.de/view/795061e7 Embed
Download Paste or View Raw
  1. #define a ([] (x%2 == 1))                       /* gilt nicht immer, da x auch gerade sein kann */
  2. #define b (<> (x == 10))                        /* gilt nicht immer, da x == 10 durch x=x+2 übersprungen werden kann  */
  3. #define c (<> (x != 10))                        /* gilt immer (Startwert!) */
  4. #define d (<> ([] (x%2 == 1)))          /* ab einem bestimmten Zeitpunkt ist ggf. x immer ungerade gilt aber nicht für alle Zeitpunkte. Wenn nur P1 ausgeführt wird (keine Fairness) kann es vorkommen */
  5. #define e ([] (<> (x%2 == 1)))      /* min einmal? wenn unfair dann z.b. ab 244 und dann immer P1
  6.  
  7.  
  8. byte x=1;
  9. byte y=0;
  10.  
  11. ltl formel1{e}
  12.  
  13. active proctype P1(){
  14.         do
  15.                 :: x=x+2
  16.         od;
  17. }
  18.  
  19. active proctype P2(){
  20.         do
  21.                 :: x=x+1
  22.         od;
  23. }
  24.  
  25. active proctype P3(){
  26.         do
  27.                 :: y<x -> y=x
  28.         od;
  29. }
  30.  
  31.  
  32. /*
  33.  
  34. Formulieren Sie folgende Anforderungen möglichst präzise als LTL-Formeln. Überlegen Sie zunächst, ob
  35. diese Formeln mit oder ohne schwacher Fairness gelten. Überprüfen Sie Ihre Überlegungen mit ISPIN.
  36. a) x ist immer ungerade
  37. b) x ist irgendwann 10
  38. c) x ist irgendwann nicht 10
  39. d) es gibt eine Möglichkeit, dass x ab einem bestimmten Zeitpunkt immer ungerade ist
  40. e) es gibt eine Möglichkeit, dass x ab einem bestimmten Zeitpunkt immer wieder ungerade ist
  41. f) es gibt eine Möglichkeit, dass x ab einem bestimmten Zeitpunkt immer 10 ist
  42. g) es gilt immer y ist kleiner-gleich x
  43. h) auf y ungleich x folgt immer y gleich x
  44. i) auf y gleich x folgt immer y ungleich x
  45.  
  46. */

Reply to "Untitled"

Here you can reply to the paste above