Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

convergence of scheduler events (added a variable request_served)

  • Loading branch information...
commit 9c30e171ab31ab728ea7d8e7ccbaa8d5b96428c0 1 parent 4f1d17c
Adrian Friedli authored
Showing with 7,481 additions and 9,172 deletions.
  1. +58 −45 rodin/lift09_scheduler.bcm
  2. +234 −230 rodin/lift09_scheduler.bpo
  3. +4 −4 rodin/lift09_scheduler.bpr
  4. +118 −119 rodin/lift09_scheduler.bps
  5. +59 −46 rodin/lift09_scheduler.bum
  6. +62 −49 rodin/lift10_conv_lights.bcm
  7. +136 −123 rodin/lift10_conv_lights.bpo
  8. +34 −34 rodin/lift10_conv_lights.bps
  9. +49 −48 rodin/lift10_conv_lights.bum
  10. +62 −49 rodin/lift11_conv_lights.bcm
  11. +135 −122 rodin/lift11_conv_lights.bpo
  12. +33 −33 rodin/lift11_conv_lights.bps
  13. +49 −48 rodin/lift11_conv_lights.bum
  14. +62 −49 rodin/lift12_conv_lights.bcm
  15. +134 −121 rodin/lift12_conv_lights.bpo
  16. +32 −32 rodin/lift12_conv_lights.bps
  17. +49 −48 rodin/lift12_conv_lights.bum
  18. +62 −49 rodin/lift13_conv_lights.bcm
  19. +167 −154 rodin/lift13_conv_lights.bpo
  20. +61 −61 rodin/lift13_conv_lights.bps
  21. +49 −48 rodin/lift13_conv_lights.bum
  22. +62 −49 rodin/lift14_conv_lights.bcm
  23. +130 −117 rodin/lift14_conv_lights.bpo
  24. +28 −28 rodin/lift14_conv_lights.bps
  25. +49 −48 rodin/lift14_conv_lights.bum
  26. +62 −49 rodin/lift15_conv_lights.bcm
  27. +129 −116 rodin/lift15_conv_lights.bpo
  28. +27 −27 rodin/lift15_conv_lights.bps
  29. +49 −48 rodin/lift15_conv_lights.bum
  30. +62 −49 rodin/lift16_conv_lights.bcm
  31. +128 −115 rodin/lift16_conv_lights.bpo
  32. +26 −26 rodin/lift16_conv_lights.bps
  33. +49 −48 rodin/lift16_conv_lights.bum
  34. +62 −49 rodin/lift17_conv_lights.bcm
  35. +155 −142 rodin/lift17_conv_lights.bpo
  36. +49 −49 rodin/lift17_conv_lights.bps
  37. +49 −48 rodin/lift17_conv_lights.bum
  38. +67 −55 rodin/lift18_conv_schedule.bcm
  39. +401 −91 rodin/lift18_conv_schedule.bpo
  40. +4,148 −6,450 rodin/lift18_conv_schedule.bpr
  41. +46 −2 rodin/lift18_conv_schedule.bps
  42. +54 −54 rodin/lift18_conv_schedule.bum
View
103 rodin/lift09_scheduler.bcm
58 additions, 45 deletions not shown
View
464 rodin/lift09_scheduler.bpo
234 additions, 230 deletions not shown
View
8 rodin/lift09_scheduler.bpr
@@ -22331,9 +22331,9 @@
</org.eventb.core.prAnte>
</org.eventb.core.prRule>
<org.eventb.core.prIdent name="SCHEDULER_WAIT" org.eventb.core.type="SCHEDULER_STRATEGY"/>
-<org.eventb.core.prIdent name="schedule" org.eventb.core.type="SCHEDULER_STRATEGY"/>
+<org.eventb.core.prIdent name="last_schedule" org.eventb.core.type="SCHEDULER_STRATEGY"/>
<org.eventb.core.prPred name="p1" org.eventb.core.predicate="⊤"/>
-<org.eventb.core.prPred name="p0" org.eventb.core.predicate="SCHEDULER_WAIT≠SCHEDULER_WAIT⇒SCHEDULER_WAIT=schedule"/>
+<org.eventb.core.prPred name="p0" org.eventb.core.predicate="SCHEDULER_WAIT≠SCHEDULER_WAIT⇒SCHEDULER_WAIT=last_schedule"/>
</org.eventb.core.prProof>
<org.eventb.core.prProof name="switch_schedule_to_up/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.prFresh="" org.eventb.core.prGoal="p0" org.eventb.core.prHyps="">
<org.eventb.core.prRule name="org.eventb.core.seqprover.autoRewrites:1" org.eventb.core.confidence="1000" org.eventb.core.prDisplay="simplification rewrites" org.eventb.core.prGoal="p0" org.eventb.core.prHyps="">
@@ -23183,9 +23183,9 @@
</org.eventb.core.prRule>
<org.eventb.core.prIdent name="CABLE_STOP" org.eventb.core.type="CABLE_COMMAND"/>
<org.eventb.core.prIdent name="SCHEDULER_WAIT" org.eventb.core.type="SCHEDULER_STRATEGY"/>
-<org.eventb.core.prIdent name="schedule" org.eventb.core.type="SCHEDULER_STRATEGY"/>
+<org.eventb.core.prIdent name="last_schedule" org.eventb.core.type="SCHEDULER_STRATEGY"/>
<org.eventb.core.prPred name="p1" org.eventb.core.predicate="⊤"/>
-<org.eventb.core.prPred name="p0" org.eventb.core.predicate="CABLE_STOP≠CABLE_STOP⇒SCHEDULER_WAIT=schedule"/>
+<org.eventb.core.prPred name="p0" org.eventb.core.predicate="CABLE_STOP≠CABLE_STOP⇒SCHEDULER_WAIT=last_schedule"/>
</org.eventb.core.prProof>
<org.eventb.core.prProof name="switch_schedule_to_up/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.prFresh="" org.eventb.core.prGoal="p0" org.eventb.core.prHyps="">
<org.eventb.core.prRule name="org.eventb.core.seqprover.autoRewrites:1" org.eventb.core.confidence="1000" org.eventb.core.prDisplay="simplification rewrites" org.eventb.core.prGoal="p0" org.eventb.core.prHyps="">
View
237 rodin/lift09_scheduler.bps
@@ -1,122 +1,121 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<org.eventb.core.psFile>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="0" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="0" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_4/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="0" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="0" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="2" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="2" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="2" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="0" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="0" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="2" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="0" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="INITIALISATION/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="0" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_on/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_on/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_on/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_on/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_on/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_on/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_on/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_on/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_on/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_on/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_on/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_on/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_4/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_4/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_4/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_4/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="INITIALISATION/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="5" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_on/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_on/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_on/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_on/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_on/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_on/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_on/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_on/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_on/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_on/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_on/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_on/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/inv9_8/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_11/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_4/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_4/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_3/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_2/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_5/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_6/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_7/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_9/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_10/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_12/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/inv9_13/INV" org.eventb.core.confidence="1000" org.eventb.core.poStamp="6" org.eventb.core.psManual="false"/>
</org.eventb.core.psFile>
View
105 rodin/lift09_scheduler.bum
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290763262493" org.eventb.texttools.text_representation="machine lift09_scheduler refines lift08_down_buttons sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests&#10;&#10;invariants&#10; @inv9_1 schedule ∈ SCHEDULER_STRATEGY&#10; @inv9_3 ctrlCableCommand = CABLE_STOP ∧ PhyElevatorFloor = LAST_FLOOR ⇒ schedule ≠ SCHEDULER_UP&#10; @inv9_2 ctrlCableCommand = CABLE_STOP ∧ PhyElevatorFloor = 0 ⇒ schedule ≠ SCHEDULER_DOWN&#10; @inv9_4 last_schedule ∈ {SCHEDULER_UP, SCHEDULER_DOWN}&#10; @inv9_5 schedule = SCHEDULER_WAIT ⇒ ctrlCableCommand = CABLE_STOP&#10; @inv9_6 requests = ∅ ⇒ schedule = SCHEDULER_WAIT&#10; @inv9_7 schedule ≠ SCHEDULER_WAIT ∧ ctrlCableCommand = CABLE_STOP ⇒ requests∖{snsrElevatorFloor} ≠ ∅&#10; @inv9_8 requests = ∅ ⇒ PhyCableEngine = CABLE_STOP&#10; @inv9_9 ctrlCableCommand = CABLE_WIND ⇒ schedule = SCHEDULER_UP&#10; @inv9_10 ctrlCableCommand = CABLE_UNWIND ⇒ schedule = SCHEDULER_DOWN&#10; @inv9_11 ctrlCableCommand = CABLE_STOP ∧ PhyCableEngine ≠ CABLE_STOP ⇒ snsrElevatorFloor ∈ requests&#10; @inv9_12 schedule ≠ SCHEDULER_WAIT ⇒ schedule = last_schedule&#10; @inv9_13 ctrlCableCommand ≠ CABLE_STOP ⇒ schedule = last_schedule&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; then&#10; @act9_2 last_schedule ≔ SCHEDULER_UP&#10; @act9_1 schedule ≔ SCHEDULER_WAIT&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; anticipated event turn_down_button_light_off extends turn_down_button_light_off&#10; where&#10; @grd9_1 last_schedule = SCHEDULER_UP ⇒ (snsrElevatorFloor+1‥LAST_FLOOR ∩ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet ∪ ctrlDownButtonLightsSet) = ∅)&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; anticipated event turn_up_button_light_off extends turn_up_button_light_off&#10; where&#10; @grd9_1 last_schedule = SCHEDULER_DOWN ⇒ (0‥snsrElevatorFloor−1 ∩ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet ∪ ctrlDownButtonLightsSet) = ∅)&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; anticipated event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; where&#10; @grd9_1 schedule ≠ SCHEDULER_WAIT&#10; @grd9_2 snsrElevatorFloor ∉ ctrlFloorButtonLightsSet&#10; @grd9_4 schedule = SCHEDULER_DOWN ⇒ snsrElevatorFloor ∉ ctrlDownButtonLightsSet&#10; @grd9_3 schedule = SCHEDULER_UP ⇒ snsrElevatorFloor ∉ ctrlUpButtonLightsSet&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; where&#10; @grd9_1 schedule = SCHEDULER_UP&#10; @grd9_2 snsrElevatorFloor ∉ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; where&#10; @grd9_1 schedule = SCHEDULER_DOWN&#10; @grd9_2 snsrElevatorFloor ∉ (ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)&#10; end&#10;&#10; anticipated event stop extends stop&#10; where&#10; @grd9_1 (snsrElevatorFloor∈ctrlFloorButtonLightsSet) ∨&#10; (snsrElevatorFloor∈ctrlUpButtonLightsSet ∧ schedule = SCHEDULER_UP) ∨&#10; (snsrElevatorFloor∈ctrlDownButtonLightsSet ∧ schedule = SCHEDULER_DOWN) ∨&#10; (snsrElevatorFloor∈ctrlUpButtonLightsSet ∧ schedule = SCHEDULER_DOWN ∧ (0‥snsrElevatorFloor−1 ∩ requests = ∅ )) ∨&#10; (snsrElevatorFloor∈ctrlDownButtonLightsSet ∧ schedule = SCHEDULER_UP ∧ (snsrElevatorFloor+1‥LAST_FLOOR ∩ requests = ∅))&#10; then&#10; @act9_2 schedule ≔ SCHEDULER_WAIT&#10; @act9_1 last_schedule ≔ schedule&#10; end&#10;&#10; anticipated event switch_schedule_to_up&#10; where&#10; @grd9_1 schedule = SCHEDULER_WAIT&#10; @grd9_2 snsrElevatorFloor+1‥LAST_FLOOR ∩ requests ≠ ∅&#10; @grd9_3 snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)&#10; @grd9_4 0‥snsrElevatorFloor−1 ∩ requests = ∅&#10; @grd9_5 last_schedule = SCHEDULER_DOWN&#10; then&#10; @act9_1 schedule ≔ SCHEDULER_UP&#10; @act9_2 last_schedule ≔ SCHEDULER_UP&#10; end&#10;&#10; anticipated event resume_schedule_up&#10; where&#10; @grd9_1 schedule = SCHEDULER_WAIT&#10; @grd9_2 snsrElevatorFloor+1‥LAST_FLOOR ∩ requests ≠ ∅&#10; @grd9_3 snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)&#10; @grd9_4 last_schedule = SCHEDULER_UP&#10; then&#10; @act9_1 schedule ≔ SCHEDULER_UP&#10; end&#10;&#10; anticipated event switch_schedule_to_down&#10; where&#10; @grd9_1 schedule = SCHEDULER_WAIT&#10; @grd9_2 0‥snsrElevatorFloor−1 ∩ requests ≠ ∅&#10; @grd9_3 snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)&#10; @grd9_4 snsrElevatorFloor+1‥LAST_FLOOR ∩ requests = ∅&#10; @grd9_6 last_schedule = SCHEDULER_UP&#10; then&#10; @act9_1 schedule ≔ SCHEDULER_DOWN&#10; @act9_2 last_schedule ≔ SCHEDULER_DOWN&#10; end&#10;&#10; anticipated event resume_schedule_down&#10; where&#10; @grd9_1 schedule = SCHEDULER_WAIT&#10; @grd9_2 0‥snsrElevatorFloor−1 ∩ requests ≠ ∅&#10; @grd9_3 snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)&#10; @grd9_4 last_schedule = SCHEDULER_DOWN&#10; then&#10; @act9_1 schedule ≔ SCHEDULER_DOWN&#10; end&#10;end&#10;" version="5">
-<org.eventb.core.refinesMachine name="_fxOyEPk-Ed-hoNTGCqdYog" org.eventb.core.target="lift08_down_buttons"/>
-<org.eventb.core.seesContext name="_fxOyEfk-Ed-hoNTGCqdYog" org.eventb.core.target="ctx5_scheduler"/>
+<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290783955304" org.eventb.texttools.text_representation="machine lift09_scheduler refines lift08_down_buttons sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests request_served&#10;&#10;invariants&#10; @inv9_1 schedule ∈ SCHEDULER_STRATEGY&#10; @inv9_3 ctrlCableCommand = CABLE_STOP ∧ PhyElevatorFloor = LAST_FLOOR ⇒ schedule ≠ SCHEDULER_UP&#10; @inv9_2 ctrlCableCommand = CABLE_STOP ∧ PhyElevatorFloor = 0 ⇒ schedule ≠ SCHEDULER_DOWN&#10; @inv9_4 last_schedule ∈ {SCHEDULER_UP, SCHEDULER_DOWN}&#10; @inv9_5 schedule = SCHEDULER_WAIT ⇒ ctrlCableCommand = CABLE_STOP&#10; @inv9_6 requests = ∅ ⇒ schedule = SCHEDULER_WAIT&#10; @inv9_7 schedule ≠ SCHEDULER_WAIT ∧ ctrlCableCommand = CABLE_STOP ⇒ requests∖{snsrElevatorFloor} ≠ ∅&#10; @inv9_8 requests = ∅ ⇒ PhyCableEngine = CABLE_STOP&#10; @inv9_9 ctrlCableCommand = CABLE_WIND ⇒ schedule = SCHEDULER_UP&#10; @inv9_10 ctrlCableCommand = CABLE_UNWIND ⇒ schedule = SCHEDULER_DOWN&#10; @inv9_11 ctrlCableCommand = CABLE_STOP ∧ PhyCableEngine ≠ CABLE_STOP ⇒ snsrElevatorFloor ∈ requests&#10; @inv9_12 schedule ≠ SCHEDULER_WAIT ⇒ schedule = last_schedule&#10; @inv9_13 ctrlCableCommand ≠ CABLE_STOP ⇒ schedule = last_schedule&#10; @inv9_14 request_served ∈ BOOL&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; then&#10; @act9_2 last_schedule ≔ SCHEDULER_UP&#10; @act9_1 schedule ≔ SCHEDULER_WAIT&#10; @act9_3 request_served ≔ TRUE&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; anticipated event turn_down_button_light_off extends turn_down_button_light_off&#10; where&#10; @grd9_1 last_schedule = SCHEDULER_UP ⇒ (snsrElevatorFloor+1‥LAST_FLOOR ∩ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet ∪ ctrlDownButtonLightsSet) = ∅)&#10; then&#10; @act9_1 request_served ≔ TRUE&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; anticipated event turn_up_button_light_off extends turn_up_button_light_off&#10; where&#10; @grd9_1 last_schedule = SCHEDULER_DOWN ⇒ (0‥snsrElevatorFloor−1 ∩ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet ∪ ctrlDownButtonLightsSet) = ∅)&#10; then&#10; @act9_1 request_served ≔ TRUE&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; anticipated event turn_floor_button_light_off extends turn_floor_button_light_off&#10; then&#10; @act9_1 request_served ≔ TRUE&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; where&#10; @grd9_1 schedule ≠ SCHEDULER_WAIT&#10; @grd9_2 snsrElevatorFloor ∉ ctrlFloorButtonLightsSet&#10; @grd9_4 schedule = SCHEDULER_DOWN ⇒ snsrElevatorFloor ∉ ctrlDownButtonLightsSet&#10; @grd9_3 schedule = SCHEDULER_UP ⇒ snsrElevatorFloor ∉ ctrlUpButtonLightsSet&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; where&#10; @grd9_1 schedule = SCHEDULER_UP&#10; @grd9_2 snsrElevatorFloor ∉ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; where&#10; @grd9_1 schedule = SCHEDULER_DOWN&#10; @grd9_2 snsrElevatorFloor ∉ (ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)&#10; end&#10;&#10; anticipated event stop extends stop&#10; where&#10; @grd9_1 (snsrElevatorFloor∈ctrlFloorButtonLightsSet) ∨&#10; (snsrElevatorFloor∈ctrlUpButtonLightsSet ∧ schedule = SCHEDULER_UP) ∨&#10; (snsrElevatorFloor∈ctrlDownButtonLightsSet ∧ schedule = SCHEDULER_DOWN) ∨&#10; (snsrElevatorFloor∈ctrlUpButtonLightsSet ∧ schedule = SCHEDULER_DOWN ∧ (0‥snsrElevatorFloor−1 ∩ requests = ∅ )) ∨&#10; (snsrElevatorFloor∈ctrlDownButtonLightsSet ∧ schedule = SCHEDULER_UP ∧ (snsrElevatorFloor+1‥LAST_FLOOR ∩ requests = ∅))&#10; then&#10; @act9_2 schedule ≔ SCHEDULER_WAIT&#10; end&#10;&#10; anticipated event switch_schedule_to_up&#10; where&#10; @grd9_1 schedule = SCHEDULER_WAIT&#10; @grd9_2 snsrElevatorFloor+1‥LAST_FLOOR ∩ requests ≠ ∅&#10; @grd9_3 snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)&#10; @grd9_4 0‥snsrElevatorFloor−1 ∩ requests = ∅&#10; @grd9_5 last_schedule = SCHEDULER_DOWN&#10; @grd9_6 request_served = TRUE&#10; then&#10; @act9_1 schedule ≔ SCHEDULER_UP&#10; @act9_2 last_schedule ≔ SCHEDULER_UP&#10; @act9_3 request_served ≔ FALSE&#10; end&#10;&#10; anticipated event resume_schedule_up&#10; where&#10; @grd9_1 schedule = SCHEDULER_WAIT&#10; @grd9_2 snsrElevatorFloor+1‥LAST_FLOOR ∩ requests ≠ ∅&#10; @grd9_3 snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)&#10; @grd9_4 last_schedule = SCHEDULER_UP&#10; @grd9_5 request_served = TRUE&#10; then&#10; @act9_1 schedule ≔ SCHEDULER_UP&#10; @act9_2 request_served ≔ FALSE&#10; end&#10;&#10; anticipated event switch_schedule_to_down&#10; where&#10; @grd9_1 schedule = SCHEDULER_WAIT&#10; @grd9_2 0‥snsrElevatorFloor−1 ∩ requests ≠ ∅&#10; @grd9_3 snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)&#10; @grd9_4 snsrElevatorFloor+1‥LAST_FLOOR ∩ requests = ∅&#10; @grd9_5 last_schedule = SCHEDULER_UP&#10; @grd9_6 request_served = TRUE&#10; then&#10; @act9_1 schedule ≔ SCHEDULER_DOWN&#10; @act9_2 last_schedule ≔ SCHEDULER_DOWN&#10; @act9_3 request_served ≔ FALSE&#10; end&#10;&#10; anticipated event resume_schedule_down&#10; where&#10; @grd9_1 schedule = SCHEDULER_WAIT&#10; @grd9_2 0‥snsrElevatorFloor−1 ∩ requests ≠ ∅&#10; @grd9_3 snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)&#10; @grd9_4 last_schedule = SCHEDULER_DOWN&#10; @grd9_5 request_served = TRUE&#10; then&#10; @act9_1 schedule ≔ SCHEDULER_DOWN&#10; @act9_2 request_served ≔ FALSE&#10; end&#10;end&#10;" version="5">
+<org.eventb.core.refinesMachine name="_q3Z0cPluEd-1httaBm5m2g" org.eventb.core.target="lift08_down_buttons"/>
+<org.eventb.core.seesContext name="_q3Z0cfluEd-1httaBm5m2g" org.eventb.core.target="ctx5_scheduler"/>
<org.eventb.core.variable name="_9uEEsNd9Ed-Dle0at0Xgqg" org.eventb.core.identifier="PhyElevatorFloor"/>
<org.eventb.core.variable name="_aGvwctq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyCableEngine"/>
<org.eventb.core.variable name="_aGwXgNq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyElevatorBetweenTwoFloors"/>
@@ -29,6 +29,7 @@
<org.eventb.core.variable name="_Utggce5-Ed-dEtybZVK09Q" org.eventb.core.identifier="schedule"/>
<org.eventb.core.variable name="_-7fiIPS-Ed-43_jmKUh78g" org.eventb.core.identifier="last_stop"/>
<org.eventb.core.variable name="_6H3O8Pk7Ed-WtNZH8d5nSA" org.eventb.core.identifier="requests"/>
+<org.eventb.core.variable name="_q3bpoPluEd-1httaBm5m2g" org.eventb.core.identifier="request_served"/>
<org.eventb.core.invariant name="_UthHgO5-Ed-dEtybZVK09Q" org.eventb.core.label="inv9_1" org.eventb.core.predicate="schedule ∈ SCHEDULER_STRATEGY"/>
<org.eventb.core.invariant name="_UthHge5-Ed-dEtybZVK09Q" org.eventb.core.label="inv9_3" org.eventb.core.predicate="ctrlCableCommand = CABLE_STOP ∧ PhyElevatorFloor = LAST_FLOOR ⇒ schedule ≠ SCHEDULER_UP"/>
<org.eventb.core.invariant name="_UthHgu5-Ed-dEtybZVK09Q" org.eventb.core.label="inv9_2" org.eventb.core.predicate="ctrlCableCommand = CABLE_STOP ∧ PhyElevatorFloor = 0 ⇒ schedule ≠ SCHEDULER_DOWN"/>
@@ -42,127 +43,131 @@
<org.eventb.core.invariant name="_-yAU4PexEd-p8t79IbuE0Q" org.eventb.core.label="inv9_11" org.eventb.core.predicate="ctrlCableCommand = CABLE_STOP ∧ PhyCableEngine ≠ CABLE_STOP ⇒ snsrElevatorFloor ∈ requests"/>
<org.eventb.core.invariant name="_6H4dEPk7Ed-WtNZH8d5nSA" org.eventb.core.label="inv9_12" org.eventb.core.predicate="schedule ≠ SCHEDULER_WAIT ⇒ schedule = last_schedule"/>
<org.eventb.core.invariant name="_6H4dEfk7Ed-WtNZH8d5nSA" org.eventb.core.label="inv9_13" org.eventb.core.predicate="ctrlCableCommand ≠ CABLE_STOP ⇒ schedule = last_schedule"/>
+<org.eventb.core.invariant name="_q3de0PluEd-1httaBm5m2g" org.eventb.core.label="inv9_14" org.eventb.core.predicate="request_served ∈ BOOL"/>
<org.eventb.core.event name="'" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="INITIALISATION">
<org.eventb.core.action name="_Uthuke5-Ed-dEtybZVK09Q" org.eventb.core.assignment="last_schedule ≔ SCHEDULER_UP" org.eventb.core.label="act9_2"/>
<org.eventb.core.action name="_Uthuku5-Ed-dEtybZVK09Q" org.eventb.core.assignment="schedule ≔ SCHEDULER_WAIT" org.eventb.core.label="act9_1"/>
+<org.eventb.core.action name="_q3de0fluEd-1httaBm5m2g" org.eventb.core.assignment="request_served ≔ TRUE" org.eventb.core.label="act9_3"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3IkoxOWyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_fxSccPk-Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
+<org.eventb.core.refinesEvent name="_q3eF4PluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_fxSccfk-Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_fxSccvk-Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
+<org.eventb.core.event name="_q3eF4fluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
+<org.eventb.core.refinesEvent name="_q3eF4vluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Il25eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_fxTDgPk-Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_q3eF4_luEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Imd9eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_fxTDgfk-Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_q3es8PluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3InsEuWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_on">
-<org.eventb.core.refinesEvent name="_fxTDgvk-Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_on"/>
+<org.eventb.core.refinesEvent name="_q3es8fluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3IoTI-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_off">
-<org.eventb.core.refinesEvent name="_fxTqkPk-Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_off"/>
+<org.eventb.core.refinesEvent name="_q3es8vluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_off"/>
<org.eventb.core.guard name="_Uti8su5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="last_schedule = SCHEDULER_UP ⇒ (snsrElevatorFloor+1‥LAST_FLOOR ∩ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet ∪ ctrlDownButtonLightsSet) = ∅)"/>
+<org.eventb.core.action name="_q3es8_luEd-1httaBm5m2g" org.eventb.core.assignment="request_served ≔ TRUE" org.eventb.core.label="act9_1"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvVR8eEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_fxTqkfk-Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_q3fUAPluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Io6M-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_fxTqkvk-Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_q3fUAfluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvV5BuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_fxURoPk-Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_q3fUAvluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvWgFeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_fxURofk-Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_q3f7EPluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXHJeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_on">
-<org.eventb.core.refinesEvent name="_fxURovk-Ed-hoNTGCqdYog" org.eventb.core.target="turn_up_button_light_on"/>
+<org.eventb.core.refinesEvent name="_q3f7EfluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXuNeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_off">
-<org.eventb.core.refinesEvent name="_fxURo_k-Ed-hoNTGCqdYog" org.eventb.core.target="turn_up_button_light_off"/>
+<org.eventb.core.refinesEvent name="_q3f7EvluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_off"/>
<org.eventb.core.guard name="_UtkK0u5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="last_schedule = SCHEDULER_DOWN ⇒ (0‥snsrElevatorFloor−1 ∩ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet ∪ ctrlDownButtonLightsSet) = ∅)"/>
+<org.eventb.core.action name="_q3f7E_luEd-1httaBm5m2g" org.eventb.core.assignment="request_served ≔ TRUE" org.eventb.core.label="act9_1"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI1hE-A_Ed-78bCl9yYd-Q" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_fxU4sPk-Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
+<org.eventb.core.refinesEvent name="_q3giIPluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_fxU4sfk-Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_fxU4svk-Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
+<org.eventb.core.event name="_q3giIfluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
+<org.eventb.core.refinesEvent name="_q3giIvluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI2vNeA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_fxU4s_k-Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_q3giI_luEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvY8UuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_fxVfwPk-Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_q3hJMPluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI4kYuA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_on">
-<org.eventb.core.refinesEvent name="_fxVfwfk-Ed-hoNTGCqdYog" org.eventb.core.target="turn_floor_button_light_on"/>
+<org.eventb.core.refinesEvent name="_q3hJMfluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI5ygOA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_off">
-<org.eventb.core.refinesEvent name="_fxVfwvk-Ed-hoNTGCqdYog" org.eventb.core.target="turn_floor_button_light_off"/>
+<org.eventb.core.refinesEvent name="_q3hJMvluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_off"/>
+<org.eventb.core.action name="_q3hJM_luEd-1httaBm5m2g" org.eventb.core.assignment="request_served ≔ TRUE" org.eventb.core.label="act9_1"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgayBOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_fxWG0Pk-Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_q3hwQPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcAIOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_fxWG0fk-Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_q3hwQfluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcnM-AzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_OPENED">
-<org.eventb.core.refinesEvent name="_fxWG0vk-Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
+<org.eventb.core.refinesEvent name="_q3hwQvluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgdOReAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_fxWt4Pk-Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_q3iXUPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgecYeAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_fxWt4fk-Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_q3iXUfluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgfDcuAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_DOOR_ENGINE">
-<org.eventb.core.refinesEvent name="_fxWt4vk-Ed-hoNTGCqdYog" org.eventb.core.target="STOP_DOOR_ENGINE"/>
+<org.eventb.core.refinesEvent name="_q3iXUvluEd-1httaBm5m2g" org.eventb.core.target="STOP_DOOR_ENGINE"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_fxWt4_k-Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_fxXU8Pk-Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
+<org.eventb.core.event name="_q3iXU_luEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_q3i-YPluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_fxXU8fk-Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_fxXU8vk-Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
+<org.eventb.core.event name="_q3i-YfluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_q3i-YvluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_fxXU8_k-Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_fxXU9Pk-Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_q3i-Y_luEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_q3i-ZPluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_fxXU9fk-Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_fxX8APk-Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_q3i-ZfluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_q3jlcPluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
</org.eventb.core.event>
<org.eventb.core.event name="_aG13ENq-Ed-L_e8_V4iXIg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_CABLE_ENGINE">
-<org.eventb.core.refinesEvent name="_fxX8Afk-Ed-hoNTGCqdYog" org.eventb.core.target="STOP_CABLE_ENGINE"/>
+<org.eventb.core.refinesEvent name="_q3jlcfluEd-1httaBm5m2g" org.eventb.core.target="STOP_CABLE_ENGINE"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKimItqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="open_door">
-<org.eventb.core.refinesEvent name="_fxX8Avk-Ed-hoNTGCqdYog" org.eventb.core.target="open_door"/>
+<org.eventb.core.refinesEvent name="_q3jlcvluEd-1httaBm5m2g" org.eventb.core.target="open_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_SjmMQNq3Ed-AAt710HomgA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop_door">
-<org.eventb.core.refinesEvent name="_fxYjEPk-Ed-hoNTGCqdYog" org.eventb.core.target="stop_door"/>
+<org.eventb.core.refinesEvent name="_q3kMgPluEd-1httaBm5m2g" org.eventb.core.target="stop_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKjNMtqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="close_door">
-<org.eventb.core.refinesEvent name="_fxYjEfk-Ed-hoNTGCqdYog" org.eventb.core.target="close_door"/>
+<org.eventb.core.refinesEvent name="_q3kMgfluEd-1httaBm5m2g" org.eventb.core.target="close_door"/>
<org.eventb.core.guard name="_5Er_I_YkEd-UnYOzyke7oQ" org.eventb.core.label="grd9_1" org.eventb.core.predicate="schedule ≠ SCHEDULER_WAIT"/>
<org.eventb.core.guard name="_UtpDUe5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_2" org.eventb.core.predicate="snsrElevatorFloor ∉ ctrlFloorButtonLightsSet"/>
<org.eventb.core.guard name="_UtocQu5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_4" org.eventb.core.predicate="schedule = SCHEDULER_DOWN ⇒ snsrElevatorFloor ∉ ctrlDownButtonLightsSet"/>
<org.eventb.core.guard name="_UtocQ-5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_3" org.eventb.core.predicate="schedule = SCHEDULER_UP ⇒ snsrElevatorFloor ∉ ctrlUpButtonLightsSet"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC2soNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_up">
-<org.eventb.core.refinesEvent name="_fxZKIPk-Ed-hoNTGCqdYog" org.eventb.core.target="start_move_up"/>
+<org.eventb.core.refinesEvent name="_q3kzkPluEd-1httaBm5m2g" org.eventb.core.target="start_move_up"/>
<org.eventb.core.guard name="_UtpDU-5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="schedule = SCHEDULER_UP"/>
<org.eventb.core.guard name="_5EsmMfYkEd-UnYOzyke7oQ" org.eventb.core.label="grd9_2" org.eventb.core.predicate="snsrElevatorFloor ∉ (ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC36wNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_down">
-<org.eventb.core.refinesEvent name="_fxZKIfk-Ed-hoNTGCqdYog" org.eventb.core.target="start_move_down"/>
+<org.eventb.core.refinesEvent name="_q3kzkfluEd-1httaBm5m2g" org.eventb.core.target="start_move_down"/>
<org.eventb.core.guard name="_UtpqYu5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="schedule = SCHEDULER_DOWN"/>
<org.eventb.core.guard name="_5EtNQfYkEd-UnYOzyke7oQ" org.eventb.core.label="grd9_2" org.eventb.core.predicate="snsrElevatorFloor ∉ (ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC5I4dqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop">
-<org.eventb.core.refinesEvent name="_fxZxMPk-Ed-hoNTGCqdYog" org.eventb.core.target="stop"/>
+<org.eventb.core.refinesEvent name="_q3laoPluEd-1httaBm5m2g" org.eventb.core.target="stop"/>
<org.eventb.core.guard name="_UtqRcu5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="(snsrElevatorFloor∈ctrlFloorButtonLightsSet) ∨&#10; (snsrElevatorFloor∈ctrlUpButtonLightsSet ∧ schedule = SCHEDULER_UP) ∨&#10; (snsrElevatorFloor∈ctrlDownButtonLightsSet ∧ schedule = SCHEDULER_DOWN) ∨&#10; (snsrElevatorFloor∈ctrlUpButtonLightsSet ∧ schedule = SCHEDULER_DOWN ∧ (0‥snsrElevatorFloor−1 ∩ requests = ∅ )) ∨&#10; (snsrElevatorFloor∈ctrlDownButtonLightsSet ∧ schedule = SCHEDULER_UP ∧ (snsrElevatorFloor+1‥LAST_FLOOR ∩ requests = ∅))"/>
<org.eventb.core.action name="_UtqRc-5-Ed-dEtybZVK09Q" org.eventb.core.assignment="schedule ≔ SCHEDULER_WAIT" org.eventb.core.label="act9_2"/>
-<org.eventb.core.action name="_UtqRdO5-Ed-dEtybZVK09Q" org.eventb.core.assignment="last_schedule ≔ schedule" org.eventb.core.label="act9_1"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utq4gO5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="false" org.eventb.core.label="switch_schedule_to_up">
<org.eventb.core.guard name="_Utq4hO5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="schedule = SCHEDULER_WAIT"/>
@@ -170,30 +175,38 @@
<org.eventb.core.guard name="_0iuhwPiTEd-5bJQIzgxuHg" org.eventb.core.label="grd9_3" org.eventb.core.predicate="snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)"/>
<org.eventb.core.guard name="_Utrfke5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_4" org.eventb.core.predicate="0‥snsrElevatorFloor−1 ∩ requests = ∅"/>
<org.eventb.core.guard name="_Utrfk-5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_5" org.eventb.core.predicate="last_schedule = SCHEDULER_DOWN"/>
+<org.eventb.core.guard name="_q3mBsPluEd-1httaBm5m2g" org.eventb.core.label="grd9_6" org.eventb.core.predicate="request_served = TRUE"/>
<org.eventb.core.action name="_UtrflO5-Ed-dEtybZVK09Q" org.eventb.core.assignment="schedule ≔ SCHEDULER_UP" org.eventb.core.label="act9_1"/>
<org.eventb.core.action name="_6IA_8Pk7Ed-WtNZH8d5nSA" org.eventb.core.assignment="last_schedule ≔ SCHEDULER_UP" org.eventb.core.label="act9_2"/>
+<org.eventb.core.action name="_q3mowPluEd-1httaBm5m2g" org.eventb.core.assignment="request_served ≔ FALSE" org.eventb.core.label="act9_3"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utrfle5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="false" org.eventb.core.label="resume_schedule_up">
<org.eventb.core.guard name="_UtsGou5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="schedule = SCHEDULER_WAIT"/>
<org.eventb.core.guard name="_UtsGo-5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_2" org.eventb.core.predicate="snsrElevatorFloor+1‥LAST_FLOOR ∩ requests ≠ ∅"/>
<org.eventb.core.guard name="_0ivI0PiTEd-5bJQIzgxuHg" org.eventb.core.label="grd9_3" org.eventb.core.predicate="snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlUpButtonLightsSet)"/>
<org.eventb.core.guard name="_UtstsO5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_4" org.eventb.core.predicate="last_schedule = SCHEDULER_UP"/>
+<org.eventb.core.guard name="_q3mowfluEd-1httaBm5m2g" org.eventb.core.label="grd9_5" org.eventb.core.predicate="request_served = TRUE"/>
<org.eventb.core.action name="_Utstse5-Ed-dEtybZVK09Q" org.eventb.core.assignment="schedule ≔ SCHEDULER_UP" org.eventb.core.label="act9_1"/>
+<org.eventb.core.action name="_q3nP0PluEd-1httaBm5m2g" org.eventb.core.assignment="request_served ≔ FALSE" org.eventb.core.label="act9_2"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utstsu5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="false" org.eventb.core.label="switch_schedule_to_down">
<org.eventb.core.guard name="_UttUwO5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="schedule = SCHEDULER_WAIT"/>
<org.eventb.core.guard name="_UttUwe5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_2" org.eventb.core.predicate="0‥snsrElevatorFloor−1 ∩ requests ≠ ∅"/>
<org.eventb.core.guard name="_0ivv4PiTEd-5bJQIzgxuHg" org.eventb.core.label="grd9_3" org.eventb.core.predicate="snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)"/>
<org.eventb.core.guard name="_UttUw-5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_4" org.eventb.core.predicate="snsrElevatorFloor+1‥LAST_FLOOR ∩ requests = ∅"/>
-<org.eventb.core.guard name="_UttUxe5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_6" org.eventb.core.predicate="last_schedule = SCHEDULER_UP"/>
+<org.eventb.core.guard name="_q3n24PluEd-1httaBm5m2g" org.eventb.core.label="grd9_5" org.eventb.core.predicate="last_schedule = SCHEDULER_UP"/>
+<org.eventb.core.guard name="_UttUxe5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_6" org.eventb.core.predicate="request_served = TRUE"/>
<org.eventb.core.action name="_Utt70O5-Ed-dEtybZVK09Q" org.eventb.core.assignment="schedule ≔ SCHEDULER_DOWN" org.eventb.core.label="act9_1"/>
<org.eventb.core.action name="_6ICOEPk7Ed-WtNZH8d5nSA" org.eventb.core.assignment="last_schedule ≔ SCHEDULER_DOWN" org.eventb.core.label="act9_2"/>
+<org.eventb.core.action name="_q3n24fluEd-1httaBm5m2g" org.eventb.core.assignment="request_served ≔ FALSE" org.eventb.core.label="act9_3"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utt70e5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="false" org.eventb.core.label="resume_schedule_down">
<org.eventb.core.guard name="_Utt71O5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_1" org.eventb.core.predicate="schedule = SCHEDULER_WAIT"/>
<org.eventb.core.guard name="_Utt71e5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_2" org.eventb.core.predicate="0‥snsrElevatorFloor−1 ∩ requests ≠ ∅"/>
<org.eventb.core.guard name="_0iwW8PiTEd-5bJQIzgxuHg" org.eventb.core.label="grd9_3" org.eventb.core.predicate="snsrElevatorFloor∉(ctrlFloorButtonLightsSet ∪ ctrlDownButtonLightsSet)"/>
<org.eventb.core.guard name="_Utui4e5-Ed-dEtybZVK09Q" org.eventb.core.label="grd9_4" org.eventb.core.predicate="last_schedule = SCHEDULER_DOWN"/>
+<org.eventb.core.guard name="_q3od8PluEd-1httaBm5m2g" org.eventb.core.label="grd9_5" org.eventb.core.predicate="request_served = TRUE"/>
<org.eventb.core.action name="_Utui4u5-Ed-dEtybZVK09Q" org.eventb.core.assignment="schedule ≔ SCHEDULER_DOWN" org.eventb.core.label="act9_1"/>
+<org.eventb.core.action name="_q3od8fluEd-1httaBm5m2g" org.eventb.core.assignment="request_served ≔ FALSE" org.eventb.core.label="act9_2"/>
</org.eventb.core.event>
</org.eventb.core.machineFile>
View
111 rodin/lift10_conv_lights.bcm
62 additions, 49 deletions not shown
View
259 rodin/lift10_conv_lights.bpo
136 additions, 123 deletions not shown
View
68 rodin/lift10_conv_lights.bps
@@ -1,37 +1,37 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<org.eventb.core.psFile>
-<org.eventb.core.psStatus name="FIN" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="FIN" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
</org.eventb.core.psFile>
View
97 rodin/lift10_conv_lights.bum
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290762170872" org.eventb.texttools.text_representation="machine lift10_conv refines lift09_scheduler sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests&#10;&#10;variant snsrFloorButtonsSet∖ ctrlFloorButtonLightsSet&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; anticipated event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; anticipated event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; anticipated event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
-<org.eventb.core.refinesMachine name="_8ouCIPk7Ed-WtNZH8d5nSA" org.eventb.core.target="lift09_scheduler"/>
-<org.eventb.core.seesContext name="_8ouCIfk7Ed-WtNZH8d5nSA" org.eventb.core.target="ctx5_scheduler"/>
+<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290783933679" org.eventb.texttools.text_representation="machine lift10_conv refines lift09_scheduler sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests request_served&#10;&#10;variant snsrFloorButtonsSet∖ ctrlFloorButtonLightsSet&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; anticipated event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; anticipated event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; anticipated event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
+<org.eventb.core.refinesMachine name="_njudMPluEd-1httaBm5m2g" org.eventb.core.target="lift09_scheduler"/>
+<org.eventb.core.seesContext name="_njudMfluEd-1httaBm5m2g" org.eventb.core.target="ctx5_scheduler"/>
<org.eventb.core.variable name="_9uEEsNd9Ed-Dle0at0Xgqg" org.eventb.core.identifier="PhyElevatorFloor"/>
<org.eventb.core.variable name="_aGvwctq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyCableEngine"/>
<org.eventb.core.variable name="_aGwXgNq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyElevatorBetweenTwoFloors"/>
@@ -29,123 +29,124 @@
<org.eventb.core.variable name="_Utggce5-Ed-dEtybZVK09Q" org.eventb.core.identifier="schedule"/>
<org.eventb.core.variable name="_-7fiIPS-Ed-43_jmKUh78g" org.eventb.core.identifier="last_stop"/>
<org.eventb.core.variable name="_8ov3UPk7Ed-WtNZH8d5nSA" org.eventb.core.identifier="requests"/>
+<org.eventb.core.variable name="_njwSYPluEd-1httaBm5m2g" org.eventb.core.identifier="request_served"/>
<org.eventb.core.variant name="_us4UgPfqEd-vgams47i3xA" org.eventb.core.expression="snsrFloorButtonsSet∖ ctrlFloorButtonLightsSet"/>
<org.eventb.core.event name="'" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="INITIALISATION"/>
<org.eventb.core.event name="_3IkoxOWyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_8oweYPk7Ed-WtNZH8d5nSA" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
+<org.eventb.core.refinesEvent name="_njwSYfluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_8oweYfk7Ed-WtNZH8d5nSA" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_8oweYvk7Ed-WtNZH8d5nSA" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
+<org.eventb.core.event name="_njw5cPluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
+<org.eventb.core.refinesEvent name="_njw5cfluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Il25eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_8oweY_k7Ed-WtNZH8d5nSA" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_njw5cvluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Imd9eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_8oxFcPk7Ed-WtNZH8d5nSA" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_njw5c_luEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3InsEuWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_on">
-<org.eventb.core.refinesEvent name="_8oxFcfk7Ed-WtNZH8d5nSA" org.eventb.core.target="turn_down_button_light_on"/>
+<org.eventb.core.refinesEvent name="_njxggPluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3IoTI-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_off">
-<org.eventb.core.refinesEvent name="_8oxFcvk7Ed-WtNZH8d5nSA" org.eventb.core.target="turn_down_button_light_off"/>
+<org.eventb.core.refinesEvent name="_njxggfluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvVR8eEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_8oxFc_k7Ed-WtNZH8d5nSA" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_njxggvluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Io6M-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_8oxsgPk7Ed-WtNZH8d5nSA" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_njyHkPluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvV5BuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_8oxsgfk7Ed-WtNZH8d5nSA" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_njyHkfluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvWgFeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_8oxsgvk7Ed-WtNZH8d5nSA" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_njyHkvluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXHJeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_on">
-<org.eventb.core.refinesEvent name="_8oyTkPk7Ed-WtNZH8d5nSA" org.eventb.core.target="turn_up_button_light_on"/>
+<org.eventb.core.refinesEvent name="_njyuoPluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXuNeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_off">
-<org.eventb.core.refinesEvent name="_8oyTkfk7Ed-WtNZH8d5nSA" org.eventb.core.target="turn_up_button_light_off"/>
+<org.eventb.core.refinesEvent name="_njyuofluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI1hE-A_Ed-78bCl9yYd-Q" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_8oyTkvk7Ed-WtNZH8d5nSA" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
+<org.eventb.core.refinesEvent name="_njyuovluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_8oyTk_k7Ed-WtNZH8d5nSA" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_8oyTlPk7Ed-WtNZH8d5nSA" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
+<org.eventb.core.event name="_njyuo_luEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
+<org.eventb.core.refinesEvent name="_njzVsPluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI2vNeA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_8oy6oPk7Ed-WtNZH8d5nSA" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_njzVsfluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvY8UuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_8oy6ofk7Ed-WtNZH8d5nSA" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_njzVsvluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI4kYuA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_on">
-<org.eventb.core.refinesEvent name="_8oy6ovk7Ed-WtNZH8d5nSA" org.eventb.core.target="turn_floor_button_light_on"/>
+<org.eventb.core.refinesEvent name="_njz8wPluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI5ygOA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_off">
-<org.eventb.core.refinesEvent name="_8oy6o_k7Ed-WtNZH8d5nSA" org.eventb.core.target="turn_floor_button_light_off"/>
+<org.eventb.core.refinesEvent name="_njz8wfluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgayBOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_8ozhsPk7Ed-WtNZH8d5nSA" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_njz8wvluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcAIOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_8ozhsfk7Ed-WtNZH8d5nSA" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_nj0j0PluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcnM-AzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_OPENED">
-<org.eventb.core.refinesEvent name="_8ozhsvk7Ed-WtNZH8d5nSA" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
+<org.eventb.core.refinesEvent name="_nj0j0fluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgdOReAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_8o0IwPk7Ed-WtNZH8d5nSA" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_nj0j0vluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgecYeAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_8o0Iwfk7Ed-WtNZH8d5nSA" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_nj1K4PluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgfDcuAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_DOOR_ENGINE">
-<org.eventb.core.refinesEvent name="_8o0Iwvk7Ed-WtNZH8d5nSA" org.eventb.core.target="STOP_DOOR_ENGINE"/>
+<org.eventb.core.refinesEvent name="_nj1K4fluEd-1httaBm5m2g" org.eventb.core.target="STOP_DOOR_ENGINE"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_8o0Iw_k7Ed-WtNZH8d5nSA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_8o0v0Pk7Ed-WtNZH8d5nSA" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
+<org.eventb.core.event name="_nj1K4vluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_nj1K4_luEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_8o0v0fk7Ed-WtNZH8d5nSA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_8o0v0vk7Ed-WtNZH8d5nSA" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
+<org.eventb.core.event name="_nj1K5PluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_nj1x8PluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_8o0v0_k7Ed-WtNZH8d5nSA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_8o0v1Pk7Ed-WtNZH8d5nSA" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_nj1x8fluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_nj1x8vluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_8o0v1fk7Ed-WtNZH8d5nSA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_8o0v1vk7Ed-WtNZH8d5nSA" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_nj1x8_luEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_nj1x9PluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
</org.eventb.core.event>
<org.eventb.core.event name="_aG13ENq-Ed-L_e8_V4iXIg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_CABLE_ENGINE">
-<org.eventb.core.refinesEvent name="_8o1W4Pk7Ed-WtNZH8d5nSA" org.eventb.core.target="STOP_CABLE_ENGINE"/>
+<org.eventb.core.refinesEvent name="_nj2ZAPluEd-1httaBm5m2g" org.eventb.core.target="STOP_CABLE_ENGINE"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKimItqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="open_door">
-<org.eventb.core.refinesEvent name="_8o1W4fk7Ed-WtNZH8d5nSA" org.eventb.core.target="open_door"/>
+<org.eventb.core.refinesEvent name="_nj2ZAfluEd-1httaBm5m2g" org.eventb.core.target="open_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_SjmMQNq3Ed-AAt710HomgA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop_door">
-<org.eventb.core.refinesEvent name="_8o1W4vk7Ed-WtNZH8d5nSA" org.eventb.core.target="stop_door"/>
+<org.eventb.core.refinesEvent name="_nj2ZAvluEd-1httaBm5m2g" org.eventb.core.target="stop_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKjNMtqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="close_door">
-<org.eventb.core.refinesEvent name="_8o198Pk7Ed-WtNZH8d5nSA" org.eventb.core.target="close_door"/>
+<org.eventb.core.refinesEvent name="_nj3AEPluEd-1httaBm5m2g" org.eventb.core.target="close_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC2soNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_up">
-<org.eventb.core.refinesEvent name="_8o198fk7Ed-WtNZH8d5nSA" org.eventb.core.target="start_move_up"/>
+<org.eventb.core.refinesEvent name="_nj3AEfluEd-1httaBm5m2g" org.eventb.core.target="start_move_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC36wNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_down">
-<org.eventb.core.refinesEvent name="_8o198vk7Ed-WtNZH8d5nSA" org.eventb.core.target="start_move_down"/>
+<org.eventb.core.refinesEvent name="_nj3AEvluEd-1httaBm5m2g" org.eventb.core.target="start_move_down"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC5I4dqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop">
-<org.eventb.core.refinesEvent name="_8o2lAPk7Ed-WtNZH8d5nSA" org.eventb.core.target="stop"/>
+<org.eventb.core.refinesEvent name="_nj3nIPluEd-1httaBm5m2g" org.eventb.core.target="stop"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utq4gO5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="switch_schedule_to_up">
-<org.eventb.core.refinesEvent name="_8o2lAfk7Ed-WtNZH8d5nSA" org.eventb.core.target="switch_schedule_to_up"/>
+<org.eventb.core.refinesEvent name="_nj3nIfluEd-1httaBm5m2g" org.eventb.core.target="switch_schedule_to_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utrfle5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="resume_schedule_up">
-<org.eventb.core.refinesEvent name="_8o2lAvk7Ed-WtNZH8d5nSA" org.eventb.core.target="resume_schedule_up"/>
+<org.eventb.core.refinesEvent name="_nj3nIvluEd-1httaBm5m2g" org.eventb.core.target="resume_schedule_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utstsu5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="switch_schedule_to_down">
-<org.eventb.core.refinesEvent name="_8o3MEPk7Ed-WtNZH8d5nSA" org.eventb.core.target="switch_schedule_to_down"/>
+<org.eventb.core.refinesEvent name="_nj4OMPluEd-1httaBm5m2g" org.eventb.core.target="switch_schedule_to_down"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utt70e5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="resume_schedule_down">
-<org.eventb.core.refinesEvent name="_8o3MEfk7Ed-WtNZH8d5nSA" org.eventb.core.target="resume_schedule_down"/>
+<org.eventb.core.refinesEvent name="_nj4OMfluEd-1httaBm5m2g" org.eventb.core.target="resume_schedule_down"/>
</org.eventb.core.event>
</org.eventb.core.machineFile>
View
111 rodin/lift11_conv_lights.bcm
62 additions, 49 deletions not shown
View
257 rodin/lift11_conv_lights.bpo
135 additions, 122 deletions not shown
View
66 rodin/lift11_conv_lights.bps
@@ -1,36 +1,36 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<org.eventb.core.psFile>
-<org.eventb.core.psStatus name="FIN" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="3" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="FIN" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="7" org.eventb.core.psManual="false"/>
</org.eventb.core.psFile>
View
97 rodin/lift11_conv_lights.bum
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290762547821" org.eventb.texttools.text_representation="machine lift11_conv_light refines lift10_conv_lights sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests&#10;&#10;variant snsrUpButtonsSet∖ ctrlUpButtonLightsSet&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; anticipated event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; anticipated event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; anticipated event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
-<org.eventb.core.refinesMachine name="_025PIfk8Ed-hoNTGCqdYog" org.eventb.core.target="lift10_conv_lights"/>
-<org.eventb.core.seesContext name="_025PIvk8Ed-hoNTGCqdYog" org.eventb.core.target="ctx5_scheduler"/>
+<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290783926097" org.eventb.texttools.text_representation="machine lift11_conv_light refines lift10_conv_lights sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests request_served&#10;&#10;variant snsrUpButtonsSet∖ ctrlUpButtonLightsSet&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; anticipated event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; anticipated event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; anticipated event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
+<org.eventb.core.refinesMachine name="_mbd0oPluEd-1httaBm5m2g" org.eventb.core.target="lift10_conv_lights"/>
+<org.eventb.core.seesContext name="_mbd0ofluEd-1httaBm5m2g" org.eventb.core.target="ctx5_scheduler"/>
<org.eventb.core.variable name="_9uEEsNd9Ed-Dle0at0Xgqg" org.eventb.core.identifier="PhyElevatorFloor"/>
<org.eventb.core.variable name="_aGvwctq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyCableEngine"/>
<org.eventb.core.variable name="_aGwXgNq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyElevatorBetweenTwoFloors"/>
@@ -29,123 +29,124 @@
<org.eventb.core.variable name="_Utggce5-Ed-dEtybZVK09Q" org.eventb.core.identifier="schedule"/>
<org.eventb.core.variable name="_-7fiIPS-Ed-43_jmKUh78g" org.eventb.core.identifier="last_stop"/>
<org.eventb.core.variable name="_8ov3UPk7Ed-WtNZH8d5nSA" org.eventb.core.identifier="requests"/>
+<org.eventb.core.variable name="_mbfp0PluEd-1httaBm5m2g" org.eventb.core.identifier="request_served"/>
<org.eventb.core.variant name="_028ScPk8Ed-hoNTGCqdYog" org.eventb.core.expression="snsrUpButtonsSet∖ ctrlUpButtonLightsSet"/>
<org.eventb.core.event name="'" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="INITIALISATION"/>
<org.eventb.core.event name="_3IkoxOWyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_0285gPk8Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
+<org.eventb.core.refinesEvent name="_mbfp0fluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_0285gfk8Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_029gkPk8Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
+<org.eventb.core.event name="_mbgQ4PluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
+<org.eventb.core.refinesEvent name="_mbgQ4fluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Il25eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_029gkfk8Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_mbgQ4vluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Imd9eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_02-HoPk8Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_mbgQ4_luEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3InsEuWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_on">
-<org.eventb.core.refinesEvent name="_02-Hofk8Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_on"/>
+<org.eventb.core.refinesEvent name="_mbgQ5PluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3IoTI-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_off">
-<org.eventb.core.refinesEvent name="_02-usPk8Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_off"/>
+<org.eventb.core.refinesEvent name="_mbg38PluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvVR8eEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_02-usfk8Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_mbg38fluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Io6M-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_02-usvk8Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_mbg38vluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvV5BuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_02_VwPk8Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_mbhfAPluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvWgFeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_02_Vwfk8Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_mbhfAfluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXHJeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_on">
-<org.eventb.core.refinesEvent name="_02_80Pk8Ed-hoNTGCqdYog" org.eventb.core.target="turn_up_button_light_on"/>
+<org.eventb.core.refinesEvent name="_mbhfAvluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXuNeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_off">
-<org.eventb.core.refinesEvent name="_02_80fk8Ed-hoNTGCqdYog" org.eventb.core.target="turn_up_button_light_off"/>
+<org.eventb.core.refinesEvent name="_mbhfA_luEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI1hE-A_Ed-78bCl9yYd-Q" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_02_80vk8Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
+<org.eventb.core.refinesEvent name="_mbiGEPluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_03Aj4Pk8Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_03Aj4fk8Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
+<org.eventb.core.event name="_mbiGEfluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
+<org.eventb.core.refinesEvent name="_mbiGEvluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI2vNeA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_03Aj4vk8Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_mbiGE_luEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvY8UuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_03BK8Pk8Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_mbiGFPluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI4kYuA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_on">
-<org.eventb.core.refinesEvent name="_03BK8fk8Ed-hoNTGCqdYog" org.eventb.core.target="turn_floor_button_light_on"/>
+<org.eventb.core.refinesEvent name="_mbitIPluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI5ygOA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_off">
-<org.eventb.core.refinesEvent name="_03ByAPk8Ed-hoNTGCqdYog" org.eventb.core.target="turn_floor_button_light_off"/>
+<org.eventb.core.refinesEvent name="_mbitIfluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgayBOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_03ByAfk8Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_mbitIvluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcAIOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_03ByAvk8Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_mbjUMPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcnM-AzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_OPENED">
-<org.eventb.core.refinesEvent name="_03CZEPk8Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
+<org.eventb.core.refinesEvent name="_mbjUMfluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgdOReAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_03CZEfk8Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_mbjUMvluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgecYeAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_03DAIPk8Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_mbj7QPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgfDcuAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_DOOR_ENGINE">
-<org.eventb.core.refinesEvent name="_03DAIfk8Ed-hoNTGCqdYog" org.eventb.core.target="STOP_DOOR_ENGINE"/>
+<org.eventb.core.refinesEvent name="_mbj7QfluEd-1httaBm5m2g" org.eventb.core.target="STOP_DOOR_ENGINE"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_03DAIvk8Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_03DnMPk8Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
+<org.eventb.core.event name="_mbj7QvluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_mbj7Q_luEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_03DnMfk8Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_03DnMvk8Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
+<org.eventb.core.event name="_mbj7RPluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_mbj7RfluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_03DnM_k8Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_03EOQPk8Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_mbkiUPluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_mbkiUfluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_03EOQfk8Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_03EOQvk8Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_mbkiUvluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_mbkiU_luEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
</org.eventb.core.event>
<org.eventb.core.event name="_aG13ENq-Ed-L_e8_V4iXIg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_CABLE_ENGINE">
-<org.eventb.core.refinesEvent name="_03E1UPk8Ed-hoNTGCqdYog" org.eventb.core.target="STOP_CABLE_ENGINE"/>
+<org.eventb.core.refinesEvent name="_mbkiVPluEd-1httaBm5m2g" org.eventb.core.target="STOP_CABLE_ENGINE"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKimItqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="open_door">
-<org.eventb.core.refinesEvent name="_03E1Ufk8Ed-hoNTGCqdYog" org.eventb.core.target="open_door"/>
+<org.eventb.core.refinesEvent name="_mblJYPluEd-1httaBm5m2g" org.eventb.core.target="open_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_SjmMQNq3Ed-AAt710HomgA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop_door">
-<org.eventb.core.refinesEvent name="_03FcYPk8Ed-hoNTGCqdYog" org.eventb.core.target="stop_door"/>
+<org.eventb.core.refinesEvent name="_mblJYfluEd-1httaBm5m2g" org.eventb.core.target="stop_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKjNMtqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="close_door">
-<org.eventb.core.refinesEvent name="_03FcYfk8Ed-hoNTGCqdYog" org.eventb.core.target="close_door"/>
+<org.eventb.core.refinesEvent name="_mblJYvluEd-1httaBm5m2g" org.eventb.core.target="close_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC2soNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_up">
-<org.eventb.core.refinesEvent name="_03GDcPk8Ed-hoNTGCqdYog" org.eventb.core.target="start_move_up"/>
+<org.eventb.core.refinesEvent name="_mblwcPluEd-1httaBm5m2g" org.eventb.core.target="start_move_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC36wNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_down">
-<org.eventb.core.refinesEvent name="_03GDcfk8Ed-hoNTGCqdYog" org.eventb.core.target="start_move_down"/>
+<org.eventb.core.refinesEvent name="_mblwcfluEd-1httaBm5m2g" org.eventb.core.target="start_move_down"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC5I4dqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop">
-<org.eventb.core.refinesEvent name="_03GqgPk8Ed-hoNTGCqdYog" org.eventb.core.target="stop"/>
+<org.eventb.core.refinesEvent name="_mblwcvluEd-1httaBm5m2g" org.eventb.core.target="stop"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utq4gO5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="switch_schedule_to_up">
-<org.eventb.core.refinesEvent name="_03Gqgfk8Ed-hoNTGCqdYog" org.eventb.core.target="switch_schedule_to_up"/>
+<org.eventb.core.refinesEvent name="_mbmXgPluEd-1httaBm5m2g" org.eventb.core.target="switch_schedule_to_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utrfle5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="resume_schedule_up">
-<org.eventb.core.refinesEvent name="_03Gqgvk8Ed-hoNTGCqdYog" org.eventb.core.target="resume_schedule_up"/>
+<org.eventb.core.refinesEvent name="_mbmXgfluEd-1httaBm5m2g" org.eventb.core.target="resume_schedule_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utstsu5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="switch_schedule_to_down">
-<org.eventb.core.refinesEvent name="_03HRkPk8Ed-hoNTGCqdYog" org.eventb.core.target="switch_schedule_to_down"/>
+<org.eventb.core.refinesEvent name="_mbmXgvluEd-1httaBm5m2g" org.eventb.core.target="switch_schedule_to_down"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utt70e5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="resume_schedule_down">
-<org.eventb.core.refinesEvent name="_03HRkfk8Ed-hoNTGCqdYog" org.eventb.core.target="resume_schedule_down"/>
+<org.eventb.core.refinesEvent name="_mbm-kPluEd-1httaBm5m2g" org.eventb.core.target="resume_schedule_down"/>
</org.eventb.core.event>
</org.eventb.core.machineFile>
View
111 rodin/lift12_conv_lights.bcm
62 additions, 49 deletions not shown
View
255 rodin/lift12_conv_lights.bpo
134 additions, 121 deletions not shown
View
64 rodin/lift12_conv_lights.bps
@@ -1,35 +1,35 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<org.eventb.core.psFile>
-<org.eventb.core.psStatus name="FIN" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="11" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="FIN" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_on/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="15" org.eventb.core.psManual="false"/>
</org.eventb.core.psFile>
View
97 rodin/lift12_conv_lights.bum
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290762849735" org.eventb.texttools.text_representation="machine lift12_conv_lights refines lift11_conv_lights sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests&#10;&#10;variant snsrDownButtonsSet∖ ctrlDownButtonLightsSet&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; anticipated event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; anticipated event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; anticipated event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
-<org.eventb.core.refinesMachine name="_h0eRoPk9Ed-hoNTGCqdYog" org.eventb.core.target="lift11_conv_lights"/>
-<org.eventb.core.seesContext name="_h0eRofk9Ed-hoNTGCqdYog" org.eventb.core.target="ctx5_scheduler"/>
+<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290783918041" org.eventb.texttools.text_representation="machine lift12_conv_lights refines lift11_conv_lights sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests request_served&#10;&#10;variant snsrDownButtonsSet∖ ctrlDownButtonLightsSet&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; anticipated event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; anticipated event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; anticipated event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
+<org.eventb.core.refinesMachine name="_lTHsgPluEd-1httaBm5m2g" org.eventb.core.target="lift11_conv_lights"/>
+<org.eventb.core.seesContext name="_lTHsgfluEd-1httaBm5m2g" org.eventb.core.target="ctx5_scheduler"/>
<org.eventb.core.variable name="_9uEEsNd9Ed-Dle0at0Xgqg" org.eventb.core.identifier="PhyElevatorFloor"/>
<org.eventb.core.variable name="_aGvwctq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyCableEngine"/>
<org.eventb.core.variable name="_aGwXgNq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyElevatorBetweenTwoFloors"/>
@@ -29,123 +29,124 @@
<org.eventb.core.variable name="_Utggce5-Ed-dEtybZVK09Q" org.eventb.core.identifier="schedule"/>
<org.eventb.core.variable name="_-7fiIPS-Ed-43_jmKUh78g" org.eventb.core.identifier="last_stop"/>
<org.eventb.core.variable name="_EwSmMPk8Ed-WtNZH8d5nSA" org.eventb.core.identifier="requests"/>
+<org.eventb.core.variable name="_lTJhsPluEd-1httaBm5m2g" org.eventb.core.identifier="request_served"/>
<org.eventb.core.variant name="_AxZp4PfrEd-vgams47i3xA" org.eventb.core.expression="snsrDownButtonsSet∖ ctrlDownButtonLightsSet"/>
<org.eventb.core.event name="'" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="INITIALISATION"/>
<org.eventb.core.event name="_3IkoxOWyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_h0gG0Pk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
+<org.eventb.core.refinesEvent name="_lTJhsfluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_h0gG0fk9Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_h0gG0vk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
+<org.eventb.core.event name="_lTKIwPluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
+<org.eventb.core.refinesEvent name="_lTKIwfluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Il25eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_h0gt4Pk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_lTKIwvluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Imd9eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_h0gt4fk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_lTKIw_luEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3InsEuWyEd-64JNDK1TKiQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_on">
-<org.eventb.core.refinesEvent name="_h0gt4vk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_on"/>
+<org.eventb.core.refinesEvent name="_lTKv0PluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3IoTI-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_off">
-<org.eventb.core.refinesEvent name="_h0gt4_k9Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_off"/>
+<org.eventb.core.refinesEvent name="_lTKv0fluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvVR8eEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_h0hU8Pk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_lTKv0vluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Io6M-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_h0hU8fk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_lTKv0_luEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvV5BuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_h0hU8vk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_lTLW4PluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvWgFeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_h0h8APk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_lTLW4fluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXHJeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_on">
-<org.eventb.core.refinesEvent name="_h0h8Afk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_up_button_light_on"/>
+<org.eventb.core.refinesEvent name="_lTLW4vluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXuNeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_off">
-<org.eventb.core.refinesEvent name="_h0h8Avk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_up_button_light_off"/>
+<org.eventb.core.refinesEvent name="_lTL98PluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI1hE-A_Ed-78bCl9yYd-Q" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_h0h8A_k9Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
+<org.eventb.core.refinesEvent name="_lTL98fluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_h0h8BPk9Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_h0ijEPk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
+<org.eventb.core.event name="_lTL98vluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
+<org.eventb.core.refinesEvent name="_lTL98_luEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI2vNeA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_h0ijEfk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_lTL99PluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvY8UuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_h0ijEvk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_lTMlAPluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI4kYuA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_on">
-<org.eventb.core.refinesEvent name="_h0jKIPk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_floor_button_light_on"/>
+<org.eventb.core.refinesEvent name="_lTMlAfluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI5ygOA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_off">
-<org.eventb.core.refinesEvent name="_h0jKIfk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_floor_button_light_off"/>
+<org.eventb.core.refinesEvent name="_lTMlAvluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgayBOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_h0jKIvk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_lTNMEPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcAIOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_h0jKI_k9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_lTNMEfluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcnM-AzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_OPENED">
-<org.eventb.core.refinesEvent name="_h0jxMPk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
+<org.eventb.core.refinesEvent name="_lTNMEvluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgdOReAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_h0jxMfk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_lTNzIPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgecYeAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_h0jxMvk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_lTNzIfluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgfDcuAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_DOOR_ENGINE">
-<org.eventb.core.refinesEvent name="_h0kYQPk9Ed-hoNTGCqdYog" org.eventb.core.target="STOP_DOOR_ENGINE"/>
+<org.eventb.core.refinesEvent name="_lTNzIvluEd-1httaBm5m2g" org.eventb.core.target="STOP_DOOR_ENGINE"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_h0kYQfk9Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_h0kYQvk9Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
+<org.eventb.core.event name="_lTNzI_luEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_lTNzJPluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_h0kYQ_k9Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_h0kYRPk9Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
+<org.eventb.core.event name="_lTOaMPluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_lTOaMfluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_h0kYRfk9Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_h0k_UPk9Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_lTOaMvluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_lTOaM_luEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_h0k_Ufk9Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_h0k_Uvk9Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_lTOaNPluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_lTOaNfluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
</org.eventb.core.event>
<org.eventb.core.event name="_aG13ENq-Ed-L_e8_V4iXIg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_CABLE_ENGINE">
-<org.eventb.core.refinesEvent name="_h0k_U_k9Ed-hoNTGCqdYog" org.eventb.core.target="STOP_CABLE_ENGINE"/>
+<org.eventb.core.refinesEvent name="_lTPBQPluEd-1httaBm5m2g" org.eventb.core.target="STOP_CABLE_ENGINE"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKimItqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="open_door">
-<org.eventb.core.refinesEvent name="_h0lmYPk9Ed-hoNTGCqdYog" org.eventb.core.target="open_door"/>
+<org.eventb.core.refinesEvent name="_lTPBQfluEd-1httaBm5m2g" org.eventb.core.target="open_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_SjmMQNq3Ed-AAt710HomgA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop_door">
-<org.eventb.core.refinesEvent name="_h0lmYfk9Ed-hoNTGCqdYog" org.eventb.core.target="stop_door"/>
+<org.eventb.core.refinesEvent name="_lTPBQvluEd-1httaBm5m2g" org.eventb.core.target="stop_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKjNMtqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="close_door">
-<org.eventb.core.refinesEvent name="_h0lmYvk9Ed-hoNTGCqdYog" org.eventb.core.target="close_door"/>
+<org.eventb.core.refinesEvent name="_lTPoUPluEd-1httaBm5m2g" org.eventb.core.target="close_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC2soNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_up">
-<org.eventb.core.refinesEvent name="_h0mNcPk9Ed-hoNTGCqdYog" org.eventb.core.target="start_move_up"/>
+<org.eventb.core.refinesEvent name="_lTPoUfluEd-1httaBm5m2g" org.eventb.core.target="start_move_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC36wNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_down">
-<org.eventb.core.refinesEvent name="_h0mNcfk9Ed-hoNTGCqdYog" org.eventb.core.target="start_move_down"/>
+<org.eventb.core.refinesEvent name="_lTPoUvluEd-1httaBm5m2g" org.eventb.core.target="start_move_down"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC5I4dqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop">
-<org.eventb.core.refinesEvent name="_h0mNcvk9Ed-hoNTGCqdYog" org.eventb.core.target="stop"/>
+<org.eventb.core.refinesEvent name="_lTQPYPluEd-1httaBm5m2g" org.eventb.core.target="stop"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utq4gO5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="switch_schedule_to_up">
-<org.eventb.core.refinesEvent name="_h0mNc_k9Ed-hoNTGCqdYog" org.eventb.core.target="switch_schedule_to_up"/>
+<org.eventb.core.refinesEvent name="_lTQPYfluEd-1httaBm5m2g" org.eventb.core.target="switch_schedule_to_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utrfle5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="resume_schedule_up">
-<org.eventb.core.refinesEvent name="_h0m0gPk9Ed-hoNTGCqdYog" org.eventb.core.target="resume_schedule_up"/>
+<org.eventb.core.refinesEvent name="_lTQPYvluEd-1httaBm5m2g" org.eventb.core.target="resume_schedule_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utstsu5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="switch_schedule_to_down">
-<org.eventb.core.refinesEvent name="_h0m0gfk9Ed-hoNTGCqdYog" org.eventb.core.target="switch_schedule_to_down"/>
+<org.eventb.core.refinesEvent name="_lTQ2cPluEd-1httaBm5m2g" org.eventb.core.target="switch_schedule_to_down"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utt70e5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="resume_schedule_down">
-<org.eventb.core.refinesEvent name="_h0m0gvk9Ed-hoNTGCqdYog" org.eventb.core.target="resume_schedule_down"/>
+<org.eventb.core.refinesEvent name="_lTQ2cfluEd-1httaBm5m2g" org.eventb.core.target="resume_schedule_down"/>
</org.eventb.core.event>
</org.eventb.core.machineFile>
View
111 rodin/lift13_conv_lights.bcm
62 additions, 49 deletions not shown
View
321 rodin/lift13_conv_lights.bpo
167 additions, 154 deletions not shown
View
122 rodin/lift13_conv_lights.bps
@@ -1,64 +1,64 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<org.eventb.core.psFile>
-<org.eventb.core.psStatus name="VWD" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="true"/>
-<org.eventb.core.psStatus name="turn_down_button_light_off/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="true"/>
-<org.eventb.core.psStatus name="turn_up_button_light_off/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="true"/>
-<org.eventb.core.psStatus name="turn_floor_button_light_off/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="open_door/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop_door/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="close_door/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="VWD" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="true"/>
+<org.eventb.core.psStatus name="turn_down_button_light_off/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="true"/>
+<org.eventb.core.psStatus name="turn_up_button_light_off/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="true"/>
+<org.eventb.core.psStatus name="turn_floor_button_light_off/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="open_door/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop_door/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="close_door/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/NAT" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
</org.eventb.core.psFile>
View
97 rodin/lift13_conv_lights.bum
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290762626333" org.eventb.texttools.text_representation="machine lift13_conv_lights refines lift12_conv_lights sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests&#10;&#10;variant card(ctrlDownButtonLightsSet) + card(ctrlUpButtonLightsSet) + card(ctrlFloorButtonLightsSet)&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; convergent event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; convergent event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; convergent event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
-<org.eventb.core.refinesMachine name="_Ai9NoPk9Ed-hoNTGCqdYog" org.eventb.core.target="lift12_conv_lights"/>
-<org.eventb.core.seesContext name="_Ai9Nofk9Ed-hoNTGCqdYog" org.eventb.core.target="ctx5_scheduler"/>
+<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290783909366" org.eventb.texttools.text_representation="machine lift13_conv_lights refines lift12_conv_lights sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests request_served&#10;&#10;variant card(ctrlDownButtonLightsSet) + card(ctrlUpButtonLightsSet) + card(ctrlFloorButtonLightsSet)&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; convergent event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; convergent event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; convergent event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
+<org.eventb.core.refinesMachine name="_j78eMPluEd-1httaBm5m2g" org.eventb.core.target="lift12_conv_lights"/>
+<org.eventb.core.seesContext name="_j78eMfluEd-1httaBm5m2g" org.eventb.core.target="ctx5_scheduler"/>
<org.eventb.core.variable name="_9uEEsNd9Ed-Dle0at0Xgqg" org.eventb.core.identifier="PhyElevatorFloor"/>
<org.eventb.core.variable name="_aGvwctq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyCableEngine"/>
<org.eventb.core.variable name="_aGwXgNq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyElevatorBetweenTwoFloors"/>
@@ -29,123 +29,124 @@
<org.eventb.core.variable name="_Utggce5-Ed-dEtybZVK09Q" org.eventb.core.identifier="schedule"/>
<org.eventb.core.variable name="_-7fiIPS-Ed-43_jmKUh78g" org.eventb.core.identifier="last_stop"/>
<org.eventb.core.variable name="_Ai_C0Pk9Ed-hoNTGCqdYog" org.eventb.core.identifier="requests"/>
+<org.eventb.core.variable name="_j7-TYPluEd-1httaBm5m2g" org.eventb.core.identifier="request_served"/>
<org.eventb.core.variant name="_-INkoPfrEd-vgams47i3xA" org.eventb.core.expression="card(ctrlDownButtonLightsSet) + card(ctrlUpButtonLightsSet) + card(ctrlFloorButtonLightsSet)"/>
<org.eventb.core.event name="'" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="INITIALISATION"/>
<org.eventb.core.event name="_3IkoxOWyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_Ai_p4Pk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
+<org.eventb.core.refinesEvent name="_j7-6cPluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_Ai_p4fk9Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_Ai_p4vk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
+<org.eventb.core.event name="_j7-6cfluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
+<org.eventb.core.refinesEvent name="_j7-6cvluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Il25eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_Ai_p4_k9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_j7_hgPluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Imd9eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_AjAQ8Pk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_j7_hgfluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3InsEuWyEd-64JNDK1TKiQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_on">
-<org.eventb.core.refinesEvent name="_AjAQ8fk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_on"/>
+<org.eventb.core.refinesEvent name="_j7_hgvluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3IoTI-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_off">
-<org.eventb.core.refinesEvent name="_AjAQ8vk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_off"/>
+<org.eventb.core.refinesEvent name="_j7_hg_luEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvVR8eEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_AjA4APk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_j8AIkPluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Io6M-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_UP_BUTTON">
-<org.eventb.core.refinesEvent name="_AjA4Afk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
+<org.eventb.core.refinesEvent name="_j8AvoPluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_UP_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvV5BuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_AjA4Avk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_j8AvofluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvWgFeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_UP_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_AjA4A_k9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_j8BWsPluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_UP_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXHJeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_on">
-<org.eventb.core.refinesEvent name="_AjBfEPk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_up_button_light_on"/>
+<org.eventb.core.refinesEvent name="_j8BWsfluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvXuNeEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_up_button_light_off">
-<org.eventb.core.refinesEvent name="_AjBfEfk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_up_button_light_off"/>
+<org.eventb.core.refinesEvent name="_j8B9wPluEd-1httaBm5m2g" org.eventb.core.target="turn_up_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI1hE-A_Ed-78bCl9yYd-Q" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_AjBfEvk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
+<org.eventb.core.refinesEvent name="_j8B9wfluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_FLOOR_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_AjBfE_k9Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
-<org.eventb.core.refinesEvent name="_AjCGIPk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
+<org.eventb.core.event name="_j8Ck0PluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_FLOOR_BUTTON">
+<org.eventb.core.refinesEvent name="_j8Ck0fluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_FLOOR_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI2vNeA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_AjCGIfk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_j8DL4PluEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvY8UuEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_FLOOR_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_AjCGIvk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_j8DL4fluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_FLOOR_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI4kYuA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_on">
-<org.eventb.core.refinesEvent name="_AjCtMPk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_floor_button_light_on"/>
+<org.eventb.core.refinesEvent name="_j8Dy8PluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_tI5ygOA_Ed-78bCl9yYd-Q" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_floor_button_light_off">
-<org.eventb.core.refinesEvent name="_AjCtMfk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_floor_button_light_off"/>
+<org.eventb.core.refinesEvent name="_j8Dy8fluEd-1httaBm5m2g" org.eventb.core.target="turn_floor_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgayBOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_AjCtMvk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_j8EaAPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcAIOAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_OPENS_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_AjDUQPk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_j8FBEPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_OPENS_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgcnM-AzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_OPENED">
-<org.eventb.core.refinesEvent name="_AjDUQfk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
+<org.eventb.core.refinesEvent name="_j8FBEfluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_OPENED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgdOReAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_HALF">
-<org.eventb.core.refinesEvent name="_AjDUQvk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
+<org.eventb.core.refinesEvent name="_j8FoIPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_HALF"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgecYeAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="DOOR_CLOSES_WHEN_CLOSED">
-<org.eventb.core.refinesEvent name="_AjD7UPk9Ed-hoNTGCqdYog" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
+<org.eventb.core.refinesEvent name="_j8GPMPluEd-1httaBm5m2g" org.eventb.core.target="DOOR_CLOSES_WHEN_CLOSED"/>
</org.eventb.core.event>
<org.eventb.core.event name="_KgfDcuAzEd-73py7lbE8bg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_DOOR_ENGINE">
-<org.eventb.core.refinesEvent name="_AjD7Ufk9Ed-hoNTGCqdYog" org.eventb.core.target="STOP_DOOR_ENGINE"/>
+<org.eventb.core.refinesEvent name="_j8GPMfluEd-1httaBm5m2g" org.eventb.core.target="STOP_DOOR_ENGINE"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_AjD7Uvk9Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_AjD7U_k9Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
+<org.eventb.core.event name="_j8GPMvluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_j8GPM_luEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_AjD7VPk9Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
-<org.eventb.core.refinesEvent name="_AjEiYPk9Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
+<org.eventb.core.event name="_j8GPNPluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_UP">
+<org.eventb.core.refinesEvent name="_j8G2QPluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_UP"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_AjEiYfk9Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_AjEiYvk9Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_j8G2QfluEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_LEAVES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_j8G2QvluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_LEAVES_FLOOR_DOWN"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_AjEiY_k9Ed-hoNTGCqdYog" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
-<org.eventb.core.refinesEvent name="_AjEiZPk9Ed-hoNTGCqdYog" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
+<org.eventb.core.event name="_j8G2Q_luEd-1httaBm5m2g" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="ELEVATOR_REACHES_FLOOR_DOWN">
+<org.eventb.core.refinesEvent name="_j8G2RPluEd-1httaBm5m2g" org.eventb.core.target="ELEVATOR_REACHES_FLOOR_DOWN"/>
</org.eventb.core.event>
<org.eventb.core.event name="_aG13ENq-Ed-L_e8_V4iXIg" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="STOP_CABLE_ENGINE">
-<org.eventb.core.refinesEvent name="_AjFJcPk9Ed-hoNTGCqdYog" org.eventb.core.target="STOP_CABLE_ENGINE"/>
+<org.eventb.core.refinesEvent name="_j8HdUPluEd-1httaBm5m2g" org.eventb.core.target="STOP_CABLE_ENGINE"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKimItqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="open_door">
-<org.eventb.core.refinesEvent name="_AjFJcfk9Ed-hoNTGCqdYog" org.eventb.core.target="open_door"/>
+<org.eventb.core.refinesEvent name="_j8HdUfluEd-1httaBm5m2g" org.eventb.core.target="open_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_SjmMQNq3Ed-AAt710HomgA" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop_door">
-<org.eventb.core.refinesEvent name="_AjFJcvk9Ed-hoNTGCqdYog" org.eventb.core.target="stop_door"/>
+<org.eventb.core.refinesEvent name="_j8HdUvluEd-1httaBm5m2g" org.eventb.core.target="stop_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_HKjNMtqzEd-7IuFxCL4SWw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="close_door">
-<org.eventb.core.refinesEvent name="_AjFwgPk9Ed-hoNTGCqdYog" org.eventb.core.target="close_door"/>
+<org.eventb.core.refinesEvent name="_j8IEYPluEd-1httaBm5m2g" org.eventb.core.target="close_door"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC2soNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_up">
-<org.eventb.core.refinesEvent name="_AjFwgfk9Ed-hoNTGCqdYog" org.eventb.core.target="start_move_up"/>
+<org.eventb.core.refinesEvent name="_j8IEYfluEd-1httaBm5m2g" org.eventb.core.target="start_move_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC36wNqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="start_move_down">
-<org.eventb.core.refinesEvent name="_AjGXkPk9Ed-hoNTGCqdYog" org.eventb.core.target="start_move_down"/>
+<org.eventb.core.refinesEvent name="_j8IEYvluEd-1httaBm5m2g" org.eventb.core.target="start_move_down"/>
</org.eventb.core.event>
<org.eventb.core.event name="_yC5I4dqwEd-O4vbSPlarTw" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="stop">
-<org.eventb.core.refinesEvent name="_AjGXkfk9Ed-hoNTGCqdYog" org.eventb.core.target="stop"/>
+<org.eventb.core.refinesEvent name="_j8IrcPluEd-1httaBm5m2g" org.eventb.core.target="stop"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utq4gO5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="switch_schedule_to_up">
-<org.eventb.core.refinesEvent name="_AjGXkvk9Ed-hoNTGCqdYog" org.eventb.core.target="switch_schedule_to_up"/>
+<org.eventb.core.refinesEvent name="_j8IrcfluEd-1httaBm5m2g" org.eventb.core.target="switch_schedule_to_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utrfle5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="resume_schedule_up">
-<org.eventb.core.refinesEvent name="_AjG-oPk9Ed-hoNTGCqdYog" org.eventb.core.target="resume_schedule_up"/>
+<org.eventb.core.refinesEvent name="_j8IrcvluEd-1httaBm5m2g" org.eventb.core.target="resume_schedule_up"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utstsu5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="switch_schedule_to_down">
-<org.eventb.core.refinesEvent name="_AjG-ofk9Ed-hoNTGCqdYog" org.eventb.core.target="switch_schedule_to_down"/>
+<org.eventb.core.refinesEvent name="_j8JSgPluEd-1httaBm5m2g" org.eventb.core.target="switch_schedule_to_down"/>
</org.eventb.core.event>
<org.eventb.core.event name="_Utt70e5-Ed-dEtybZVK09Q" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="resume_schedule_down">
-<org.eventb.core.refinesEvent name="_AjG-ovk9Ed-hoNTGCqdYog" org.eventb.core.target="resume_schedule_down"/>
+<org.eventb.core.refinesEvent name="_j8JSgfluEd-1httaBm5m2g" org.eventb.core.target="resume_schedule_down"/>
</org.eventb.core.event>
</org.eventb.core.machineFile>
View
111 rodin/lift14_conv_lights.bcm
62 additions, 49 deletions not shown
View
247 rodin/lift14_conv_lights.bpo
130 additions, 117 deletions not shown
View
56 rodin/lift14_conv_lights.bps
@@ -1,31 +1,31 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<org.eventb.core.psFile>
-<org.eventb.core.psStatus name="FIN" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
-<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="12" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="FIN" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_DOWN_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_UP_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_ON_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="TURNS_OFF_FLOOR_BUTTON_LIGHT/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_OPENS_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_OPENED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_HALF/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="DOOR_CLOSES_WHEN_CLOSED/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_DOOR_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_UP/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_LEAVES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="ELEVATOR_REACHES_FLOOR_DOWN/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="STOP_CABLE_ENGINE/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="open_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="close_door/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="start_move_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="stop/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_up/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="switch_schedule_to_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
+<org.eventb.core.psStatus name="resume_schedule_down/VAR" org.eventb.core.confidence="1000" org.eventb.core.poStamp="16" org.eventb.core.psManual="false"/>
</org.eventb.core.psFile>
View
97 rodin/lift14_conv_lights.bum
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290762637566" org.eventb.texttools.text_representation="machine lift14_conv_lights refines lift13_conv_lights sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests&#10;&#10;variant (0‥LAST_FLOOR∖PhyDownButtonLightsSet) ∩ ctrlDownButtonLightsSet&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; convergent event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; convergent event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; convergent event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; convergent event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
-<org.eventb.core.refinesMachine name="_CMy5QPk9Ed-hoNTGCqdYog" org.eventb.core.target="lift13_conv_lights"/>
-<org.eventb.core.seesContext name="_CMy5Qfk9Ed-hoNTGCqdYog" org.eventb.core.target="ctx5_scheduler"/>
+<org.eventb.core.machineFile org.eventb.core.configuration="org.eventb.core.fwd" org.eventb.texttools.text_lastmodified="1290783901522" org.eventb.texttools.text_representation="machine lift14_conv_lights refines lift13_conv_lights sees ctx5_scheduler&#10;&#10;variables PhyElevatorFloor PhyCableEngine PhyElevatorBetweenTwoFloors ctrlCableCommand snsrCableEngine snsrElevatorFloor PhyDoorEngine PhyDoorPosition ctrlDoorCommand snsrDoorEngine snsrDoorPosition PhyFloorButtonsSet snsrFloorButtonsSet PhyFloorButtonLightsSet ctrlFloorButtonLightsSet PhyUpButtonsSet snsrUpButtonsSet PhyUpButtonLightsSet ctrlUpButtonLightsSet PhyDownButtonsSet snsrDownButtonsSet PhyDownButtonLightsSet ctrlDownButtonLightsSet last_schedule schedule last_stop requests request_served&#10;&#10;variant (0‥LAST_FLOOR∖PhyDownButtonLightsSet) ∩ ctrlDownButtonLightsSet&#10;&#10;events&#10; event INITIALISATION extends INITIALISATION&#10; end&#10;&#10; event USER_PRESSES_DOWN_BUTTON extends USER_PRESSES_DOWN_BUTTON&#10; end&#10;&#10; event USER_RELEASES_DOWN_BUTTON extends USER_RELEASES_DOWN_BUTTON&#10; end&#10;&#10; convergent event TURNS_ON_DOWN_BUTTON_LIGHT extends TURNS_ON_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_DOWN_BUTTON_LIGHT extends TURNS_OFF_DOWN_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_down_button_light_on extends turn_down_button_light_on&#10; end&#10;&#10; convergent event turn_down_button_light_off extends turn_down_button_light_off&#10; end&#10;&#10; event USER_PRESSES_UP_BUTTON extends USER_PRESSES_UP_BUTTON&#10; end&#10;&#10; event USER_RELEASES_UP_BUTTON extends USER_RELEASES_UP_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_UP_BUTTON_LIGHT extends TURNS_ON_UP_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_UP_BUTTON_LIGHT extends TURNS_OFF_UP_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_up_button_light_on extends turn_up_button_light_on&#10; end&#10;&#10; convergent event turn_up_button_light_off extends turn_up_button_light_off&#10; end&#10;&#10; event USER_PRESSES_FLOOR_BUTTON extends USER_PRESSES_FLOOR_BUTTON&#10; end&#10;&#10; event USER_RELEASES_FLOOR_BUTTON extends USER_RELEASES_FLOOR_BUTTON&#10; end&#10;&#10; anticipated event TURNS_ON_FLOOR_BUTTON_LIGHT extends TURNS_ON_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; anticipated event TURNS_OFF_FLOOR_BUTTON_LIGHT extends TURNS_OFF_FLOOR_BUTTON_LIGHT&#10; end&#10;&#10; convergent event turn_floor_button_light_on extends turn_floor_button_light_on&#10; end&#10;&#10; convergent event turn_floor_button_light_off extends turn_floor_button_light_off&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_CLOSED extends DOOR_OPENS_WHEN_CLOSED&#10; end&#10;&#10; anticipated event DOOR_OPENS_WHEN_HALF extends DOOR_OPENS_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_OPENED extends DOOR_CLOSES_WHEN_OPENED&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_HALF extends DOOR_CLOSES_WHEN_HALF&#10; end&#10;&#10; anticipated event DOOR_CLOSES_WHEN_CLOSED extends DOOR_CLOSES_WHEN_CLOSED&#10; end&#10;&#10; anticipated event STOP_DOOR_ENGINE extends STOP_DOOR_ENGINE&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_UP extends ELEVATOR_LEAVES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_UP extends ELEVATOR_REACHES_FLOOR_UP&#10; end&#10;&#10; anticipated event ELEVATOR_LEAVES_FLOOR_DOWN extends ELEVATOR_LEAVES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event ELEVATOR_REACHES_FLOOR_DOWN extends ELEVATOR_REACHES_FLOOR_DOWN&#10; end&#10;&#10; anticipated event STOP_CABLE_ENGINE extends STOP_CABLE_ENGINE&#10; end&#10;&#10; anticipated event open_door extends open_door&#10; end&#10;&#10; anticipated event stop_door extends stop_door&#10; end&#10;&#10; anticipated event close_door extends close_door&#10; end&#10;&#10; anticipated event start_move_up extends start_move_up&#10; end&#10;&#10; anticipated event start_move_down extends start_move_down&#10; end&#10;&#10; anticipated event stop extends stop&#10; end&#10;&#10; anticipated event switch_schedule_to_up extends switch_schedule_to_up&#10; end&#10;&#10; anticipated event resume_schedule_up extends resume_schedule_up&#10; end&#10;&#10; anticipated event switch_schedule_to_down extends switch_schedule_to_down&#10; end&#10;&#10; anticipated event resume_schedule_down extends resume_schedule_down&#10; end&#10;end&#10;" version="5">
+<org.eventb.core.refinesMachine name="_ixF0oPluEd-1httaBm5m2g" org.eventb.core.target="lift13_conv_lights"/>
+<org.eventb.core.seesContext name="_ixF0ofluEd-1httaBm5m2g" org.eventb.core.target="ctx5_scheduler"/>
<org.eventb.core.variable name="_9uEEsNd9Ed-Dle0at0Xgqg" org.eventb.core.identifier="PhyElevatorFloor"/>
<org.eventb.core.variable name="_aGvwctq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyCableEngine"/>
<org.eventb.core.variable name="_aGwXgNq-Ed-L_e8_V4iXIg" org.eventb.core.identifier="PhyElevatorBetweenTwoFloors"/>
@@ -29,123 +29,124 @@
<org.eventb.core.variable name="_Utggce5-Ed-dEtybZVK09Q" org.eventb.core.identifier="schedule"/>
<org.eventb.core.variable name="_-7fiIPS-Ed-43_jmKUh78g" org.eventb.core.identifier="last_stop"/>
<org.eventb.core.variable name="_CM0ucPk9Ed-hoNTGCqdYog" org.eventb.core.identifier="requests"/>
+<org.eventb.core.variable name="_ixHp0PluEd-1httaBm5m2g" org.eventb.core.identifier="request_served"/>
<org.eventb.core.variant name="_4bEUQPfuEd-vgams47i3xA" org.eventb.core.expression="(0‥LAST_FLOOR∖PhyDownButtonLightsSet) ∩ ctrlDownButtonLightsSet"/>
<org.eventb.core.event name="'" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="INITIALISATION"/>
<org.eventb.core.event name="_3IkoxOWyEd-64JNDK1TKiQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_CM0ucfk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
+<org.eventb.core.refinesEvent name="_ixIQ4PluEd-1httaBm5m2g" org.eventb.core.target="USER_PRESSES_DOWN_BUTTON"/>
</org.eventb.core.event>
-<org.eventb.core.event name="_CM1VgPk9Ed-hoNTGCqdYog" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
-<org.eventb.core.refinesEvent name="_CM1Vgfk9Ed-hoNTGCqdYog" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
+<org.eventb.core.event name="_ixIQ4fluEd-1httaBm5m2g" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_RELEASES_DOWN_BUTTON">
+<org.eventb.core.refinesEvent name="_ixIQ4vluEd-1httaBm5m2g" org.eventb.core.target="USER_RELEASES_DOWN_BUTTON"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Il25eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="TURNS_ON_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_CM1Vgvk9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_ixIQ4_luEd-1httaBm5m2g" org.eventb.core.target="TURNS_ON_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3Imd9eWyEd-64JNDK1TKiQ" org.eventb.core.convergence="2" org.eventb.core.extended="true" org.eventb.core.label="TURNS_OFF_DOWN_BUTTON_LIGHT">
-<org.eventb.core.refinesEvent name="_CM1Vg_k9Ed-hoNTGCqdYog" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
+<org.eventb.core.refinesEvent name="_ixI38PluEd-1httaBm5m2g" org.eventb.core.target="TURNS_OFF_DOWN_BUTTON_LIGHT"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3InsEuWyEd-64JNDK1TKiQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_on">
-<org.eventb.core.refinesEvent name="_CM18kPk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_on"/>
+<org.eventb.core.refinesEvent name="_ixI38fluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_on"/>
</org.eventb.core.event>
<org.eventb.core.event name="_3IoTI-WyEd-64JNDK1TKiQ" org.eventb.core.convergence="1" org.eventb.core.extended="true" org.eventb.core.label="turn_down_button_light_off">
-<org.eventb.core.refinesEvent name="_CM18kfk9Ed-hoNTGCqdYog" org.eventb.core.target="turn_down_button_light_off"/>
+<org.eventb.core.refinesEvent name="_ixI38vluEd-1httaBm5m2g" org.eventb.core.target="turn_down_button_light_off"/>
</org.eventb.core.event>
<org.eventb.core.event name="_pvVR8eEsEd-bh-7nDQnLgQ" org.eventb.core.convergence="0" org.eventb.core.extended="true" org.eventb.core.label="USER_PRESSES_UP_BUTTON">