Re: [問題] hw5

作者: ric2k1 (Ric)   2010-05-20 02:01:06
※ 引述《kalawang ()》之銘言:
: ※ 引述《kaie819 (kaie)》之銘言:
: : 有關於watching-known我有點疑問,我想請問究竟是誰的watching-known會包含
: : XOR gate a。以講義p.101頁為例,XOR gate a本身的watching-known會有自己,
: : 以及連接到這個gate a的gate (OR gate b)的watching-known會有a,意味著,只
: : 要gate a或b的value改變(0或1),就要去update他們watching-known list裡面的
: : gate的watched pin。不過我翻了一下原始的paper(QuteSAT),相同的例子,差別
: : 是XOR gate a的watching-known是不包含自己的,反倒是再watching-0裡有,讓我
: : 有點混淆了...
: : 除了這個,作業題目的起始條件中,OR gate b的watching-known應該包含
: : XOR gate a嗎?還有就是是否gate一旦有值了(known),就不應該出現在watching list
: 裡?
: 不負責任亂回答 不對請大家指正~~
: HW5裡 XOR gate watched pin 是a跟d,gate a並沒有watch b這個pin 所以不需要
: 放在b的watching-known裡 =>gate b得到watched value 1時 不需要update a的
: watched pointer
正確
: 至於第二個問題 我想它如果找得到新的pin來watch的話 應該就會把自己從
: watching list裡面移掉 如果找不到新的pin來watch的話(conflict)
: watching list應該 就會不變 所以還是會有保留自己?
因為 OR gate b 一開始並不是 XOR gate a 的 watched pin,
所以 b 的 watching know list 不會有 a (i.e. 沒有東西)
一個 gate x 一旦有值 (v) 了, 它會做以下的事情:
1. 執行 direct implications
2. 根據 watching-v 以及 watching-known lists, 去呼叫這些 gates 的
updateWatch()
3. 清掉 上述兩個 watching lists
4. 如果在 2 裏面一些 gates 的 updateWatch() 失敗, i.e. conflict or 找不到
new pin 可以 update watched pin pointer, 則這些 gates 會被放回 x 對應的
watching list 裏面
: 以上無聊再看看就好 有錯也是很合理...
: : 另外我想請問HW5第3題的部份
: : 請問所產生的CNF是否包含f本身(f satisfibility的問題)
: : 在(a)小題看來似乎是沒有,因為題目已經說會產生(m+n+5)個clauses
: : 但(b)似乎要有f(或f')才能做的樣子
這題題目是有欠周詳...
我的原意是 這個 AOI gate 只是 circuit 的一部分,
所以並沒有 f 應該要等於 1 or 0 的 issue.
至於 PG encoding, 大家也可以想一下, 在不同情況下(e.g. fanout 接到不同人)
它的 number of clauses 是否也會不同? 請討論看看.
: 其實我不太懂plaisted greenbaum轉換方法
: 有沒有人能教一下
: 看投影片的意思好像是把f<->換成f->單向的方法就是做plaisted greenbaum?
: 有人可以開導一下我嗎..
講義的例子是因為 target 是 f = 1,
所以可以將 f <-> 換成 f ->
如上所述, 在不同情況底下 PG encoding "也許" 也會不一樣, 討論看看!
: : 問的有點細,不過還是希望能幫忙解答一下,謝謝。

Links booklink

Contact Us: admin [ a t ] ucptt.com