github.com/vipernet-xyz/tm@v0.34.24/spec/light-client/accountability/MC_n4_f2_amnesia.tla (about)

     1  ---------------------- MODULE MC_n4_f2_amnesia -------------------------------
     2  EXTENDS Sequences
     3  
     4  CONSTANT Proposer \* the proposer function from 0..NRounds to 1..N
     5  
     6  \* the variables declared in TendermintAcc3
     7  VARIABLES
     8    round, step, decision, lockedValue, lockedRound, validValue, validRound,
     9    msgsPropose, msgsPrevote, msgsPrecommit, evidence, action
    10  
    11  \* the variable declared in TendermintAccTrace3
    12  VARIABLE
    13    toReplay
    14  
    15  \* old apalache annotations, fix with the new release
    16  a <: b == a  
    17  
    18  INSTANCE TendermintAccTrace_004_draft WITH
    19    Corr <- {"c1", "c2"},
    20    Faulty <- {"f3", "f4"},
    21    N <- 4,
    22    T <- 1,
    23    ValidValues <- { "v0", "v1" },
    24    InvalidValues <- {"v2"},
    25    MaxRound <- 2,
    26    Trace <- <<
    27      "UponProposalInPropose",
    28      "UponProposalInPrevoteOrCommitAndPrevote",
    29      "UponProposalInPrecommitNoDecision",
    30      "OnRoundCatchup", 
    31      "UponProposalInPropose",
    32      "UponProposalInPrevoteOrCommitAndPrevote",
    33      "UponProposalInPrecommitNoDecision"
    34    >> <: Seq(STRING)
    35  
    36  \* run Apalache with --cinit=ConstInit
    37  ConstInit == \* the proposer is arbitrary -- works for safety
    38    Proposer \in [Rounds -> AllProcs]
    39  
    40  =============================================================================