T*******x 发帖数: 8565 | 1 【 以下文字转载自 Mathematics 讨论区 】
发信人: PoloAlto (高宝宝), 信区: Mathematics
标 题: 没有一种数学运算可以取代布尔运算?
发信站: BBS 未名空间站 (Sun Mar 11 18:44:15 2018, 美东)
因为要写一个连续多次布尔运算矩阵的程序。
就想用数学0,1取代T&F
布尔运算是与或非三种运算。
矩阵里面主要是加法和乘法
+=or *=and
比如用
0+0=0 0+1=1
0*0=0 1*1=1
可是
1+1=2
不是封闭的。
0&inf
倒是符合以上所有条件。
可是不能做逻辑反转。
是否存在这样一个群,环,可以有加法乘法。代替布尔运算??
或者在这个环上把一些元素定义为0,另外一些定义为1? | T*******x 发帖数: 8565 | 2 HarvardThief (博后肄业)
10 24.* 5/19/18, 23:54:33
没啥不行的啊,我一个生物苦逼数据处理员都能想出来:
变量a和b,取值1或0
AND:a*b
OR: 1-(a-1)*(b-1)
XOR: (a-0.5)*(b-0.5)*2 + 0.5
【在 T*******x 的大作中提到】 : 【 以下文字转载自 Mathematics 讨论区 】 : 发信人: PoloAlto (高宝宝), 信区: Mathematics : 标 题: 没有一种数学运算可以取代布尔运算? : 发信站: BBS 未名空间站 (Sun Mar 11 18:44:15 2018, 美东) : 因为要写一个连续多次布尔运算矩阵的程序。 : 就想用数学0,1取代T&F : 布尔运算是与或非三种运算。 : 矩阵里面主要是加法和乘法 : +=or *=and : 比如用
| T*******x 发帖数: 8565 | 3 xor反了。
【在 T*******x 的大作中提到】 : HarvardThief (博后肄业) : 10 24.* 5/19/18, 23:54:33 : 没啥不行的啊,我一个生物苦逼数据处理员都能想出来: : 变量a和b,取值1或0 : AND:a*b : OR: 1-(a-1)*(b-1) : XOR: (a-0.5)*(b-0.5)*2 + 0.5
| m**********r 发帖数: 214 | 4 如果考虑到乘法溢出,乘法不能取代and.
你们可以自己编程试试。
举例:在int32下,INT_MIN(0x80000000)乘上任何非(-1,0,1)值得到的值都为0. | s*****V 发帖数: 21731 | 5 为哈要替换,基本机器运算都是布尔运算,bit MANIPULATION比加法快
【在 T*******x 的大作中提到】 : xor反了。
|
|