github.com/ari-anchor/sei-tendermint@v0.0.0-20230519144642-dc826b7b56bb/spec/light-client/accountability/MC_n4_f2.tla (about) 1 ----------------------------- MODULE MC_n4_f2 ------------------------------- 2 CONSTANT 3 \* @type: ROUND -> PROCESS; 4 Proposer 5 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 33 INSTANCE TendermintAccDebug_004_draft WITH 34 Corr <- {"c1", "c2"}, 35 Faulty <- {"f3", "f4"}, 36 N <- 4, 37 T <- 1, 38 ValidValues <- { "v0", "v1" }, 39 InvalidValues <- {"v2"}, 40 MaxRound <- 2 41 42 \* run Apalache with --cinit=ConstInit 43 ConstInit == \* the proposer is arbitrary -- works for safety 44 Proposer \in [Rounds -> AllProcs] 45 46 =============================================================================