我现在一直在努力通过正式化和彻底证明以下方式:
我们获得了一个城市的街道网络。证明如果我们通过创建最多p个区块来移除该网络中的所有周期,那么我们可以通过反转最多p个街道的一种方式来移除城市网络中的所有周期。
阻挡意味着阻碍一条街道。反转 - (在双向街道的情况下)意味着其中一种方式被颠倒,然后两种方式都是相同的。倒转(在单行道的情况下)意味着唯一的方式是倒置的
现在,问题转化为首先有一个随机有向图,这可能有我们必须删除的周期。通过BLOCKING方法,我们保证如果我们最多阻塞p个节点,我们将获得一个DAG。因此,简而言之,问题实际上是证明阻塞在结果和步骤(去除/反转的边数)方面是相同的。
为了测试双向街道的等效性,这是非常多余的:
阻塞:A ---> B,B <--- A. 通过阻塞变成A ---> B / A <--- B而另一个阻塞
对于倒车,它仍然变为A ---> B / B ----> A,其中一种方式是颠倒的
但是,我应该做些什么来证明它们在单行道的情况下是等价的?我已尝试在有向图中以不同的周期进行测试,以查看恢复一个拱是否可以创建更多周期,而实际上它只是保持相同的数字或减少它们。但我不知道如何正式证明这两个操作的等效性。
这是数学(图论)问题。
证明的概要是将p阻塞映射到p反转以获得相同的结果(去除所有循环。)
在双向街道上的阻挡和反转具有相同的效果(使街道单向。)
主要的是要证明单向街道的倒置不会留下一个通过阻挡该街道而被移除的循环。这可以通过假设反转将离开/创建一个否则被阻止的循环来看出。该周期与阻止同一街道阻止的周期方向相反。所以,我们有两个循环在一条街上相反的方向相遇。这些周期(没有街道)可以连接成一个不包括该街道的周期,因此该街道上的街区不会移除该周期。这是一个矛盾,根本不需要阻挡那条街道。