最小聯結片語

2021-09-07 09:17:02 字數 2462 閱讀 6870

有17個最小聯結片語(如果認為包含true和false的不是最小聯結片語,那麼最小聯結片語只有11個)

not(or)        |

not(=>) |not |

not(and) |

not |and |

not(=>) |not(xor) |

false |and |not(xor) |

xor |and |not(xor) |

false |=> |

not(=>) |=> |

not |=> |

xor |=> |

not |or |

false |not(xor) |or |

xor |not(xor) |or |

not(=>) |true |

xor |and |true |

xor |or |true |

整理一下

not(or)

not(and)

not,or

not,and

not,=>

not,not(=>)

not(=>),=>

not(=>),true

not(=>),not(xor)

=>,false

=>,xor

xor,and,not(xor)

xor,or,not(xor)

xor,and,true

xor,or,true

not(xor),and,false

not(xor),or,false

xor功能比false更豐富,因為false = a xor a,所以一切出現false的地方都可以用xor取代

i got this result by a violent method:if you run this program ,you can see more things.

#include#include#include#includeusing namespace std;

const int n = 1 << 16;//there are 65536 probability.

bool a[16][4]; //a 10 b 12

const char *desc[16] = ;

const char*desc_******[16] = ;

/*上表中,只有條件運算子和非條件運算子是不滿**換律,但是它們是等價的

也就是說:2,4等價,11,13等價,3,5等價

*/int eq = , eq_size = 3;

void init()

}}void show(int n)

void table()

int ans[n], ai = 0;//儲存全部的答案

//判斷集合set是否是完備的邏輯片語

bool ok(int n)

}return n == n - 1;

}void print(bool detail)

}puts("");

if (detail)

puts("");}}

}//根據eq陣列去掉等價的元素

void ******()

}ans[i] = n;

for (int j = 0; j < i; j++)

if (ans[i] == ans[j])

ans[i] = -1;

}int ind = 0;

for (int i = 0; i < ai; i++)

if (ans[i] != -1)ans[ind++] = ans[i];

ai = ind;

}bool visited(int x)

int main()

******();

print(false);

return 0;

}

1 1聯結詞真值運算

time limit 1000 ms memory limit 65536 kib submit statistic problem description 已知命題變元p和q的真值,求它們的合取式 p q 析取式 p q 蘊涵式 p q 等值式 a b 與非式 p q 或非式 p q 的真值。in...

1 1聯結詞真值運算

time limit 1000 ms memory limit 65536 kib problem description 已知命題變元p和q的真值,求它們的合取式 p q 析取式 p q 蘊涵式 p q 等值式 a b 與非式 p q 或非式 p q 的真值。input 多組輸入,每組測試資料輸入...

4148 1 1聯結詞真值運算

1.1聯結詞真值運算 time limit 1000 ms memory limit 65536 kib submit statistic discuss problem description 已知命題變元p和q的真值,求它們的合取式 p q 析取式 p q 蘊涵式 p q 等值式 a b 與非式...