Documentation

Gossip.Error.Cor

Synchronous One-Error Gossip with Correction #

Call Correction #

Single Call Correction #

def Error.Call.cor {n : } :
AgentCallCall
Equations
Instances For
    theorem Error.Call.cor_cons_maxOne {n✝ : } {κ : Call} {σ : List Call} {b : Agent} :
    maxOne (κ :: σ)maxOne (cor b κ :: σ)
    @[simp]
    theorem Error.Call.cor_same_role {n : } {a b : Agent} {κ : Call} :
    roleOfIn a (cor b κ) = roleOfIn a κ
    @[simp]
    theorem Error.call_cor_pair {n : } (b : Agent) (κ : Call) :
    (Call.cor b κ).pair = κ.pair

    The pair of κ.cor is the same as pair of κ.

    Sequence Call Correction #

    @[irreducible]
    def Error.cor {n : } :
    Equations
    Instances For
      @[simp]
      theorem Error.cor_errFree {n : } {σ : Sequence} {b : Agent} (h : errFree σ) :
      errFree (cor b σ)
      @[simp]
      theorem Error.cor_maxOne {n : } {σ : Sequence} {b : Agent} (h : maxOne σ) :
      maxOne (cor b σ)
      @[simp]
      theorem Error.cor_same_length {n✝ : } {b : Agent} {σ : Sequence} :
      theorem Error.cor_cons {n : } {b : Agent} {κ : Call} {σ : Sequence} :
      cor b (κ :: σ) = Call.cor b κ :: cor b σ
      theorem Error.not_in_call_then_consider_cor {n✝ : } {a : Agent} {κ : Call} {S : Dist} {σ : List Call} {o : maxOne (κ :: σ)} {a✝ : } {h1 : OSequence.length κ :: σ, o = a✝} {b : Agent} {o' : maxOne (Call.cor b κ :: σ)} {h2 : OSequence.length Call.cor b κ :: σ, o' = a✝} (not_in_call : roleOfIn a κ = Role.Other) :
      equiv a (S, κ :: σ, o, h1) (S, Call.cor b κ :: σ, o', h2)
      @[simp]
      theorem Error.cor_errFree_id {n : } (b : Agent) (σ : Sequence) (h : errFree σ) :
      cor b σ = σ

      If σ is error-free, then cor b σ = σ.