拜占庭将军问题 The Byzantine Generals problem(二)

拜占庭将军问题 The Byzantine Generals problem(二)

(续)
为了证明算法OM(m),对任意的m,的正确性。首先证明以下引理。
Lemma1. 对任意的mk,如果将军个数大于2k+m,有最多k个叛徒,算法 OM(m)满足IC2 。
证明:针对m的取值情况进行分析。
1.m= 0,忠诚的将军只要服从将军的命令就可以了,引理成立。
2.假设m-1,m>0,时算法满足IC2,证明对m 成立。(归纳法)
算法第一步(1),忠诚的司令发送值vn-1个将领。第二步(2),每一个忠诚的将领调用算法OM(m-1)。
n>2k+m => n-1>2k+(m -1)>2k,多数的将领是忠诚的,每一个忠诚的将领得到一个vi=vn-1个值i中,在第三步majority(v1,…,vn-1)=v,满足IC2.

证明算法成立的定理1:
Theorem1.对任意的m,在人数大于3m,有m个叛徒的情况下,算法OM(m)满足条件IC1和条件IC2。
证明:针对m的取值情况进行分析。
1.m= 0,定理成立。
2.假设m-1,m>0,时成立,证明对m 成立。(归纳法)
在司令忠诚的情况下,令m=k,根据lemma1可知,IC2成立从而IC1成立。
所以只需要证明司令是叛徒的情况。有最多m个叛徒,司令为其中一个,所以还有m-1个将领是叛徒。人数大于3m,所以将领人数大于3m-1。
3m-1>3(m-1)
使用归纳假设法证明OM(m-1)满足条件CI1和CI2。因此,在第三步,对每一个j,任意两个忠诚的将军获得相同的值vj。从而任意两个忠诚的将军获得相同的值 在函数majority(v1,…,v*n*-1)在第三步,IC1的证。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值