You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
1.5 KiB

  1. ---------------------- MODULE MC_n4_f2_amnesia -------------------------------
  2. EXTENDS Sequences
  3. CONSTANT
  4. \* @type: ROUND -> PROCESS;
  5. Proposer
  6. \* the variables declared in TendermintAcc3
  7. VARIABLES
  8. \* @type: PROCESS -> ROUND;
  9. round,
  10. \* @type: PROCESS -> STEP;
  11. step,
  12. \* @type: PROCESS -> VALUE;
  13. decision,
  14. \* @type: PROCESS -> VALUE;
  15. lockedValue,
  16. \* @type: PROCESS -> ROUND;
  17. lockedRound,
  18. \* @type: PROCESS -> VALUE;
  19. validValue,
  20. \* @type: PROCESS -> ROUND;
  21. validRound,
  22. \* @type: ROUND -> Set(PROPMESSAGE);
  23. msgsPropose,
  24. \* @type: ROUND -> Set(PREMESSAGE);
  25. msgsPrevote,
  26. \* @type: ROUND -> Set(PREMESSAGE);
  27. msgsPrecommit,
  28. \* @type: Set(MESSAGE);
  29. evidence,
  30. \* @type: ACTION;
  31. action
  32. \* the variable declared in TendermintAccTrace3
  33. VARIABLE
  34. \* @type: TRACE;
  35. toReplay
  36. INSTANCE TendermintAccTrace_004_draft WITH
  37. Corr <- {"c1", "c2"},
  38. Faulty <- {"f3", "f4"},
  39. N <- 4,
  40. T <- 1,
  41. ValidValues <- { "v0", "v1" },
  42. InvalidValues <- {"v2"},
  43. MaxRound <- 2,
  44. Trace <- <<
  45. "UponProposalInPropose",
  46. "UponProposalInPrevoteOrCommitAndPrevote",
  47. "UponProposalInPrecommitNoDecision",
  48. "OnRoundCatchup",
  49. "UponProposalInPropose",
  50. "UponProposalInPrevoteOrCommitAndPrevote",
  51. "UponProposalInPrecommitNoDecision"
  52. >>
  53. \* run Apalache with --cinit=ConstInit
  54. ConstInit == \* the proposer is arbitrary -- works for safety
  55. Proposer \in [Rounds -> AllProcs]
  56. =============================================================================