最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

第 33 講:強弱關系新定義及強ALS

2021-07-05 08:55 作者:SunnieShine  | 我要投稿

接續(xù)上文的內容……

Part 2 鏈的第二定義

現(xiàn)在我們來學習一種新的鏈的定義。

在之前的內容里,我們已經(jīng)了解到了,鏈由兩種關系構成:強關系和弱關系。它們各自的定義如下。

  • 強關系:如果節(jié)點1為假時得到節(jié)點2為真,則稱節(jié)點1和節(jié)點2有強關系。

  • 弱關系:如果節(jié)點1為真時得到節(jié)點2為假,則稱節(jié)點1和節(jié)點2有弱關系。

不過你可能會想過這樣一個問題。為什么節(jié)點1到節(jié)點2的順次邏輯,在結論里就被敘述為“節(jié)點1和節(jié)點2之間有強弱關系”了呢?難道不是“節(jié)點1到節(jié)點2有強弱關系”嗎?

這個問題問得好,我們來看看如何去回答。首先,我們得了解鏈的新的定義方式。雖說是新的定義方式,但實際上和之前的定義是完全等價的兩種不同說法而已。

我們在高中學習過命題和邏輯一章,并了解了原命題、逆命題、否命題和逆否命題,其中逆命題和否命題真值相同(即要么都對,要么都不對);同理,原命題和逆否命題的真值相同。如圖所示。

那么,我們回顧一下強弱關系的定義,拿強關系舉例,因為是證明,所以我們把命題的結論從“則稱節(jié)點1和節(jié)點2有強關系”也替換為“則稱為節(jié)點1到節(jié)點2有強關系”(改成有方向的)。此時我們取出其中的條件部分。

如果節(jié)點1為假,則節(jié)點2為真。

我們如果把它看作原命題,那么它的逆否命題則是把條件和結論都取反后再交換。那么命題就變?yōu)榱?/p>

如果節(jié)點2為假,則節(jié)點1為真。

這兩種說法明顯是互為逆否命題的,所以真值相同,所以這種說法顯然也可以替換到原來的強關系的定義里的,即變?yōu)?/p>

如果節(jié)點2為假得到節(jié)點1為真,則稱節(jié)點1到節(jié)點2有強關系。

顯然,這個說法已經(jīng)把節(jié)點1和節(jié)點2互換了方向,但依然可以得到強關系。而這個逆否命題的說法顯然對應的應該是

如果節(jié)點2為假得到節(jié)點1為真,則稱節(jié)點2到節(jié)點1有強關系。

所以可以看到,一個條件可以得到兩個方向的結論。所以強關系是不受方向的約束的,即正著推和倒著推都是可以得到結論的;同理,弱關系的證明完全是一樣的。

所以,強關系和弱關系并不受到方向的約束。而鏈是完全依賴于強關系和弱關系的,而強關系和弱關系都可以反向推理和理解,所以鏈是完全可以反向理解的,故鏈是可以反向來推理和理解的(或者換句話說,鏈的兩個方向推理結果都能得到一致的結論;或者干脆可以直接說鏈不具有方向性)。

那么,除了能夠得到這一點外,我們還能得到什么東西呢?強弱關系的新的定義。

由于強弱關系都可以逆向理解,那么我們同時給出兩種寫法,看看有什么新的結論:

  • 從節(jié)點1假到節(jié)點2真。

  • 從節(jié)點2假到節(jié)點1真。

這分明說的就是兩個節(jié)點不同假。因為不管兩個節(jié)點哪個為假,都能推導得到另外一個節(jié)點是必須為真的,所以,強關系還可以被敘述為“兩個節(jié)點不可以同為假”。

同理,我們寫出弱關系的兩種說法:

  • 從節(jié)點1真到節(jié)點2假。

  • 從節(jié)點2真到節(jié)點1假。

可以看到,不論哪個節(jié)點為真,都必須得到另外一個節(jié)點是為假的。所以,弱關系也可以被改變敘述為“兩個節(jié)點不可以同為真”。所以,我們就得到了強弱關系的新定義方式:

  • 強關系(新定義):如果兩個節(jié)點不同假,則稱兩個節(jié)點有強關系;

  • 弱關系(新定義):如果兩個節(jié)點不同真,則稱兩個節(jié)點有弱關系。

這個說法有什么用途呢?可以看到,這種說法就可以去驗證各式各樣的強弱關系了,它并不受到之前共軛對等同在一個區(qū)域下的候選數(shù)的約束。我們可以利用這一點來得到一些更為奇妙的結果和結論;如果使用之前的邏輯,就不一定能得到,因為從之前的定義來看,對于ALS就顯得很“無力”,因為ALS里的關系的發(fā)散的,你可以隨便從之前的某個節(jié)點往下連接到ALS里的任意成立的情況,而這些情況不止一種,即并不是一種確切的情況。所以,這種新的定義模式會更加靈活、高效地把鏈使用起來。

不過,需要你注意的是,在新的定義里,我們完全可以察覺到一個奇妙的地方。比如強關系,我們仔細看它的定義就可以發(fā)現(xiàn),“節(jié)點不同假”包含了一種情況,即“兩個節(jié)點同真”,因為兩個節(jié)點一共只包含四種填數(shù)可能:甲真乙真、甲真乙假、甲假乙真、甲假乙假。而不同假指的是兩個節(jié)點里不能同時都是假,所以只排除了最后的一種情況,而剩下的三種情況里,是包含“同真”的結果的;同理,因為強弱關系的定義是對稱的,所以弱關系還包含“同假”的結果的,所以請你務必重視,不要漏了這個特殊的情況,在某些特殊的時候,這個特殊的條件會對我們做題具有相當大的幫助,例如后面會介紹到的毛刺(Burr Rule)和毛邊(Bi-burr Rule)。

Part 3?ALS的互補視角

接下來,我們來試著理解一下ALS的互補視角。

如圖所示,我們先把鏈的文本形式寫出來:

可以從例子里發(fā)現(xiàn),圖中存在兩個ALS區(qū)域,它實際上就是一個ALS-XZ,不過從例子里看到,它并未畫出之前那樣合適的ALS區(qū)域;相反地,它卻畫出了原來ALS區(qū)域所涉及不到的單元格。這是怎么一回事?

我們這么思考這個問題。首先我們來分析c2的異數(shù)強關系r1c2(3)=r7c2(9)。我們利用新的強關系定義,如果它們同假,則c2放下3和9的位置只有r8c2一處,但r8c2顯然不能同時放下3和8,所以出現(xiàn)矛盾,所以兩個節(jié)點不同假,即形成了強關系。這一點是比較好理解的。

同理,我們再來看c9的異數(shù)強關系r7c9(9)=r2c9(3)。如果兩個節(jié)點同為假,則會發(fā)現(xiàn)3、8、9在c9只能放在r58c9兩處。顯然,r58c9只有兩個單元格,而3、8、9是三種數(shù)字,顯然是放不到兩個單元格里的,所以這樣必然會產(chǎn)生矛盾。因此,強關系也是成立的。

這便是ALS的互補觀察視角,即通過互補的角度作為占位來處理和推導矛盾:選取和原ALS涉及單元格互補的單元格,再把ALS沒有涉及的數(shù)字全部圈出來,即構成互補結構。

Part 4?鏈式ALS結構拓展

接下來我們來看一下,套用鏈的ALS結構都有哪些拓展構型。

4-1?帶雙RCC的ALS-雙強鏈法則

如果我們之前學到的ALS-XZ并不夠新奇的話,我們現(xiàn)在就來接觸一種新的ALS-XZ,而這種結構更為特殊。

在此之前,我們先來介紹一個術語:嚴格共享候選數(shù)(Restricted Common Candidate,簡稱RCC),這個詞在一些軟件和分析ALS技巧里經(jīng)常使用。

我們先來說說RCC是什么。RCC實際上指的是之前ALS-XZ里的那個X,即弱關系連接的候選數(shù)。也就是說,一般來說ALS-XZ只有一個RCC(因為ALS-雙強鏈法則規(guī)定了鏈只有一個弱關系,故只可能有一個RCC),例如第一個示例里的1和第二個示例里的8,就是RCC。

那么,ALS-雙強鏈法則是否可能產(chǎn)生兩個RCC呢?答案是可以,不過因為從結構上根本不可能實現(xiàn)兩個弱關系,那么怎么形成呢?我們來看下面這則示例。

如圖所示,我們把r2c239看作一組ALS(三個單元格,有2、4、7、9四種候選數(shù)),r4c23看作一組ALS(兩個單元格,有1、2、4三種候選數(shù))。這個鏈的寫法如下:


這個結構可以寫成兩個不同的鏈結構。也就是說,這個結構自帶了2和4兩個RCC。根據(jù)原定的ALS-XZ邏輯,那么可以刪除掉的是c2內其余單元格的候選數(shù)2,以及c3內其余單元格的候選數(shù)4。那這題為啥標注了那么多紅色的刪數(shù)?

回想一下RCC的特征:RCC呈弱關系,意味著兩數(shù)不可同真。不可同真本應該指的是“同假”或“有且僅有一個為真”,但是當我們刪除掉c2內其余單元格的候選數(shù)2和c3的其余單元格的候選數(shù)4之后,RCC就不可能再同假了。因為刪掉這些數(shù)之后,c2其余位置就不再存在填入2的地方,c3的其余位置也就不存在填入4的地方,此時RCC變?yōu)楣曹棇?。共軛對即一真一假,比如圖中r24c2(2)這個共軛對,只能是一真一假,r24c3(4)也是一樣的情況。首先,我們根據(jù)上面描述出來的兩條鏈,可以看到兩個強關系:

  • r2c2(2)=r2c3(4)

  • r4c2(2)=r4c3(4)

這意味著r2c2(2)和r2c3(4)不可同假,同時r4c2(2)和r4c3(4)也不可同假,而且r24c2(2)和r24c3(4)又都只能是一真一假。這樣的話,r24c2(2)和r24c3(4)這四個候選數(shù)的填數(shù)情況只可能是以下兩種可能了:

  • r2c2(2)和r4c3(4)同時為真;

  • r2c3(4)和r4c2(2)同時為真。

別無其它可能。這樣一來,觀察r2c239這組ALS,里面的r2c2和r2c3其中有且僅有一格被RCC數(shù)字占據(jù)。那么,ALS內其余兩格,則會構成79數(shù)對。同理,r4c23這組ALS,里面的r4c2和r4c3其中有且僅有一格被RCC數(shù)字占據(jù),剩下一格就一定是數(shù)字1。也就是說,結構r2c239(靠上方)這組ALS一定會產(chǎn)生79數(shù)對,r4c23(靠下方)這組ALS一定會產(chǎn)生數(shù)字1,所以r2的其余位置都不應該填入數(shù)字7和9,r4和b4內的其余位置也都不應該填入數(shù)字1,因此刪掉它們。

這個結構分析起來非常復雜,因為帶有了兩個RCC,并且組成了特別的結構。

它的名字是什么呢?帶有雙RCC的ALS-XZ(Doubly Linked ALS-XZ);而對比這種說法,最開始的結構因為只有一個RCC,所以可以被稱為帶有單RCC的ALS-XZ(Singly Linked ALS-XZ)。

4-2?ALS-XY-Wing

4-2-1 普通的ALS-XY-Wing示例

在之前的Wing結構一節(jié)里,我們介紹了一些Wing的鏈式寫法,其中提到了XY-Wing,那么我們來看看ALS可否和XY-Wing交織形成新的東西。

如圖所示,鏈的寫法如下:

在例子里,為了簡化涂色邏輯和思維,而且我們也講到了互補的視角,所以圖上全部都是ALS的互補視角的繪制邏輯。

如果{r1c789, r3c9}(2)和r1c78(9)同假的話,則可以發(fā)現(xiàn)b3里能放下2、4、9的位置只有兩個單元格,出現(xiàn)矛盾;同理,如果r1c12(9)和r3c3(7)同假的話,則b1里放7和9的位置只有一個單元格可填,出現(xiàn)矛盾;如果r6c3(7)和r6c7(2)同假,則r6里只有一個單元格能放2和7,也是放不下的,出現(xiàn)矛盾。

所以,所有強關系都成立。不過,為什么它跟XY-Wing沾邊呢?從這個鏈涉及的候選數(shù)的順序來看,是2=9-9=7-7=2,和XY-Wing的鏈的寫法完全是一樣的,所以這個結構就叫做ALS-XY-Wing。

4-2-2?ALS區(qū)域有重疊的ALS-XY-Wing

我們再來看一則示例。

如圖所示,這個鏈看起來比較混亂,因為有一部分ALS和ALS是重疊的。我們先寫出文本表達:

這個示例一共是涉及了三個ALS區(qū)域,而其中最容易理解和明白的ALS區(qū)域是{r5c6, r6c56}(1245)和r2c356(1568)。實際上,b2里有一個ALS區(qū)域是{r1c45, r2c56, r3c456}(12345689)。這個區(qū)域稍微大了點,涉及了七個單元格,并包含了8種數(shù)字,但也確實滿足ALS的要求,所以也是合格的ALS。

別看數(shù)很多,邏輯還是很清晰的。如果r2c36(8)為假,則r3c6(1)必須為真,否則紫色的ALS區(qū)域里將少掉兩種數(shù)字1和8,使得四個單元格僅填兩種數(shù)字,顯然是不夠填的,所以產(chǎn)生矛盾;而第二個ALS區(qū)域就不用過多分析了;第三個ALS因為涉及了7個單元格,所以顯得很復雜。從之前的邏輯,我們推理到了r2c5(5)為假,則r3c46(8)此時必須為真,否則的話,在這個區(qū)域里其余位置也沒有其它的5和8,所以會少兩種數(shù)字,7個單元格就只能填入6種數(shù)字,導致填數(shù)不夠的矛盾。所以強關系是成立的。

此時,這個例子特殊的地方僅僅是,ALS區(qū)域有重疊,導致了理解起來的不便;不過針對于這種例子,我們可以嘗試使用互補視角來觀察:如果5和8都去掉后,b2里只有r2c4能放下5和8,而顯然是不能同時放下兩個數(shù)的,所以矛盾。

4-3?ALS-雙值格鏈

接下來我們再看一則更長的ALS鏈式結構。

如圖所示。

這個鏈內一共有四個ALS區(qū)域,它們分別是r1347c8、r9c34568、{r7c1, r9c2}和r2c126。分析方式和之前的ALS-XY-Wing等結構相同,這里就不再重復。強關系依然采用“不可同時為假”進行分析。不過,如果你覺得這種結構過大的話,可以試試互補視角,不過互補視角后,部分位置就會產(chǎn)生重疊。如圖所示。

5-4?ALS-W-Wing

接下來再來看一則示例。

如圖所示,鏈如下所示:

這個鏈內一共有兩個ALS,并且位于首尾。所以利用剛才的結論,我們可以知道,r7c23(8)和r7c23(1)是強關系。同時為假的時候,r7c23內只有3這一種候選數(shù)可填,這顯然不成立。結尾的強關系也是一樣。

這個結構的寫法非常類似于W-Wing的結構:(w=x)-x=x-(x=w),所以被稱為ALS版本的W-Wing,即ALS-W-Wing。

4-5 死亡綻放

接下來我們來說一個和Wing里分類討論模式非常相似的ALS技巧:死亡綻放(Death Blossom)。

4-5-1?三個花瓣

如圖所示,圖中一共使用了兩個ALS區(qū)域:r23c45(23567)和r239c5(2467)。

我們按r7c4作為拐點進行分情況討論。

  • 假設r7c4 = 3,則由于r3c4 <> 3的關系,如果此時橙色ALS里如果沒有2,則會少兩種數(shù)字,便出現(xiàn)錯誤,所以{r2c45, r3c5}(2)為真;

  • 假設r7c4 = 4,則r9c5 <> 4,如果此時r239c5(2)全部消失,則紅色ALS里同時少了兩種數(shù)字,導致不夠填的矛盾;

  • 如果r7c4 = 5,和第一個情況類似,得到橙色ALS里無法填數(shù)。

所以,由于三種情況都可以得到2為真的結果,而r7c4只有三種情況,所以{r2c4, r239c5}(2)里必須至少有一個數(shù)字2為真,所以刪除掉這4個2的交集。

在死亡綻放里,我們把類似于Wing類分支情況的技巧里的拐點或折點稱為花瓣單元格(Petal Cell),這個單元格有幾個候選數(shù)就稱有幾個花瓣。比如該示例里有三個候選數(shù),即三個花瓣。

4-5-2?四花瓣

如圖所示,我們按r9c1進行分情況討論。

  • 假設r9c1 = 2時,r8c23 <> 2,如果r8c6 <> 5則在橙色ALS里少了兩種候選數(shù),導致填數(shù)不夠,所以r8c6 = 5;

  • 假設r9c1 = 4,則紅色ALS,可以得到r8c6 = 5;

  • 假設r9c1 = 6,則綠色ALS里必須讓r6c7 = 5,否則綠色ALS里少兩種數(shù)字,不夠填數(shù),出現(xiàn)矛盾;

  • 假設r9c1 = 7,則橙色區(qū)域和情況1一樣,r8c6 = 5。

所以,不管是什么情況,最終必須r6c7或r8c6里至少有一個單元格是5,所以刪除其交集,即r8c7(5)。

這個示例帶有四個花瓣。一般來說,三個花瓣的示例找起來就比較困難了,所以一般四個花瓣的很少發(fā)現(xiàn),甚至發(fā)現(xiàn)不了,所以僅供參考和學習。

4-5-3?五花瓣

如圖所示,這個示例帶有5個ALS區(qū)域(分別用紅色、橙色、綠色、藍色和紫色五種顏色來表示,注意r3c6被三個ALS區(qū)域共用),也恰好有5個花瓣。不過這個例子依然和之前的推理方式一致,所以我們此處不再重新推理,不過題目很漂亮,可以拿來學習和參考。

4-5-4 六花瓣

請自行推理。

4-6?帶ALS的鏈

4-6-1?普通的例子

如圖所示,這個鏈的寫法如下:

如圖所示,這個例子就不用過多解釋了,它的原理和之前的ALS完全一樣,只是注意一下c9的ALS,此處畫出的是它的互補視角:如果同假后,2、6、7將只能放在兩個單元格里,顯然不夠填,導致矛盾。

4-6-2?假SDC的強關系

之前我們說過SDC技巧,但是我們從來沒有想過,把SDC插入到鏈里使用。我們來看看SDC如何放到鏈里去靈活使用。

先來看第一個示例。

這是一條長為1的鏈,沒錯,它只有一個強關系構成,雖然這一點有點別扭,但實際上在鏈的定義和敘述里,我們明確說到“以強關系開頭結尾,并且奇數(shù)長度”。這個例子確實強關系開頭也是強關系結尾(只是它們都是同一個強關系),而1確實也是一個奇數(shù)。

這條鏈的邏輯很簡單,r1c7(1)和r8c8(1)不同假。那為什么不同假?如果把它倆去掉,則一個看起來像SDC的結構{r13c7, r238c8}五個單元格僅包含2、3、6、7,而且全部的數(shù)字都不跨區(qū)出現(xiàn)(2、3只出現(xiàn)在b3里,6、7只出現(xiàn)在c8上)。這顯然是一個SDC結構了。不過試想一下,如果所有數(shù)字都不跨區(qū),而且還沒有一樣的數(shù)字,就意味著這些數(shù)必須有且僅有一個,不多也不少。可是,這一共是五個單元格,卻只有2、3、6、7四種數(shù),使用SDC的跨區(qū)數(shù)組的邏輯是完全填不滿的。是的,這就意味著SDC就直接自動出錯了。故假設錯誤,即r1c7(1)和r8c8(1)必須至少有一個為真。

可以看到,這里的SDC實際上是一個假的SDC,根本就經(jīng)不起推敲。五個單元格只有四種填數(shù)是顯然直接出錯的,而這種結構只是長相很類似SDC,所以這里把這個結構稱為假SDC(Fake SDC)。

這種假SDC在鏈里很喜歡出現(xiàn),而且這種結構在使用的時候會非常靈活。而且,這種結構跨區(qū)域產(chǎn)生了強關系,非常厲害。

接下來我們再來看一則示例。

如圖所示,表示如下。

最難理解的地方就是這里的SDC兩端的5的節(jié)點。我們假設r1c6(5)和r1c2379(5)同假,則在{r1c2379, r3c3}里只剩下2、3、4、8,而且2、3只出現(xiàn)在r1上,4、8只能出現(xiàn)在b1里。并且涉及五個單元格,但五個單元格無法填入2、3、4、8四種數(shù)字,所以出現(xiàn)矛盾。故這兩個關于5的節(jié)點不同假。

4-6-3?節(jié)點重疊

這個示例有些奇葩,鏈如下所示:

這個鏈頭r3c13(7)和鏈尾r23c1(7)都是7的區(qū)塊。不過有些特殊的是,r3c1(7)被兩個區(qū)塊組共用。不過,刪數(shù)也是存在的。因為r3c13(7)和r23c1(7)至少一個為真,意味著這三個單元格的候選數(shù)7,至少都有一個位置是為真的(r3c1(7)為真,就是這個特殊情況)。刪掉交集,也就是b1的其余位置的7啦。

之前說到過,節(jié)點不一定只是候選數(shù),也可以是區(qū)塊,所以這里的鏈頭和鏈尾就是兩個區(qū)塊了,它們有部分重疊,所以稱為節(jié)點重疊。

當然了,節(jié)點重疊并不一定是區(qū)塊和區(qū)塊之間,也可能是ALS內部產(chǎn)生的部分之間的重疊。比如這個例子:

其中,r48c8(7)=r8c8(8)是產(chǎn)生于r48c8內的ALS,而r6c9(8)=r4c8(7)則是產(chǎn)生于{r4c8, r6c9}的ALS。

這個結構就比起剛才的難觀察一些了。


第 33 講:強弱關系新定義及強ALS的評論 (共 條)

分享到微博請遵守國家法律
富顺县| 汉源县| 海安县| 沈阳市| 驻马店市| 西青区| 玉龙| 岚皋县| 漳州市| 常山县| 甘南县| 无极县| 湖南省| 鹿泉市| 乌鲁木齐市| 贞丰县| 五台县| 锡林浩特市| 长兴县| 阜新| 塔城市| 宁晋县| 根河市| 梁河县| 威远县| 天峨县| 尉氏县| 汾阳市| 广水市| 乌兰察布市| 田阳县| 图片| 台前县| 花莲县| 民县| 东乡| 吉安市| 土默特左旗| 常德市| 达孜县| 固安县|